Browser emulators and Mink
Browser emulators are programs that emulate or mimic the functionalities and behaviors of a web browser. These emulators can then be used by another program, such as Behat or Codeception, to simulate what a real user would do on a web browser while using your application.
There are two types of browser emulators:
- Headless: These types of emulators fire HTTP requests and simply listen for the returned DOM or response from the web application. They will be best suited for lightweight testing, without the need for complicated checks such as checking for an AJAX response after a mouseover event.
- Controllers: These types of emulators use real browsers, and they basically act like a person who controls a real browser. The good thing about using these types of emulators, in my experience, is that we can set the type of browser we want to test with. We can also check for the JavaScript and AJAX results on a page.
In our example, we will use...