Commit Graph

12 Commits

Author SHA1 Message Date
Daniel Calviño Sánchez 9e1246eba5 Update acceptance tests to Selenium 3
The acceptance tests used the last Selenium 2 Docker container
available, which provides a rather old Firefox version (Firefox 47).
Nevertheless, despite some rendering issues, most things still worked as
expected due to the JavaScript files being built with support for older
browsers. However, now that support for Internet Explorer 11 and older
browsers will be dropped things could start to fail, so a newer browser
(and thus a newer Selenium version) should be used in the acceptance
tests.

Selenium has been standardized by the W3C, and the protocol to
communicate between the Selenium server and the browser has changed due
to that. Firefox >= 48 only supports the new W3C protocol, but the
Selenium driver for Mink does not support it yet.

The old protocol can still be used in recent Chromium/Chrome versions by
explicitly forcing it, so for the time being the acceptance tests will
need to be run on Chrome instead (although Firefox provides some
interesting features like the fake streams that would be needed to test
calls in Talk, so they should be moved again to Firefox once possible).

Finally, the default shm size of Docker is 64 MiB. This does not seem
enough to run newer Chrome releases and causes the browser to randomly
crash during the tests ("unknown error: session deleted because of page
crash" is shown in the logs). Due to this "disable-dev-shm-usage" needs
to be used so Chrome writes shared memory files into "/tmp" instead of
"/dev/shm" (the default shm size of Docker could have been increased
instead using "docker run --shm-size...", but that seems to be
problematic when the container is run in current Drone releases).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-04-16 20:00:15 +02:00
Daniel Calviño Sánchez 81d0b70791 Run acceptance tests on PHP 7.3
There is no difference (as far as I know) between running the acceptance
tests on PHP 7.1 or on PHP 7.3; this is simply a preparatory step to be
ready when PHP 7.1 support is dropped in Nextcloud server.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-10-22 16:48:55 +02:00
Joas Schilling b357913587
Improve startup speed of acceptance tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-18 15:21:42 +01:00
Daniel Calviño Sánchez 34f397fd22 Link the default Apache directory to the Nextcloud server in all runners
In order to run the acceptance tests in Apache "/var/www/html" has to be
linked to the root directory of the Nextcloud server. Before this was
automatically done when launching the acceptance tests through
"./run.sh", but an explicit command was needed when run in Drone. Now
the linking was moved from "run.sh" to "run-local.sh", so it is
automatically done when run through "./run.sh" and in Drone, including
when running the tests for an app instead of for the server.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-10-29 12:38:42 +01:00
Julius Härtl de66336f9c
Add basic acceptance tests for apps management
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-06-09 11:37:41 +02:00
Daniel Calviño Sánchez f6d34587a2 Use Docker image for acceptance tests
The Docker image for acceptance tests provides support for both the PHP
built-in web server and the Apache web server; the acceptance tests for
the server are run on the PHP built-in web server, but the acceptance
tests for some apps will have to be run on the Apache web server (for
example, Talk, as it uses long polling), so a Docker image to support
both cases has to be used in "run.sh". ".drone.yml" was just updated for
consistency, although it was not really needed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-04-09 21:50:30 +02:00
Daniel Calviño Sánchez c8df4f5df4 Make possible to set the acceptance tests directory to use
When the acceptance tests were run they were always loaded from the
"tests/acceptance" directory of the Nextcloud server. Now it is possible
to set the directory used to look for the Behat configuration and the
Nextcloud installation script, which makes possible to run acceptance
tests for the apps too instead of only for the server (although if no
directory is explicitly given the tests for the server are the ones
run).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-04-06 21:56:12 +02:00
Arthur Schiwon 5b4df0f320
bump acceptance test suite to use php 7.1 image
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-10-31 10:38:54 +01:00
Daniel Calviño Sánchez 4fc9a7146b Add option to acceptance test runners to set a custom timeout multiplier
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-05-03 23:18:40 +02:00
Daniel Calviño Sánchez b0b32eff1f Fix minor code style issues (also known as nitpicking)
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-04-22 17:50:37 +02:00
Morris Jobke db7eedccc9
Run acceptance tests on macOS
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-04-21 14:11:56 -05:00
Daniel Calviño Sánchez 2f80025ec2 Move acceptance tests from build/acceptance to tests/acceptance
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-04-21 14:44:29 +02:00