/**
  * @test
  */
 public function 質問ページから質問投稿する()
 {
     //        $basic_user = '******';
     //        $basic_pass = '******';
     //        $gooid_user = '******';
     //        $gooid_pass = '******';
     //        $domain = '*****.goo.ne.jp';
     require __DIR__ . '/../config.php';
     $basic_user = urlencode($basic_user);
     $basic_pass = urlencode($basic_pass);
     $title = 'タイトル' . time();
     $description = '本文' . time();
     $driver = Util::createDriver();
     Util::loginToGoo($driver, $gooid_user, $gooid_pass);
     $driver->get("http://{$basic_user}:{$basic_pass}@{$domain}/question");
     $driver->findElement(\WebDriverBy::id('title_area'))->sendKeys($title);
     $driver->findElement(\WebDriverBy::id('text_area'))->sendKeys($description);
     $driver->findElement(\WebDriverBy::cssSelector('#question_confirm_btn > a > span.q-text'))->click();
     Util::skipPageLenvingAlert($driver);
     $driver->wait(5)->until(\WebDriverExpectedCondition::visibilityOfElementLocated(\WebDriverBy::cssSelector('#match_categories > input')));
     $driver->findElement(\WebDriverBy::cssSelector('#question_complete_button > a'))->click();
     $driver->findElement(\WebDriverBy::cssSelector('li.tooSeeBtn > a'))->click();
     $actual_title = $driver->getTitle();
     $url = $driver->getCurrentUrl();
     preg_match('/\\/qa\\/(\\d+)\\.html/', $url, $matches);
     $qid = $matches[1];
     $trimed_title = preg_replace('/ - .+/', '', $actual_title);
     echo $actual_title . "\n";
     echo $url . "\n";
     echo $qid . "\n";
     $driver->quit();
     $this->assertEquals($title, $trimed_title);
 }
Beispiel #2
0
 public function testProcessOrder()
 {
     $this->driver->get($this->getTestPath('/admin'));
     $this->driver->findElement(WebDriverBy::id('username'))->sendKeys('admin');
     $this->driver->findElement(WebDriverBy::id('login'))->sendKeys('P@ssw0rd');
     $this->driver->findElement(WebDriverBy::className('form-button'))->click();
     $this->driver->findElement(WebDriverBy::xpath("//span[text()='Sales']"))->click();
     $this->driver->findElement(WebDriverBy::xpath("//span[text()='Orders']"))->click();
     $this->driver->wait()->until(WebDriverExpectedCondition::presenceOfElementLocated(WebDriverBy::id('sales_order_grid_filter_real_order_id')));
     $this->driver->findElement(WebDriverBy::id('sales_order_grid_filter_real_order_id'))->sendKeys('ICANN-D10000014');
     $this->driver->findElement(WebDriverBy::id('sales_order_grid_filter_real_order_id'))->sendKeys(WebDriverKeys::ENTER);
     sleep(3);
     $this->driver->findElement(WebDriverBy::xpath("//html/body/div[1]/div[2]/div/div[3]/div/div[2]/div/table/tbody/tr[1]/td[2]"))->click();
     $this->driver->findElement(WebDriverBy::xpath("//span[text()='Invoice']"))->click();
     $this->driver->findElement(WebDriverBy::xpath("//span[text()='Submit Invoice']"))->click();
     $this->driver->findElement(WebDriverBy::xpath("//span[text()='Ship']"))->click();
     $this->driver->findElement(WebDriverBy::xpath("//span[text()='Add Tracking Number']"))->click();
     $this->driver->findElement(WebDriverBy::id("trackingC1"))->click();
     $this->driver->findElement(WebDriverBy::xpath("//select[@id='trackingC1']/option[@value='fedex']"))->click();
     $this->driver->findElement(WebDriverBy::id("trackingT1"))->sendKeys('FEDEX');
     $this->driver->findElement(WebDriverBy::id("trackingN1"))->sendKeys('Tracking0001');
     $this->driver->findElement(WebDriverBy::id("send_email"))->click();
     $this->driver->findElement(WebDriverBy::xpath("//span[text()='Submit Shipment']"))->click();
     sleep(5);
 }
 public function testGoogle()
 {
     $this->driver->get(Util::buildUrl('/'));
     echo $this->driver->getTitle();
     echo $this->driver->findElement(WebDriverBy::id('id1'))->getText();
     $this->driver->takeScreenshot(ROOT . '/tests/tmp/sc.png');
 }
 public function testTestPageWelcome() {
   $this->driver->get($this->getTestPath('index.html'));
   self::assertEquals(
     'Welcome to the facebook/php-webdriver testing page.',
     $this->driver->findElement(WebDriverBy::id('welcome'))->getText()
   );
 }
 /**
  * @dataProvider userLocations
  */
 public function testUserLocation($proxy, $expected)
 {
     $this->driver = $this->proxied($proxy);
     $this->driver->get($this->url);
     $search = $this->driver->findElement(WebDriverBy::id('user-city'));
     $this->assertContains($expected, $search->getText());
 }
 public function testUselessFileDetectorSendKeys()
 {
     $this->driver->get($this->getTestPath('upload.html'));
     $file_input = $this->driver->findElement(WebDriverBy::id('upload'));
     $file_input->sendKeys($this->getFilePath());
     self::assertEquals($this->getFilePath(), $file_input->getAttribute('value'));
 }
 public function testGoogle2()
 {
     static::$driver->get(Util::buildUrl('/'));
     echo static::$driver->getTitle();
     echo static::$driver->findElement(WebDriverBy::id('id1'))->getText();
     static::$driver->takeScreenshot(ROOT . '/tests/tmp/sc1.png');
 }
 /**
  * @test
  */
 public function validaTempoDeMensagemVoceEPassienteEm7Segundos()
 {
     $this->driver->manage()->timeouts()->implicitlyWait(2);
     $this->driver->get($this->url);
     $mensagem = $this->driver->findElement(WebDriverBy::id("mensagem-magica"))->getText();
     $this->assertEquals("Voce e paciente!", $mensagem);
 }
