Mink
1.12.0
<?php
use Behat Mink Mink ,
Behat Mink Session ,
Behat Mink Driver GoutteDriver ,
Behat Mink Driver Goutte Client as GoutteClient ;
$ startUrl = ' http://example.com ' ;
// init Mink and register sessions
$ mink = new Mink ( array (
' goutte1 ' => new Session ( new GoutteDriver ( new GoutteClient ())),
' goutte2 ' => new Session ( new GoutteDriver ( new GoutteClient ())),
' custom ' => new Session ( new MyCustomDriver ( $ startUrl ))
));
// set the default session name
$ mink -> setDefaultSessionName ( ' goutte2 ' );
// visit a page
$ mink -> getSession ()-> visit ( $ startUrl );
// call to getSession() without argument will always return a default session if has one (goutte2 here)
$ mink -> getSession ()-> getPage ()-> findLink ( ' Downloads ' )-> click ();
echo $ mink -> getSession ()-> getPage ()-> getContent ();
// call to getSession() with argument will return session by its name
$ mink -> getSession ( ' custom ' )-> getPage ()-> findLink ( ' Downloads ' )-> click ();
echo $ mink -> getSession ( ' custom ' )-> getPage ()-> getContent ();
// this all is done to make possible mixing sessions
$ mink -> getSession ( ' goutte1 ' )-> getPage ()-> findLink ( ' Chat ' )-> click ();
$ mink -> getSession ( ' goutte2 ' )-> getPage ()-> findLink ( ' Chat ' )-> click ();
$ > curl -sS https://getcomposer.org/installer | php
$ > php composer.phar install