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.
This means:
IMAP/SMTP nor database server, you also don't need a HTTP server,
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.
See also tests/Browser/README.md
Happy New Year everybody!