当前位置: 首页>>代码示例>>PHP>>正文


PHP Util\Locator类代码示例

本文整理汇总了PHP中Codeception\Util\Locator的典型用法代码示例。如果您正苦于以下问题:PHP Locator类的具体用法?PHP Locator怎么用?PHP Locator使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Locator类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: testLocatingElementPosition

 public function testLocatingElementPosition()
 {
     $this->assertEquals('(descendant-or-self::p)[position()=1]', Locator::firstElement('p'));
     $this->assertEquals('(descendant-or-self::p)[position()=last()]', Locator::lastElement('p'));
     $this->assertEquals('(descendant-or-self::p)[position()=1]', Locator::elementAt('p', 1));
     $this->assertEquals('(descendant-or-self::p)[position()=last()-0]', Locator::elementAt('p', -1));
     $this->assertEquals('(descendant-or-self::p)[position()=last()-1]', Locator::elementAt('p', -2));
 }
开发者ID:janhenkgerritsen,项目名称:Codeception,代码行数:8,代码来源:LocatorTest.php

示例2: testIsId

 public function testIsId()
 {
     $this->assertTrue(Locator::isID('#username'));
     $this->assertTrue(Locator::isID('#user.name'));
     $this->assertTrue(Locator::isID('#user-name'));
     $this->assertFalse(Locator::isID('#user-name .field'));
     $this->assertFalse(Locator::isID('.field'));
     $this->assertFalse(Locator::isID('hello'));
 }
开发者ID:corcre,项目名称:elabftw,代码行数:9,代码来源:LocatorTest.php

示例3: loginAdminUserTest

 /**
  * Login the admin user using his email
  *
  * @param \AcceptanceTester $I
  */
 public function loginAdminUserTest(\AcceptanceTester $I)
 {
     $I->wantTo('log into the backend as Admin with email');
     $I->loginWithEmailAs($this->user['admin']);
     $this->saveLogin($I);
     $I->see('Dashboard');
     $I->see('Configuration', Locator::href('/bolt/users'));
     $I->see("You've been logged on successfully.");
 }
开发者ID:robbert-vdh,项目名称:bolt,代码行数:14,代码来源:BackendAdminLoginWithEmailCest.php

示例4: loginAdminUserTest

 /**
  * Login the admin user using his email
  *
  * @param \AcceptanceTester $I
  */
 public function loginAdminUserTest(\AcceptanceTester $I)
 {
     $I->wantTo('log into the backend as Admin with email');
     $I->loginWithEmailAs($this->user['admin']);
     $this->cookies[$this->tokenNames['authtoken']] = $I->grabCookie($this->tokenNames['authtoken']);
     $this->cookies[$this->tokenNames['session']] = $I->grabCookie($this->tokenNames['session']);
     $I->see('Dashboard');
     $I->see('Configuration', Locator::href('/bolt/users'));
     $I->see("You've been logged on successfully.");
 }
开发者ID:atiarda,项目名称:bolt,代码行数:15,代码来源:BackendAdminLoginWithEmailCest.php

示例5: testHumanReadableString

 public function testHumanReadableString()
 {
     $this->assertEquals("'string selector'", Locator::humanReadableString("string selector"));
     $this->assertEquals("css '.something'", Locator::humanReadableString(['css' => '.something']));
     $this->assertEquals("css selector '.something'", Locator::humanReadableString(WebDriverBy::cssSelector('.something')));
     try {
         Locator::humanReadableString(null);
         $this->fail("Expected exception when calling humanReadableString() with invalid selector");
     } catch (\InvalidArgumentException $e) {
     }
 }
开发者ID:hitechdk,项目名称:Codeception,代码行数:11,代码来源:LocatorTest.php

示例6: fail

 protected function fail($nodes, $selector, ComparisonFailure $comparisonFailure = null)
 {
     $selectorString = Locator::humanReadableString($selector);
     if (!$this->string) {
         throw new \PHPUnit_Framework_ExpectationFailedException("Element {$selectorString} was found", $comparisonFailure);
     }
     $output = "There was {$selectorString} element";
     $output .= $this->uriMessage("on page");
     $output .= str_replace($this->string, "<bold>{$this->string}</bold>", $this->nodesList($nodes, $this->string));
     $output .= "\ncontaining '{$this->string}'";
     throw new \PHPUnit_Framework_ExpectationFailedException($output, $comparisonFailure);
 }
开发者ID:solutionDrive,项目名称:Codeception,代码行数:12,代码来源:WebDriverNot.php

示例7: testGetArguments

 public function testGetArguments()
 {
     $by = WebDriverBy::cssSelector('.something');
     $step = $this->getStep([null, [$by]]);
     $this->assertEquals('"' . Locator::humanReadableString($by) . '"', $step->getArguments(true));
     $step = $this->getStep([null, [['just', 'array']]]);
     $this->assertEquals('"just","array"', $step->getArguments(true));
     $step = $this->getStep([null, [function () {
     }]]);
     $this->assertEquals('"lambda function"', $step->getArguments(true));
     $step = $this->getStep([null, [[$this, 'testGetArguments']]]);
     $this->assertEquals('"callable function"', $step->getArguments(true));
 }
