1. Go to this page and download the library: Download goez/mink-page-objects library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
goez / mink-page-objects example snippets
use Goez\PageObjects\Page;
class Home extends Page
{
protected $elements = [
'SearchForm' => ['css' => 'form'],
];
public function search($keyword)
{
return $this->getPart(SearchForm::class)
->search($keyword);
}
}
use Goez\PageObjects\Page;
class SearchResult extends Page
{
}
use Goez\PageObjects\Part;
class SearchForm extends Part
{
/**
* @param $keyword
* @return SearchResult
* @throws \Behat\Mink\Exception\ElementNotFoundException
*/
public function search($keyword)
{
$this->element->fillField('q', $keyword);
$this->element->submit();
return $this->createPage(SearchResult::class);
}
}
use Behat\Mink\Driver\Selenium2Driver;
use Behat\Mink\Session;
use Goez\PageObjects\Context;
class GoogleSearchTest extends PHPUnit_Framework_TestCase
{
// Install phantomjs first
// and you can use this trait
// for starting phantonjs automatically
use PhantomJSRunner;
public function testSearchWithKeyword()
{
$driver = new Selenium2Driver('phantomjs');
$session = new Session($driver);
$session->start();
$context = new Context($session, [
'baseUrl' => 'https://www.google.com',
]);
$context->createPage(Home::class)
->open()
->search('example')
->shouldContainText('Example Domain');
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.