It's worth acknowledging what you lose by not using Selenium. Notably, the ability to do cross-browser testing (including for cloud-based environments like Device Farm and user agents like IE & iOS Safari).
This might be not be a concern. Cross-browser testing is often not in-scope for/separate to UI testing, and if you can make some functional sacrifices to be more productive in your testing, good for you.
Cypress appears to be working on cross-browser support but looks unlikely that iOS and IE will ever be supported.
I also want to suggest TestCafe as another cross-browser alternative. It also does not need Selenium, but rather than implementing its own drivers like Cypress, it uses a novel proxy approach to manipulate the browser.
TestCafe - we used to use Protactor in the past, but TestCafe is now the way to go
https://devexpress.github.io/testcafe/
​
What I like about it is it doesn't use the clunky webdriver protocol / Selenium - it has it's own. From their FAQ:
"Unlike most testing solutions, TestCafe is not built on Selenium. This allows us to implement features you cannot find in Selenium-based tools (for example, testing on mobile devices, user roles, automatic waiting, etc.)."
​
We used to use Selenium, but it proved to be very expensive to maintain. We're looking for more lightweight tools now for new products. The one I like and try to promote at work is Test Cafe (not old version with UI, but new opensource one https://devexpress.github.io/testcafe/)
this! specially if you have to test/support many Browsers.
If you go for web, I'd recommend learning JS and Node.js (because it's useful in IT in general).
Many automation tools, e.g. https://devexpress.github.io/testcafe/ are based on JS. And they have rich documentation, and lots of manuals across the web.
TestCafe has excellent built-in support for cross-browser testing. It is open source, though.
Any particular reason you're looking for non-open-source tools?
TestCafe is added, initial 15 new boilerplates. acc to the doc TestCafe takes node assert and chai. for assertion. That is what is implemented so far, I will experiment with other assertion libraries.
https://github.com/e2e-boilerplate/utils/blob/master/docs/testcafe/implemented.md
Sounds like you need to do end to end testing that covers all parts of your app, as opposed to unit testing that only covers single isolated parts. If you search for "end to end testing" (or E2E) you'll find plenty of resources and tutorials.
I've used Nightwatch and Testcafe for E2E testing, but there are many frameworks to look at.
On this page it says you need to use the browser alias (i.e. chrome:
), not path:
Only negative remark I could think of is the pricing. I wouldn't use it for personal smaller projects
EDIT: Apparently it's free and open source now! https://devexpress.github.io/testcafe/
Not sure why there (old ?) website still displays the pricing? https://testcafe.devexpress.com/Buy/
TestCafe: https://testcafe.devexpress.com/ And also it's newer version TestCafe Studio is coming soon: https://devexpress.github.io/testcafe/faq/#what-is-the-difference-between-a-paid-and-an-open-source-testcafe-version
Take a look at TestCafe. It's a free node.js tool for automating web tests: https://devexpress.github.io/testcafe/
1 minute to install and start (some JS knowledge required). Doesn't use WebDriver or Selenium.
You can take a look at TestCafe tests, they have some examples here: https://github.com/DevExpress/testcafe/tree/master/docs/articles/documentation/recipes
They're related to the product, but show general patterns.
E.g. this PageModel test building pattern: https://devexpress.github.io/testcafe/documentation/recipes/using-page-model.html
It has remote support so it should work fine with some grit. I hope it works because I'm never touching Selenium again. Selenium grid is quite difficult to set up and I found it extremely unreliable (sessions and browsers getting stuck constantly).