It's been around 8 years since Behat made its entrance in the PHP world. Looking back, it's fair to say it meant a revolution thanks to which many development teams started to incorporate browser testing into their projects. However, Gherkin syntax, while very useful in some scenarios, it's not always the most friendly or desirable when writing browser tests. Enter Nightwatch.js...
This session will introduce Nightwatch.js, explaining the artifacts it provides for writing browser tests. It'll also include some guidelines to follow when writing browser tests, as well as some advices to foster and simplify its adoption among other team members. Additionally, some more advanced features will be shown with actual running examples, such as parallel test execution and integration with CI systems, like Jenkins.
Nightwatch.js has been around for some time, but with Drupal officially using it for browser testing as of version 8.6, now it makes more sense than ever to learn how to use it. After this session, you'll be able:
- Write Nightwatch.js tests in an efficient, clean, and easy to adopt way.
- Have a clear picture of how to integrate the Nightwatch stack with your existing CI workflows and tools, for remote testing.
While it's marked as an intermediate session, no previous testing experience is mandatory to understand and make the best out of the contents of this session. The session is aimed mostly at developers, but some DevOps bits might be touched during it. Team leaders looking for a suitable testing stack to incorporate into their company workflows will probably benefit from this talk, too.
About the Speaker:
My name is Salva Molina, I work as a Freelance PHP developer, and I've been in the Drupal community for more than 6 years. My main area of expertise is backend development, with some background and expertise as well in DevOps and Security. I'm passionate about automation, clean code, and best practices. I've been a speaker at 3 DrupalCamps in Spain, DrupalDevDays in Lisbon (2018) and the last DrupalCon Vienna.