/** * * @param \Pachico\Voyeur\Shot $shot * @return string */ protected function _shoot_shot(Shot $shot) { // Starting sesion if not started yet (in short, open browser) if (!$this->_session->isStarted()) { $this->_log_out('Starting camera session'); $this->_session->start(); } $this->_log_out('Loading ' . $shot->get_uri()); $this->_log_out("Resizing window to " . $shot->get_width() . 'x' . $shot->get_height()); $this->_session->resizeWindow($shot->get_width(), $shot->get_height()); // Load page $this->_session->visit($shot->get_uri()); $this->_log_out("Loading finished"); // Should I wait for something? if (count($shot->get_wait_for()) > 0) { foreach ($shot->get_wait_for() as $waitings) { $wait_time = key($waitings); $condition = is_null(current($waitings)) ? null : current($waitings); $this->_log_out("Waiting " . $wait_time . ' microseconds'); $condition and $this->_log_out("Or until " . $condition); $this->_session->wait($wait_time, $condition); } } // Any scripts to execute? if (count($shot->get_scripts()) > 0) { foreach ($shot->get_scripts() as $script) { $script = $this->_get_script_file_content($script); $this->_session->executeScript($script); } } // Finally take the screenshot and return it $this->_log_out("Taking screenshot"); $picture = $this->_session->getScreenshot(); return $picture; }
public function setUp() { parent::setUp(); $this->driver = new GoutteDriver(); $this->session = new Session($this->driver); $this->session->start(); $this->session->visit($this->baseUrl); }
private function prepareMinkSessionIfNeeded() { if ($this->minkSession->getDriver() instanceof KernelDriver) { return; } if (false !== strpos($this->minkSession->getCurrentUrl(), $this->minkParameters['base_url'])) { return; } $this->minkSession->visit(rtrim($this->minkParameters['base_url'], '/') . '/'); }
public function openPage($url) { $session = new Session($this->getDriver()); $session->start(); $session->visit($url); $this->page = $session->getPage(); }
/** * Visit specified URL. * * @param string $url Url of the page. * * @return void */ public function visit($url) { if (!$this->isStarted()) { $this->start(); } parent::visit($url); }
/** * Create session. * * @return void */ protected function startSession() { if (!$this->session->isStarted()) { $this->session->start(); } $this->session->visit($_SERVER['WEB_FIXTURE_URL'] . '/tests/aik099/QATools/HtmlElementsLive/Element/index.html'); }
/** * Create session. * * @return void */ protected function startSession() { if (!$this->session->isStarted()) { $this->session->start(); } $this->session->visit($_SERVER['WEB_FIXTURE_URL'] . '/tests/QATools/QATools/Live/PageObject/index.html'); }
function it_loads_base_url_and_sets_a_cookie_if_not_using_kernel_driver_and_driver_is_currently_outside_base_url(Session $minkSession, DriverInterface $driver) { $minkSession->getDriver()->willReturn($driver); $minkSession->getCurrentUrl()->willReturn('http://sylius.org'); $minkSession->visit('http://localhost:8080/')->shouldBeCalled(); $minkSession->setCookie('abc', 'def')->shouldBeCalled(); $this->setCookie('abc', 'def'); }
/** * @Given /^I am on "([^"]*)"$/ */ public function iAmOn($arg1) { if (!$this->session) { $this->iOpenBrowser(); } $url = $arg1; $this->session->visit($url); $this->page = $this->session->getPage(); }
public function testBaseUrl() { $client = new Client(require __DIR__ . '/../app.php'); $driver = new BrowserKitDriver($client, 'http://localhost/foo/'); $session = new Session($driver); $session->visit('http://localhost/foo/index.html'); $this->assertEquals(200, $session->getStatusCode()); $this->assertEquals('http://localhost/foo/index.html', $session->getCurrentUrl()); }
/** * Test record tabs for a particular ID. * * @param Session $session Session * @param string $id ID to load * @param bool $encodeId Should we URL encode the ID? * * @return void */ protected function tryRecordTabsOnId(Session $session, $id, $encodeId = true) { $url = $this->getVuFindUrl('/Record/' . ($encodeId ? rawurlencode($id) : $id)); $session->visit($url); $this->assertEquals(200, $session->getStatusCode()); $page = $session->getPage(); $staffViewTab = $page->findById('details'); $this->assertTrue(is_object($staffViewTab)); $this->assertEquals('Staff View', $staffViewTab->getText()); $staffViewTab->click(); $this->assertEquals($url . '#details', $session->getCurrentUrl()); $staffViewTable = $page->find('css', '#details-tab table.citation'); $this->assertTrue(is_object($staffViewTable)); $this->assertEquals('LEADER', substr($staffViewTable->getText(), 0, 6)); }
/** * Creates Mink session using current session strategy and returns it. * * @return Session */ public function getSession() { if ($this->_session) { return $this->_session; } $browser = $this->getBrowser(); try { $this->_session = $this->getSessionStrategy()->session($browser); if ($this->getCollectCodeCoverageInformation()) { $this->_session->visit($browser->getBaseUrl()); } } catch (DriverException $e) { $message = 'The Selenium Server is not active on host %s at port %s'; $this->markTestSkipped(sprintf($message, $browser->getHost(), $browser->getPort())); } return $this->_session; }
/** * @param $not * @param TableNode $paths * * @throws \Exception * * @Given /^user should(| not) have an access to the following pages:$/ */ public function checkUserAccessToPages($not, TableNode $paths) { $result = []; $code = $not ? 403 : 200; // Use "GoutteDriver" to have an ability to check answer code. $driver = new Mink\Driver\GoutteDriver(); $session = new Mink\Session($driver); $session->start(); foreach (array_keys($paths->getRowsHash()) as $path) { $path = trim($path, '/'); $session->visit($this->locatePath($path)); if ($session->getStatusCode() !== $code) { $result[] = $path; } } if (!empty($result)) { throw new \Exception(sprintf('The following paths: "%s" are %s accessible!', implode(', ', $result), $not ? '' : 'not')); } }
/** * @return $session */ public static function login($username, $password) { $driver = new GoutteDriver(); $session = new Session($driver); $session->start(); $session->visit('https://github.com/login'); $page = $session->getPage(); $form = $page->find('css', '.auth-form form'); if (null === $form) { throw new \Exception('Couldn\'t locate the login form.'); } $form->fillField('login_field', $username); $form->fillField('password', $password); $form->submit(); // @todo need to check if successfully logged in here... $dumper = new Dumper(); file_put_contents(__DIR__ . '/../settings.yml', $dumper->dump(['github' => ['username' => $username, 'password' => $password]], 2)); return $session; }
/** * @param string $url * @return \Behat\Mink\Element\DocumentElement */ protected function visit($url) { $this->session->visit($url); return $this->session->getPage(); }
public function testVisit() { $this->driver->expects($this->once())->method('visit')->with($url = 'some_url'); $this->session->visit($url); }
/** * Opens the page. * * @param $page */ public function amOnPage($page) { $host = rtrim($this->config['url'], '/'); $page = ltrim($page, '/'); $this->session->visit($host . '/' . $page); }
/** * @When I check the URI */ public function iCheckTheUri() { $this->session->visit('http://localhost:8080/what-was-the-uri/'); }
/** * Opens the page. * * @param $page */ public function amOnPage($page) { $this->session->visit($this->config['url'] . $page); }
/** * Opens order history page. * * @param \Behat\Mink\Session $oMinkSession */ private function _openOrderHistory($oMinkSession) { $oMinkSession->visit(shopURL . "en/order-history/"); $oPage = $oMinkSession->getPage(); $oLoginInput = $oPage->find('xpath', "//input[contains(@id, 'loginUser')]"); $oPasswordInput = $oPage->find('xpath', "//input[contains(@id, 'loginPwd')]"); $oLoginButton = $oPage->find('xpath', "//button[contains(@id, 'loginButton')]"); $oLoginInput->setValue('*****@*****.**'); $oPasswordInput->setValue('useruser'); $oLoginButton->click(); $oContentTitle = $oPage->find('xpath', "//section[contains(@id, 'content')]/h1"); $this->assertEquals('%PAGE_TITLE_ACCOUNT_ORDER%', $oContentTitle->getText(), 'Given page title: "' . $oContentTitle->getText() . '" is not same.'); $this->checkForErrors(); }
<?php require __DIR__ . '/vendor/autoload.php'; use Behat\Mink\Driver\GoutteDriver; use Behat\Mink\Driver\Selenium2Driver; use Behat\Mink\Session; //$driver = new GoutteDriver(); $driver = new Selenium2Driver(); $session = new Session($driver); $session->start(); $session->visit('http://jurassicpark.wikia.com'); //echo "The status code is ".$session->getStatusCode()."\n"; echo "The current URL is " . $session->getCurrentUrl() . "\n"; // Hallo! I'm a DocumentElement $page = $session->getPage(); echo "The start of the page text is " . substr($page->getText(), 0, 56) . "\n"; // And I'm a NodeElement! $nodeElement = $page->find('css', '.subnav-2 li a'); echo "The matched link text is " . $nodeElement->getText() . "\n"; $randomLink = $page->findLink('Random page'); echo "The matched URL is " . $randomLink->getAttribute('href') . "\n"; $randomLink->click(); echo "The new URL is " . $session->getCurrentUrl() . "\n"; $session->stop();
public function testExample() { $this->session->visit('localhost'); $page = $this->session->getPage(); $this->session->{$this}->assertEquals('Mink is a php 5.3 library that you’ll use inside your test suites or project. Before you begin, ensure that you have at least PHP 5.3.1 installed.', $page->find('css', 'h1')->getText()); }
protected function visit($path) { $this->session->visit(rtrim($this->baseUrl, '/') . '/' . ltrim($path, '/')); return $this->session->getPage(); }
/** * Get a reference to a standard search results page. * * @param Session $session Mink session * * @return Element */ protected function getSearchResultsPage(Session $session) { $path = '/Search/Results?lookfor=id%3A(testsample1+OR+testsample2)'; $session->visit($this->getVuFindUrl() . $path); return $session->getPage(); }