Beispiel #9
0
 /**
  * Tests that the page does not load if the user does not have correct
  * permissions
  *
  * @return void
  */
 function testLoadsWithPermission()
 {
     $this->setupPermissions(array("training"));
     $this->safeGet($this->url . "/training/");
     $bodyText = $this->webDriver->findElement(WebDriverBy::id("training-options"))->getText();
     $this->assertContains("training", $bodyText);
     $this->resetPermissions();
 }
 /**
  * @param  RemoteWebDriver $web_driver
  */
 function __construct(RemoteWebDriver $web_driver)
 {
     $this->web_driver = $web_driver;
     // Дожидаемся загрузки первого елемента(в данном случае картинка)
     $wait = new WebDriverWait($this->web_driver, 30);
     $wait->until(WebDriverExpectedCondition::visibilityOfElementLocated(WebDriverBy::id('MainContent_img_lg')));
     $this->products = $this->web_driver->findElements(WebDriverBy::cssSelector("a.pname_list"));
 }
 public function login($user, $pass)
 {
     $this->driver->get($this->url);
     $this->driver->findElement(WebDriverBy::id("usuariologin"))->sendKeys("teste");
     $this->driver->findElement(WebDriverBy::id("usuariosenha"))->sendKeys("123");
     $this->driver->findElement(WebDriverBy::tagName("button"))->click();
     $this->assertEquals("Administração QuickLoja", $this->driver->getTitle());
     return $this->driver;
 }
