TL;DR: We have Roundcube in-browser tests on Travis.
I rewrote old Selenium-based tests created long time ago. These were not
working and I guess no one payed attention to them. Now, it should be
easier and better in many ways.
New code uses Laravel's Dusk (and Facebook/WebDriver) with PHPUnit which
is a nice and powerful framework for functional testing.
- setting up testing environment is very easy,
- writing tests is simpler and we can do much more,
- thanks to SQLite and GreenMail software you don't need a real
IMAP/SMTP nor database server, you also don't need a HTTP server,
- we test Elastic only, and we test all modes desktop/tablet/phone.
- via Travis tests are executed on every commit and pull request. Which
technicly means you don't even need PHP to write tests, just write code
and do a pull request ;).
Now, I would love to see pull requests coming that add some more
in-browser tests. If you'd like to give it a go, I propose to start with
Preferences UI tests. There's Settings/Preferences/General.php file you
can use as a base for testing other Preferences sections.