In case with some (actually, a lot of) projects, people who can code will have to spend 100% of their time coding features. Tools Selenium IDE strive to offer a 'good enough' solution for cases when you're trying to automate the work of manual testers or have less technical members of your team involved into UI testing. And tools like Screenster turn 'good enough' into a working solution.
Visual regression testing is, imho, another case for tools like Screenster (http://bit.ly/2kXEEFV), even though I know that, technically, you have some of this functionality with Protractor (http://bit.ly/2kune0t).
This is what I do for web, mobile web and mobile app (appium). It takes some time to set up the proper layout[1], but once it's done it's very easy to move the frameworks around for the various platforms. Scripting out the tests also allows me to do more with our API for more than just UI testing, but also functional.
1 - http://www.guru99.com/page-object-model-pom-page-factory-in-...
The advantage of visual/screenshot-driven automation tools like Screenster.io or Kantu.io is twofold:
1. It allows non-developers to join the testing team and create automated web tests.
2. Even if you are a developer by training, tools like NW.js or PhantomJS still have a significant learning curve. I argue that developer time is typically better spend on the product than on coding complex test cases.
I mean, if you want to do end-to-end UI testing, you'd probably want manual testers to cover a huge part of the routine. And tools like Screenster help you automate the process and use it for UI regression testing.
1. Substitute writing code with a visual editor. This is, essentially, what Screenster does.
2. Make scripting abstract enough to a point where it starts to resemble plain English. That's, in a nutshell, the approach of Cucumber.
Each of the two has its pros and cons. In my opinion, the key strength of tools like Screenster in this context is how they address visual/css regression testing (specifically, things like text or image formatting issues, layout issues and other things that typically get broken by CSS updates): http://screenster.io/a-better-way-to-do-visual-regression-te...
For this reason, much prefer test-libraries that read more like BDD cases without actually trying to invent a new DSL for me to maintain on top.
If that's an acceptable tradeoff for having anyone be able to create new test cases though, it would probably be okay.
Lately, I was playing with it. Here is a starter project: https://github.com/jumasheff/nightwatch-cucumber-e2e-testing...
Protractor (http://www.protractortest.org) is a good wrapper for Selenium: despite the name, you can totally use it with non-Angular pages (I'm a Preact person myself). It's convenient because it handles installing and updating webdrivers (which was especially handy on Windows), and seems well-maintained. And if you're using only Chrome and Firefox, it even has a direct connection mode to skip having to run a Selenium server (example: https://github.com/wildpeaks/threejs-examples-screenshots).
Otherwise if you just want to run tests in a real browser environment but don't want to test in multiple browsers, you could run them in NW.js, Electron, SlimerJS, or PhantomJS.