Beispiel #12
0
 public static function loginToGoo($driver, $goo_id, $password)
 {
     require ROOT . '/tests/config.php';
     $driver->get('https://login.mail.goo.ne.jp/id/authn/LoginStart');
     $driver->findElement(\WebDriverBy::id('uname'))->sendKeys($goo_id);
     $element = $driver->findElement(\WebDriverBy::id('pass'));
     $element = $element->sendKeys($password);
     $element->submit();
 }
 /**
  * @test
  */
 public function gooIDログインする()
 {
     require ROOT . '/tests/config.php';
     $driver = Util::createSmartPhoneUaDriver();
     $driver->get('https://login.mail.goo.ne.jp/id/authn/LoginStart');
     $driver->findElement(\WebDriverBy::id('uname'))->sendKeys($gooid_user);
     $element = $driver->findElement(\WebDriverBy::id('pass'));
     $element = $element->sendKeys($gooid_pass);
     $element->submit();
 }
 /**
  * @param  RemoteWebDriver $web_driver
  */
 function __construct(RemoteWebDriver $web_driver)
 {
     $this->web_driver = $web_driver;
     // Дожидаемся загрузки первого елемента
     $wait = new WebDriverWait($this->web_driver, 30);
     $wait->until(WebDriverExpectedCondition::visibilityOfElementLocated(WebDriverBy::id('MainContent_Email')));
     $this->email = $this->web_driver->findElement(WebDriverBy::id('MainContent_Email'));
     $this->password = $this->web_driver->findElement(WebDriverBy::id('MainContent_Password'));
     $this->remember = $this->web_driver->findElement(WebDriverBy::id('MainContent_RememberMe'));
     $this->submit = $this->web_driver->findElement(WebDriverBy::name('ctl00$MainContent$ctl05'));
 }
 public function testShouldPersistSizes()
 {
     $element = self::$driver->findElement(WebDriverBy::id('tinypng_sizes_medium'));
     $element->click();
     self::$driver->findElement(WebDriverBy::tagName('form'))->submit();
     $elements = self::$driver->findElements(WebDriverBy::xpath('//input[@type="checkbox" and starts-with(@name, "tinypng_sizes") and @checked="checked"]'));
     $size_ids = array_map('elementName', $elements);
     $this->assertContains('tinypng_sizes[thumbnail]', $size_ids);
     $this->assertNotContains('tinypng_sizes[medium]', $size_ids);
     $this->assertContains('tinypng_sizes[large]', $size_ids);
 }
 protected function disable_resize()
 {
     $url = wordpress('/wp-admin/options-media.php');
     if (self::$driver->getCurrentUrl() != $url) {
         self::$driver->get($url);
     }
     $element = self::$driver->findElement(WebDriverBy::id('tinypng_resize_original_enabled'));
     if ($element->getAttribute('checked')) {
         $element->click();
     }
     self::$driver->findElement(WebDriverBy::tagName('form'))->submit();
 }
 public static function registerNewUser($webDriver)
 {
     $now = time();
     self::clickRegisterLink($webDriver);
     $elements_values = array('edit-name' => $now, 'edit-mail' => "{$now}@example.com", 'edit-pass-pass1' => 'password', 'edit-pass-pass2' => 'password');
     foreach ($elements_values as $key => $value) {
         $element = $webDriver->findElement(WebDriverBy::id($key));
         $element->clear()->sendKeys($value);
     }
     $submit = $webDriver->findElement(WebDriverBy::id('edit-submit'));
     $submit->click();
     return $now;
 }
 public function setUp()
 {
     $capabilities = array(\WebDriverCapabilityType::BROWSER_NAME => 'firefox');
     $this->webDriver = RemoteWebDriver::create('http://localhost:4444/wd/hub', $capabilities);
     $this->app = self::createApplication();
     //log user in
     $this->webDriver->get($this->baseUrl);
     $usernameField = $this->webDriver->findElement(WebDriverBy::name("username"));
     $usernameField->sendKeys("superuser");
     $passwordField = $this->webDriver->findElement(WebDriverBy::name("password"));
     $passwordField->sendKeys("mala");
     $loginBtn = $this->webDriver->findElement(WebDriverBy::id("login-btn"));
     $loginBtn->click();
     $this->webDriver->manage()->timeouts()->implicitlyWait(1000);
 }
 public function testSearch()
 {
     $this->webDriver->get($this->url);
     // find search field by its id
     $search = $this->webDriver->findElement(WebDriverBy::id('js-command-bar-field'));
     $search->click();
     // typing into field
     $this->webDriver->getKeyboard()->sendKeys('php-webdriver');
     // pressing "Enter"
     $this->webDriver->getKeyboard()->pressKey(WebDriverKeys::ENTER);
     $firstResult = $this->webDriver->findElement(WebDriverBy::cssSelector('li.public:nth-child(1) > h3:nth-child(3) > a:nth-child(1) > em:nth-child(2)'));
     $firstResult->click();
     // we expect that facebook/php-webdriver was the first result
     $this->assertContains("php-webdriver", $this->webDriver->getTitle());
     $this->assertEquals('https://github.com/facebook/php-webdriver', $this->webDriver->getCurrentURL());
     $this->assertElementNotFound(WebDriverBy::className('avatar'));
     // $this->waitForUserInput();
 }
 /**
  * Tests the filter panel itself in room filter
  * @test
  */
 public function testFilterPanel()
 {
     self::$webDriver->findElement(WebDriverBy::linkText('Räume'))->click();
     #1: Hide Room Filter
     self::$webDriver->findElement(WebDriverBy::linkText('Filter ausblenden'))->click();
     $this->assertEquals(false, self::$webDriver->findElement(WebDriverBy::name('cmd[applyRoomFilter]'))->isDisplayed(), '#1 Hiding the RoomFilter does not hide it');
     #2: Show Room Filtere
     self::$webDriver->findElement(WebDriverBy::linkText('Filter anzeigen'))->click();
     $this->assertEquals(true, self::$webDriver->findElement(WebDriverBy::name('cmd[applyRoomFilter]'))->isDisplayed(), '#2 Showing the RoomFilter does not show it');
     #3 Apply and hide filter
     self::$webDriver->findElement(WebDriverBy::id('room_name'))->sendKeys('123');
     self::$webDriver->findElement(WebDriverBy::name('cmd[applyRoomFilter]'))->click();
     self::$webDriver->findElement(WebDriverBy::linkText('Filter ausblenden'))->click();
     self::$webDriver->findElement(WebDriverBy::linkText('Filter anzeigen'))->click();
     $this->assertEquals('123', self::$webDriver->findElement(WebDriverBy::name('room_name'))->getAttribute('value'), '#3 Hiding and showing the RoomFilter resets it');
     #4 Reset filter
     self::$webDriver->findElement(WebDriverBy::name('cmd[resetRoomFilter]'))->click();
     $this->assertEquals(true, empty(self::$webDriver->findElement(WebDriverBy::name('room_name'))->getAttribute('value')), '#4 Filter reseting does not work');
 }
 public function testCalendarEntryEditTest()
 {
     //edit date
     $row = self::$webDriver->findElement(WebDriverBy::xpath("//tr[contains(text(), " . "CalendarTestBooking" . ")]/td[8]"));
     $row->findElement(WebDriverBy::linkText('Bearbeiten'))->click();
     self::$webDriver->findElement(WebDriverBy::id('from[date]_d'))->sendKeys(date('d') + 1);
     self::$webDriver->findElement(WebDriverBy::id('from[date]_m'))->sendKeys(date('m'));
     self::$webDriver->findElement(WebDriverBy::id('from[date]_y'))->sendKeys(date('Y'));
     self::$webDriver->findElement(WebDriverBy::id('from[time]_h'))->sendKeys("14");
     self::$webDriver->findElement(WebDriverBy::id('from[time]_m'))->sendKeys("00");
     self::$webDriver->findElement(WebDriverBy::id('to[date]_d'))->sendKeys(date('d') + 1);
     self::$webDriver->findElement(WebDriverBy::id('to[date]_m'))->sendKeys(date('m'));
     self::$webDriver->findElement(WebDriverBy::id('to[date]_y'))->sendKeys(date('Y'));
     self::$webDriver->findElement(WebDriverBy::id('to[time]_h'))->sendKeys("15");
     self::$webDriver->findElement(WebDriverBy::id('to[time]_m'))->sendKeys("10");
     self::$webDriver->findElement(WebDriverBy::name('cmd[saveEditBooking]'))->click();
     $this->assertContains("Buchung erfolgreich bearbeitet", self::$helper->getSuccMessage());
     self::$webDriver->findElement(WebDriverBy::linkText('Zurück zu den Buchungen'))->click();
     // check calendar for booking
     self::$webDriver->findElement(WebDriverBy::linkText(self::$helper->getCurrentMonth() . ' ' . date('Y')))->click();
     $this->assertContains("14:00 CalendarTestBooking", self::$webDriver->findElement(webDriverBy::cssSelector("div.ilTabContentOuter.ilTabsTableCell"))->getText());
     // go back to bookings
     self::$webDriver->findElement(WebDriverBy::linkText('Termine'))->click();
 }