开发者ID:Marfuz,项目名称:c4t_test,代码行数:13,代码来源:StepTest.php

示例8: testGetArguments

 public function testGetArguments()
 {
     $by = WebDriverBy::cssSelector('.something');
     $step = $this->getStep([null, [$by]]);
     $this->assertEquals('"' . Locator::humanReadableString($by) . '"', $step->getArgumentsAsString());
     $step = $this->getStep([null, [['just', 'array']]]);
     $this->assertEquals('["just","array"]', $step->getArgumentsAsString());
     $step = $this->getStep([null, [function () {
     }]]);
     $this->assertEquals('"Closure"', $step->getArgumentsAsString());
     $step = $this->getStep([null, [[$this, 'testGetArguments']]]);
     $this->assertEquals('["StepTest","testGetArguments"]', $step->getArgumentsAsString());
     $step = $this->getStep([null, [['PDO', 'getAvailableDrivers']]]);
     $this->assertEquals('["PDO","getAvailableDrivers"]', $step->getArgumentsAsString());
 }
开发者ID:solutionDrive,项目名称:Codeception,代码行数:15,代码来源:StepTest.php

示例9: fail

 protected function fail($nodes, $selector, ComparisonFailure $comparisonFailure = null)
 {
     if (!count($nodes)) {
         throw new ElementNotFound($selector, 'Element located either by name, CSS or XPath');
     }
     $output = "Failed asserting that any element by " . Locator::humanReadableString($selector);
     $output .= $this->uriMessage('on page');
     if (count($nodes) < 5) {
         $output .= "\nElements: ";
         $output .= $this->nodesList($nodes);
     } else {
         $message = new Message("[total %s elements]");
         $output .= $message->with(count($nodes))->style('debug');
     }
     $output .= "\ncontains text '" . $this->string . "'";
     throw new \PHPUnit_Framework_ExpectationFailedException($output, $comparisonFailure);
 }
开发者ID:hitechdk,项目名称:Codeception,代码行数:17,代码来源:WebDriver.php

示例10: createRecordsTest

 /**
  * Create a page record.
  *
  * @param \AcceptanceTester $I
  */
 public function createRecordsTest(\AcceptanceTester $I)
 {
     $I->wantTo("Create and edit Pages as the 'editor' user");
     // Set up the browser
     $I->setCookie('bolt_authtoken', $this->cookies['bolt_authtoken']);
     $I->setCookie('bolt_session', $this->cookies['bolt_session']);
     $I->amOnPage('/bolt');
     $I->see('New Page');
     $I->click('New Page');
     $I->see('Pages', Locator::href('/bolt/overview/pages'));
     $I->see('View Pages', Locator::href('/bolt/overview/pages'));
     $I->see('New Page', Locator::href('/bolt/editcontent/pages'));
     $I->fillField('#title', 'A page I made');
     $I->fillField('#teaser', 'Woop woop woop! Crazy nice stuff inside!');
     $I->fillField('#body', 'Take it, take it! I have three more of these!');
     $I->click('Save Page');
     $I->see('The new Page has been saved.');
     $I->see('A page I made');
     $I->see('Woop woop woop');
 }
开发者ID:aaleksu,项目名称:bolt_cm,代码行数:25,代码来源:BackendEditorCest.php

示例11: test_default_non_editable_department_named_company

 public function test_default_non_editable_department_named_company(SuperUser $i)
 {
     $i->wantTo('Test if default "Company" named department is there and it is non editable');
     $i->login('management@xavoc.com');
     $i->clickMenu('HR->Department');
     $i->see('Company', Locator::elementAt('//table/tbody/tr/td', 1));
     $i->dontSeeElementInDOM('table tbody tr:first-child  td:last-child a');
     $i->wantTo('Test Quick Search');
     $i->searchFor('comp');
     $i->see('Company', Locator::elementAt('//table/tbody/tr/td', 1));
     $i->searchFor('xxxxssssss');
     $i->see('No matching records found');
     $i->searchFor('');
     $i->dontSee('No matching records found');
     $i->see('Company', Locator::elementAt('//table/tbody/tr/td', 1));
     $i->click('Active');
     $i->waitPageLoad();
     $i->click('InActive');
     $i->waitPageLoad();
 }
开发者ID:xavoctechnocratspvtltd,项目名称:xepan2,代码行数:20,代码来源:hrCest.php

