All Projects → minkphp → Mink

minkphp / Mink

Licence: mit
PHP web browser emulator abstraction

Programming Languages

PHP
23972 projects - #3 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to Mink

Pyppeteer
Headless chrome/chromium automation library (unofficial port of puppeteer)
Stars: ✭ 3,480 (+133.24%)
Mutual labels:  browser-automation
learn-browser-testing
Repository for my upcoming course & workshop
Stars: ✭ 105 (-92.96%)
Mutual labels:  browser-automation
jseval
Evaluate JavaScript on a URL through headless Chrome browser.
Stars: ✭ 19 (-98.73%)
Mutual labels:  browser-automation
browser-pool
A Node.js library to easily manage and rotate a pool of web browsers, using any of the popular browser automation libraries like Puppeteer, Playwright, or SecretAgent.
Stars: ✭ 71 (-95.24%)
Mutual labels:  browser-automation
phpunit-mink
Library for using Mink in PHPUnit tests. Supports session sharing between tests in a test case.
Stars: ✭ 71 (-95.24%)
Mutual labels:  mink
test-real-styles
(test-)framework agnostic utilities to test real styling of (virtual) dom elements
Stars: ✭ 37 (-97.52%)
Mutual labels:  browser-automation
browser-automation-api
Browser automation API for repetitive web-based tasks, with a friendly user interface. You can use it to scrape content or do many other things like capture a screenshot, generate pdf, extract content or execute custom Puppeteer, Playwright functions.
Stars: ✭ 24 (-98.39%)
Mutual labels:  browser-automation
tagui scripts
TagUI Editor for Browser Automation (chrome-firefox)
Stars: ✭ 41 (-97.25%)
Mutual labels:  browser-automation
behat-3-kickstart
Behat 3/Mink and Guzzle for API testing. Code follows PageObjects approach. Saucelabs integration.
Stars: ✭ 13 (-99.13%)
Mutual labels:  mink
MinkZombieDriver
Zombie.js driver for Mink framework
Stars: ✭ 41 (-97.25%)
Mutual labels:  mink
simplechrome
Webrecorders DevTools Protocol Automation Library
Stars: ✭ 16 (-98.93%)
Mutual labels:  browser-automation
automa
A browser extension for automating your browser by connecting blocks
Stars: ✭ 6,174 (+313.81%)
Mutual labels:  browser-automation
sinco
Browser Automation and Testing Tool for Deno, written in full TypeScript
Stars: ✭ 54 (-96.38%)
Mutual labels:  browser-automation
Viewfinder
📷 BrowserBox - Remote isolated browser API for security, automation visibility and interactivity. Run on our cloud, or bring your own. Full scope double reverse web proxy with multi-tab, mobile-ready browser UI frontend. Plus co-browsing, advanced adaptive streaming, secure document viewing and more! But only in the Pro version. Get BB today! Se…
Stars: ✭ 1,741 (+16.69%)
Mutual labels:  browser-automation
xk6-browser
k6 extension that adds support for browser automation and end-to-end web testing via the Chrome Devtools Protocol
Stars: ✭ 204 (-86.33%)
Mutual labels:  browser-automation

Mink

Latest Stable Version Latest Unstable Version Total Downloads CI License

Useful Links

Usage Example

<?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();

Install Dependencies

$> curl -sS https://getcomposer.org/installer | php
$> php composer.phar install

Contributors

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].