Beispiel #22
0
 public function testGetById()
 {
     $this->driver->get($this->getTestPath('index.html'));
     self::assertEquals('Test by ID', $this->driver->findElement(WebDriverBy::id('id_test'))->getText());
 }
 public function testWebDriverByLocators()
 {
     $this->module->amOnPage('/login');
     $this->module->seeElement(WebDriverBy::id('submit-label'));
     $this->module->seeElement(WebDriverBy::name('password'));
     $this->module->seeElement(WebDriverBy::className('optional'));
     $this->module->seeElement(WebDriverBy::cssSelector('form.global_form_box'));
     $this->module->seeElement(WebDriverBy::xpath(\Codeception\Util\Locator::tabIndex(4)));
     $this->module->fillField(WebDriverBy::name('password'), '123456');
     $this->module->amOnPage('/form/select');
     $this->module->selectOption(WebDriverBy::name('age'), 'child');
     $this->module->amOnPage('/form/checkbox');
     $this->module->checkOption(WebDriverBy::name('terms'));
     $this->module->amOnPage('/');
     $this->module->seeElement(WebDriverBy::linkText('Test'));
     $this->module->click(WebDriverBy::linkText('Test'));
     $this->module->seeCurrentUrlEquals('/form/hidden');
 }
 /**
  * @param $expected_id
  */
 public function assertOneOf($expected_id)
 {
     $matches = $this->webDriver->findElements(WebDriverBy::id($expected_id));
     $this->assertEquals(1, count($matches), 'Should have one ' . $expected_id);
 }
 public function testRawSelenium()
 {
     $this->module->amOnPage('/');
     $this->module->executeInSelenium(function (\Webdriver $webdriver) {
         $webdriver->findElement(WebDriverBy::id('link'))->click();
     });
     $this->module->seeCurrentUrlEquals('/info');
 }
 /**
  * Tests the effects of changing a floorplan which is assigend to a room
  * @test
  */
 public function testAssignmentEffectsOfFloorplans()
 {
     self::$webDriver->findElement(WebDriverBy::linkText('Gebäudeplan'))->click();
     self::$helper->createFloorPlan('Test_A', self::$test_file_absolut_path . 'sucess.jpg', 'Test');
     //#1 Use a new floorplan by creating a room with it
     self::$helper->createRoom('123', '1', '20', "TEST", "Test_A", array());
     self::$webDriver->findElement(WebDriverBy::linkText(' Zurück zu allen Räumen '))->click();
     self::$webDriver->findElement(WebDriverBy::linkText('123'))->click();
     $text = self::$webDriver->findElement(WebDriverBy::xpath("//option[text()='Test_A']"))->getAttribute('selected');
     $this->assertEquals(false, empty($text), '#1 Using a new floorplan on a room has failed!');
     //#2 Change a floorplan which is assigend to a room
     self::$webDriver->findElement(WebDriverBy::linkText('Gebäudeplan'))->click();
     $menu = self::$webDriver->findElement(WebDriverBy::xpath("//div[@id='il_center_col']/div[4]/table/tbody/tr[2]/td[4]"));
     $menu->findElement(WebDriverBy::linkText('Aktionen'))->click();
     $menu->findElement(WebDriverBy::linkText('Bearbeiten'))->click();
     self::$webDriver->findElement(WebDriverBy::id('title'))->clear();
     self::$webDriver->findElement(WebDriverBy::id('title'))->sendKeys('Test_B');
     self::$webDriver->findElement(WebDriverBy::id('file_mode_replace'))->click();
     self::$webDriver->findElement(WebDriverBy::id('upload_file'))->sendKeys(self::$test_file_absolut_path . 'sucess.jpg');
     self::$webDriver->findElement(WebDriverBy::name('cmd[update]'))->click();
     self::$webDriver->findElement(WebDriverBy::linkText('Räume'))->click();
     self::$webDriver->findElement(WebDriverBy::linkText('123'))->click();
     $text = self::$webDriver->findElement(WebDriverBy::xpath("//option[text()='Test_B']"))->getAttribute('selected');
     $this->assertEquals(false, empty($text), '#2 Changing an assigend floorplan has failed!');
     //#3 Delete an assigned floorplan
     self::$webDriver->findElement(WebDriverBy::linkText('Gebäudeplan'))->click();
     self::$helper->deleteAllFloorPlans();
     self::$webDriver->findElement(WebDriverBy::linkText('Räume'))->click();
     self::$webDriver->findElement(WebDriverBy::linkText('123'))->click();
     $text = self::$webDriver->findElement(WebDriverBy::xpath("//option[text()=' - Keine Zuordnung - ']"))->getAttribute('selected');
     $this->assertEquals(false, empty($text), '#3 Deleting an assigend floorplan has failed!');
     self::$helper->deleteAllRooms();
 }