示例12: match

 /**
  * @param $page
  * @param $selector
  * @param bool $throwMalformed
  * @return array
  */
 protected function match($page, $selector, $throwMalformed = true)
 {
     if (is_array($selector)) {
         try {
             return $page->findElements($this->getStrictLocator($selector));
         } catch (InvalidSelectorException $e) {
             throw new MalformedLocatorException(key($selector) . ' => ' . reset($selector), "Strict locator");
         }
     }
     if ($selector instanceof WebDriverBy) {
         try {
             return $page->findElements($selector);
         } catch (InvalidSelectorException $e) {
             throw new MalformedLocatorException(sprintf("WebDriverBy::%s('%s')", $selector->getMechanism(), $selector->getValue()), 'WebDriver');
         }
     }
     $isValidLocator = false;
     $nodes = [];
     try {
         if (Locator::isID($selector)) {
             $isValidLocator = true;
             $nodes = $page->findElements(WebDriverBy::id(substr($selector, 1)));
         }
         if (empty($nodes) and Locator::isCSS($selector)) {
             $isValidLocator = true;
             $nodes = $page->findElements(WebDriverBy::cssSelector($selector));
         }
         if (empty($nodes) and Locator::isXPath($selector)) {
             $isValidLocator = true;
             $nodes = $page->findElements(WebDriverBy::xpath($selector));
         }
     } catch (InvalidSelectorException $e) {
         throw new MalformedLocatorException($selector);
     }
     if (!$isValidLocator and $throwMalformed) {
         throw new MalformedLocatorException($selector);
     }
     return $nodes;
 }
开发者ID:racinmat,项目名称:SPETestParser,代码行数:45,代码来源:Acceptance.php

示例13: fileManagementViewEditTemplatesTest

 /**
  * Test the 'File management -> View / edit templates' interface
  *
  * @param \AcceptanceTester $I
  */
 public function fileManagementViewEditTemplatesTest(\AcceptanceTester $I)
 {
     $I->wantTo("Use the 'File management -> View / edit templates' interface as the 'developer' user");
     // Set up the browser
     $this->setLoginCookies($I);
     $I->amOnPage('/bolt/files/themes');
     // Inspect the landing page
     $dir = 'base-2016';
     $I->see('Create folder', Locator::find('a', ['href' => '#']));
     $I->see($dir, Locator::href("/bolt/files/themes/{$dir}"));
     $I->see("Rename {$dir}", Locator::find('a', ['href' => '#']));
     $I->see("Delete {$dir}", Locator::find('a', ['href' => '#']));
     // Navigate into the theme and check the results
     $I->click("{$dir}", Locator::href("/bolt/files/themes/{$dir}"));
     $I->see('css', Locator::href("/bolt/files/themes/{$dir}/css"));
     $I->see('images', Locator::href("/bolt/files/themes/{$dir}/images"));
     $I->see('js', Locator::href("/bolt/files/themes/{$dir}/js"));
     $I->see('theme.yml', Locator::href("/bolt/file/edit/themes/{$dir}/theme.yml"));
     $I->see('record.twig', Locator::href("/bolt/file/edit/themes/{$dir}/record.twig"));
     $I->see('index.twig', Locator::href("/bolt/file/edit/themes/{$dir}/index.twig"));
     // Navigate into a subdirectory
     $I->click('css', Locator::href("/bolt/files/themes/{$dir}/css"));
     $I->see('theme.css', Locator::href("/bolt/file/edit/themes/{$dir}/css/theme.css"));
 }
开发者ID:bolt,项目名称:bolt,代码行数:29,代码来源:BackendDeveloperCest.php

示例14: filterByXPath

 /**
  * @param $locator
  * @return Crawler
  */
 protected function filterByXPath($locator)
 {
     if (!Locator::isXPath($locator)) {
         throw new MalformedLocatorException($locator, 'xpath');
     }
     return $this->getCrawler()->filterXPath($locator);
 }
开发者ID:vladislavl-hyuna,项目名称:crmapp,代码行数:11,代码来源:InnerBrowser.php

示例15: grabTextFrom

 public function grabTextFrom($cssOrXPathOrRegex)
 {
     $el = null;
     if (Locator::isCSS($cssOrXPathOrRegex)) {
         $el = $this->session->getPage()->find('css', $cssOrXPathOrRegex);
         if ($el) {
             return $el->getText();
         }
     }
     if (!$el and Locator::isXPath($cssOrXPathOrRegex)) {
         $el = @$this->session->getPage()->find('xpath', $cssOrXPathOrRegex);
         if ($el) {
             return $el->getText();
         }
     }
     if (@preg_match($cssOrXPathOrRegex, $this->session->getPage()->getContent(), $matches)) {
         return $matches[1];
     }
     throw new ElementNotFound($cssOrXPathOrRegex, 'CSS or XPath or Regex');
 }
开发者ID:lenninsanchez,项目名称:donadores,代码行数:20,代码来源:Mink.php


注:本文中的Codeception\Util\Locator类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。