php SeleniumClient-By类(方法)实例源码

下面列出了php SeleniumClient-By 类(方法)源码代码实例,从而了解它的用法。

作者:SysBin    项目:joomla-cm   
public function testCreateMenuItem()
 {
     $d = $this->driver;
     $cpPage = $this->doAdminLogin();
     // 		$genericPage = new GenericAdminPage($d, $this);
     $genericPage = $cpPage->clickMenu('Menu Manager');
     $el = $d->waitForElementUntilIsPresent(By::partialLinkText('Main Menu'));
     echo "found Main Menu";
     $el->click();
     $el = $d->waitForElementUntilIsPresent(By::partialLinkText('New'));
     $el->click();
     $el = $d->waitForElementUntilIsPresent(By::xPath("//input[contains(@onclick, 'iframe')]"));
     echo "found select button";
     $el->click();
     $el = $d->waitForElementUntilIsPresent(By::xPath("//div[@id='sbox-content']/iframe"));
     // switch to modal iframe
     $el = $d->switchTo()->getFrameByWebElement($el)->findElement(By::partialLinkText('Single Article'));
     $el->click();
     $el = $d->waitForElementUntilIsPresent(By::xPath("//input[@value='Single Article']"));
     $salt = mt_rand();
     $d->findElement(By::id('jform_title'))->sendKeys('Test Menu Title ' . $salt);
     $el = $d->findElement(By::partialLinkText('Select / Change'))->click();
     $el = $d->waitForElementUntilIsPresent(By::xPath("//div[@id='sbox-content']/iframe"));
     $el = $d->switchTo()->getFrameByWebElement($el)->findElement(By::partialLinkText('Australian Parks'));
     $text = $d->findElement(By::xPath("//body"))->getText();
     $this->assertTrue(strpos($text, '( ! ) Notice:') === false, '**PHP notice found on page.');
     $el->click();
     $el = $d->waitForElementUntilIsNotPresent(By::xPath("//div[@id='sbox-content']/iframe"));
     $d->findElement(By::xPath("//a[contains(@onclick, 'item.save')]"))->click();
     // Clean up
 }

作者:SysBin    项目:joomla-cm   
public function testTinyTyping()
 {
     $d = $this->_driver;
     //get url
     $d->get($this->_testUrl . '/administrator');
     //access text input
     $webElement = $d->findElement(By::id("mod-login-username"));
     $webElement->clear();
     $webElement->sendKeys("admin");
     $webElement = $d->findElement(By::id("mod-login-password"));
     $webElement->clear();
     $webElement->sendKeys("password");
     //access button
     $d->findElement(By::partialLinkText("Log in"))->click();
     $d->waitForElementUntilIsPresent(By::partialLinkText('Add New Article'))->click();
     $salt = mt_rand();
     $d->waitForElementUntilIsPresent(By::id('jform_title'))->sendKeys('Article Title ' . $salt);
     $d->switchTo()->getFrameByName('jform_articletext_ifr');
     $d->findElement(By::id('tinymce'))->sendKeys('This is some article text.');
     $d->switchTo()->getDefaultFrame();
     $d->findElement(By::xPath("//a[contains(@onclick, 'article.save')]"))->click();
     $el = $d->waitForElementUntilIsPresent(By::partialLinkText('Article Title ' . $salt));
     $this->assertInstanceOf('SeleniumClient\\WebElement', $el);
     $el->click();
     $d->waitForElementUntilIsPresent(By::id('jform_title'));
     $select = new SelectElement($d->findElement(By::id("jform_state")));
     $select->selectByValue("2");
     $select = new SelectElement($d->findElement(By::id("jform_featured")));
     $select->selectByValue("1");
     sleep(5);
     // Clean up
 }