Beispiel #27
0
 /**
  * Tests that the Add Examiner form loads if the user has the correct permission
  *
  * @return void
  */
 function testAddExaminerFormLoadsWithPermission()
 {
     $this->setupPermissions(array("examiner_view"));
     $this->safeGet($this->url . "/examiner/");
     // Test that the selection filter appears
     $bodyText = $this->webDriver->findElement(WebDriverBy::id("lorisworkspace"))->getText();
     $this->assertContains("Add Examiner", $bodyText);
     // Check the name input
     $nameInput = $this->webDriver->findElement(WebDriverBy::Name("addName"));
     $this->assertEquals("input", $nameInput->getTagName());
     // Check the radiologist input
     $radiologistInput = $this->webDriver->findElement(WebDriverBy::Name("addRadiologist"));
     $this->assertEquals("input", $radiologistInput->getTagName());
     // Check the site input
     $siteInput = $this->webDriver->findElement(WebDriverBy::Name("addSite"));
     $this->assertEquals("select", $siteInput->getTagName());
     $this->resetPermissions();
 }
 /**
  * Инициализация select sizes что бы делать клик после обновления страницы с новым обьектом
  * @return WebDriverSelect
  */
 private function init_select_sizes()
 {
     return new WebDriverSelect($this->web_driver->findElement(WebDriverBy::id("MainContent_DDListSize")));
 }
