[RCD] Automated in-browser tests
Aleksander Machniak
alec at alec.pl
Thu Jan 2 20:44:24 CET 2020
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:
- 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.
See also tests/Browser/README.md
Happy New Year everybody!
--
Aleksander Machniak
Kolab Groupware Developer [https://kolab.org]
Roundcube Webmail Developer [https://roundcube.net]
----------------------------------------------------
PGP: 19359DC1 # Blog: https://kolabian.wordpress.com
More information about the dev
mailing list