作者:ron-inba    项目:PHP-SeleniumClien   
public function testDemo1()
 {
     //get url
     $this->_driver->get($this->_testUrl);
     //access text input
     $webElement = $this->_driver->findElement(By::id("txt1"));
     $webElement->clear();
     $webElement->sendKeys("Text sent 1");
     $this->assertEquals("Text sent 1", $webElement->getAttribute("value"));
     $webElement = $this->_driver->findElement(By::id("txt2"));
     $webElement->clear();
     $webElement->sendKeys("Text sent 2");
     $this->assertEquals("Text sent 2", $webElement->getAttribute("value"));
     //access listbox
     $selectElement = new SelectElement($this->_driver->findElement(By::id("sel1")));
     $selectElement->selectByValue("4");
     $this->assertTrue($selectElement->getElement()->findElement(By::xPath(".//option[@value = 4]"))->isSelected());
     //access checkbox
     $webElement = $this->_driver->findElement(By::cssSelector("html body table tbody tr td fieldset form p input#chk3"));
     $webElement->click();
     $this->assertTrue($webElement->isSelected());
     //access radio
     $webElement = $this->_driver->findElement(By::id("rd3"));
     $webElement->click();
     $this->assertTrue($webElement->isSelected());
     //access button
     $webElement = $this->_driver->findElement(By::id("btnSubmit"));
     $webElement->click();
     //access h2
     $webElement = $this->_driver->findElement(By::cssSelector("html body h2#h2FormReceptor"));
     $this->assertEquals("Form receptor", $webElement->getText());
     sleep(20);
 }

作者:shoffmann5    项目:install-from-web-serve   
/**
  * Login to back end and navigate to menu Language Manager.
  *
  * @since   3.0
  */
 public function setUp()
 {
     parent::setUp();
     $cpPage = $this->doAdminLogin();
     $this->tagManagerPage = $cpPage->clickMenu('Language Manager', 'LanguageManagerPage');
     $this->driver->findElement(By::xPath("//ul/li/a[@href='index.php?option=com_languages&view=languages']"))->click();
 }

作者:sural9    项目:joomla-cm   
/**
  * Function to enter Username Password
  * 
  * @param string   $username	Username of the user
  * @param string   $password	Password of the user    
  * @return  void
  *
  */
 public function SiteLoginUser($username, $password)
 {
     $d = $this->driver;
     $d->findElement(By::xPath("//input[@id='username']"))->sendKeys($username);
     $d->findElement(By::xPath("//input[@id='password']"))->sendKeys($password);
     $d->findElement(By::xPath("//button[contains(text(), 'Log in')]"))->click();
 }

作者:SysBin    项目:joomla-cm   
/**
  * @test
  */
 public function createMenuItem()
 {
     $cpPage = $this->doAdminLogin();
     $page = $cpPage->clickMenu('Main Menu');
     $page->clickButton('New');
     $el = $d->waitForElementUntilIsPresent(By::partialLinkText('New'));
     $el->click();
     $el = $d->waitForElementUntilIsPresent(By::xPath("//input[contains(@onclick, 'iframe')]"));
     echo "found select button";
     $el->click();
     $el = $d->waitForElementUntilIsPresent(By::xPath("//div[@id='sbox-content']/iframe"));
     // switch to modal iframe
     $el = $d->switchTo()->getFrameByWebElement($el)->findElement(By::partialLinkText('Single Article'));
     $el->click();
     $el = $d->waitForElementUntilIsPresent(By::xPath("//input[@value='Single Article']"));
     $salt = mt_rand();
     $d->findElement(By::id('jform_title'))->sendKeys('Test Menu Title ' . $salt);
     $el = $d->findElement(By::partialLinkText('Select / Change'))->click();
     $el = $d->waitForElementUntilIsPresent(By::xPath("//div[@id='sbox-content']/iframe"));
     $el = $d->switchTo()->getFrameByWebElement($el)->findElement(By::partialLinkText('Australian Parks'));
     $el->click();
     $el = $d->waitForElementUntilIsNotPresent(By::xPath("//div[@id='sbox-content']/iframe"));
     $d->findElement(By::xPath("//a[contains(@onclick, 'item.save')]"))->click();
     // Clean up
 }