Beispiel #29
0
<?php

set_error_handler(function ($errno, $errstr, $errfile, $errline) {
    throw new ErrorException($errstr, $errno, 0, $errfile, $errline);
});
require __DIR__ . '/../vendor/autoload.php';
$driver = RemoteWebDriver::create('127.0.0.1:4444/wd/hub', DesiredCapabilities::phantomjs());
$driver->manage()->window()->setSize(new WebDriverDimension(1024, 1024));
$driver->manage()->timeouts()->implicitlyWait(8);
$driver->get('http://www.sbb.ch/geschaeftsreisen.html');
$driver->findElement(WebDriverBy::id('btUser'))->sendKeys('stc-cpedersoli');
 public function testFilterPanel()
 {
     self::$webDriver->findElement(WebDriverBy::linkText('Termine'))->click();
     #2: Hide Booking Filter
     self::$webDriver->findElement(WebDriverBy::linkText('Filter ausblenden'))->click();
     $this->assertEquals(false, self::$webDriver->findElement(WebDriverBy::name('cmd[applyFilter]'))->isDisplayed(), '#1 Hiding the Filter does not hide it');
     #1: Show Booking Filtere
     self::$webDriver->findElement(WebDriverBy::partialLinkText('Filter anzeigen'))->click();
     $this->assertEquals(true, self::$webDriver->findElement(WebDriverBy::name('cmd[applyFilter]'))->isDisplayed(), '#2 Showing the Filter does not show it');
     #3 Apply and hide filter
     self::$webDriver->findElement(WebDriverBy::id('login'))->sendKeys(self::$login_user);
     self::$webDriver->findElement(WebDriverBy::partialLinkText('Filter ausblenden'))->click();
     self::$webDriver->findElement(WebDriverBy::partialLinkText('Filter anzeigen'))->click();
     $this->assertEquals(self::$login_user, self::$webDriver->findElement(WebDriverBy::name('login'))->getAttribute('value'), '#3 Hiding and showing the RoomFilter resets it');
     #4 Reset filter
     self::$webDriver->findElement(WebDriverBy::name('cmd[resetFilter]'))->click();
     $this->assertEquals(true, empty(self::$webDriver->findElement(WebDriverBy::name('login'))->getAttribute('value')), '#4 Filter reseting does not work');
 }