作者:ron-inba    项目:PHP-SeleniumClien   
public function testUntilShouldWaitShouldThrowException()
 {
     $this->setExpectedException('SeleniumClient\\WebDriverWaitTimeoutException');
     $this->_driver->findElement(By::id("btnAppendDiv"))->click();
     $wait = new WebDriverWait(3);
     $label = $wait->until($this->_driver, "findElement", array(By::id("dDiv1-0"), true));
 }

作者:ron-inba    项目:PHP-SeleniumClien   
public function testDemo2()
 {
     //click button/get alert text
     $this->_driver->get($this->_testUrl);
     $this->_driver->findElement(By::id("btnAlert"))->click();
     $this->assertEquals("Here is the alert", $this->_driver->getAlertText());
     $this->_driver->acceptAlert();
     //get main window handle
     $mainWindowHandle = $this->_driver->getCurrentWindowHandle();
     //open popup window / handle its elements
     $this->_driver->findElement(By::id("btnPopUp1"))->click();
     $this->_driver->switchTo()->getWindow("popup1");
     $webElement = $this->_driver->waitForElementUntilIsPresent(By::id("txt1"));
     $webElement->sendKeys("test window");
     $this->assertEquals("test window", $webElement->getAttribute("value"));
     $this->_driver->closeCurrentWindow();
     $this->_driver->switchTo()->getWindow($mainWindowHandle);
     //get iframe / handle its elements
     $this->_driver->getFrame("iframe1");
     $webElement = $this->_driver->waitForElementUntilIsPresent(By::id("txt1"));
     $webElement->sendKeys("test iframe");
     $this->assertEquals("test iframe", $webElement->getAttribute("value"));
     $this->_driver->switchTo()->getWindow($mainWindowHandle);
     //wait for element to be present
     $this->_driver->findElement(By::id("btnAppendDiv"))->click();
     $wait = new WebDriverWait(8);
     $label = $wait->until($this->_driver, "findElement", array(By::id("dDiv1-0"), true));
     $this->assertEquals("Some content", $label->getText());
     sleep(5);
 }

作者:rasiodesig    项目:joomla-cm   
public function deleteLevel($name)
 {
     $this->searchFor($name);
     $this->driver->findElement(By::name("checkall-toggle"))->click();
     $this->clickButton('toolbar-delete');
     $this->driver->waitForElementUntilIsPresent(By::xPath($this->waitForXpath));
     $this->searchFor();
 }

作者:ron-inba    项目:PHP-SeleniumClien   
public function testGetAlertShouldSendKeysToAlert()
 {
     $this->_driver->get($this->_url);
     $this->_driver->findElement(By::id("btnPrompt"))->click();
     $this->_alert->sendKeys("alert text");
     $this->_alert->accept();
     $alertText = $this->_alert->getText();
     $this->assertEquals("alert text", $alertText);
 }

作者:SysBin    项目:joomla-cm   
/**
  * Function which checks of edit icon is ppresent on the page or not
  *
  * @return True or Flase
  */
 public function isEditPresent()
 {
     $arrayElement = $this->driver->findElements(By::xPath("//a[contains(text(), 'Edit')]"));
     if (count($arrayElement > 0)) {
         return true;
     } else {
         return false;
     }
 }

作者:sural9    项目:joomla-cm   
public function getTabIds()
 {
     $tabs = $this->driver->findElements(By::xPath("//div[@class='tab-content'][@id='myTabContent']/div"));
     $return = array();
     foreach ($tabs as $tab) {
         $return[] = $tab->getAttribute('id');
     }
     return $return;
 }

作者:karimz    项目:jooml   
protected function getModuleType()
 {
     $elements = $this->driver->findElements(By::xPath("//span[@class = 'label']"));
     if (count($elements >= 2)) {
         return $elements[1]->getText();
     } else {
         return false;
     }
 }

作者:sural9    项目:joomla-cm   
/**
  * Function which returns Title array of Articles on the Home page of Front End
  *
  *
  * @return  Array of Article Titles Visible
  */
 public function getArticleTitles()
 {
     $arrayElement = $this->driver->findElements(By::xPath("//h2//a[contains(text(), '')]"));
     $arrayTitles = array();
     for ($i = 0; $i < count($arrayElement); $i++) {
         $arrayTitles[$i] = $arrayElement[$i]->getText();
     }
     return $arrayTitles;
 }

作者:shoffmann5    项目:install-from-web-serve   
/**
  * Clears post-installation messages by navigating to that screen and back
  *
  * @return  null
  */
 public function clearInstallMessages()
 {
     $clearButtons = $this->driver->findElements(By::xPath("//a[contains(text(), 'Hide this message')]"));
     while (count($clearButtons) > 0) {
         $clearButtons[0]->click();
         $page = $this->test->getPageObject('PostinstallPage');
         $clearButtons = $this->driver->findElements(By::xPath("//a[contains(text(), 'Hide this message')]"));
     }
 }

作者:sural9    项目:joomla-cm   
public function deleteStyle($name)
 {
     $this->searchFor($name);
     $row_number = $this->getRowNumber($name) - 1;
     $el = $this->driver->findElement(By::xPath(".//input[@id='cb" . $row_number . "']"));
     $el->click();
     $this->clickButton('toolbar-delete');
     $this->driver->waitForElementUntilIsPresent(By::xPath($this->waitForXpath));
 }

作者:shoffmann5    项目:install-from-web-serve   
/**
  * Function which changes the articles texts and returns back to the siteContentFeaturedPage after saving the changes
  *
  * @var string articleText
  *
  * @return  null
  */
 public function editArticle($articleText)
 {
     $d = $this->driver;
     $guiEditor = $this->driver->findElement(By::xPath("//a[contains(@onclick, 'mceToggleEditor')]"));
     $guiEditor->click();
     $d->findElement(By::xPath("//textarea[@id='jform_articletext']"))->clear();
     $d->findElement(By::xPath("//textarea[@id='jform_articletext']"))->sendKeys($articleText);
     $d->findElement(By::xPath("//button[@type='button'][@class='btn btn-primary']"))->click();
 }

作者:shoffmann5    项目:install-from-web-serve   
public function getFieldValue($label)
 {
     $result = false;
     if ($label == 'ID') {
         $result = $this->driver->findElement(By::id('jform_user_id'))->getAttribute('value');
     } else {
         $result = parent::getFieldValue($label);
     }
     return $result;
 }

作者:ron-inba    项目:PHP-SeleniumClien   
public function testSelectByPartialTextShouldSelect()
 {
     $this->_driver->get($this->_url);
     $select = new SelectElement($this->_driver->findElement(By::id("sel1")));
     $select->selectByPartialText("Red");
     $this->assertTrue($select->getElement()->findElement(By::xPath("option[@value = 2]"))->isSelected());
     $select = new SelectElement($this->_driver->findElement(By::id("sel2")));
     $select->selectByPartialText("peppers");
     $this->assertTrue($select->getElement()->findElement(By::xPath("option[@value = 'greenpeppers']"))->isSelected());
 }

作者:rasiodesig    项目:joomla-cm   
/**
  * Gets the titles of modules in sliders
  *
  * @return  array of stdClass objects
  */
 public function getModuleTitles()
 {
     $container = $this->driver->findElement(By::Id('panel-sliders'));
     $elements = $container->findElements(By::tagName('h3'));
     $return = array();
     foreach ($elements as $element) {
         $object = new stdClass();
         $object->text = $element->getText();
     }
 }


问题


面经


文章

微信
公众号

扫码关注公众号