In order to do functional end-to-end testing of web applications, Selenium is a great tool to execute automated tests on different browsers. Below is a quick introduction how to run these tests from delivery pipelines in IBM Bluemix.
Bluemix DevOps provides toolchains to build, deploy and manage applications. These toolchains can contain services provided by Bluemix as well as open source and third party tools. An example of a third party tool is Sauce Labs, which allows running Selenium based test suits as part of the delivery pipelines.
The tests can be written with the JavaScript test framework Mocha. Here is a sample snippet to test the page title. Check out the full source code for more details.
1
2
3
4
5
6
7
it("Have correct title", function(done) {
browser
.get(url)
.title()
.should.become("Microservices Sample")
.nodeify(done);
});
The test results are displayed directly in Bluemix. If tests fail, the next stages in the pipelines are not triggered.
Another nice feature of Sauce Labs is the ability to run tests on different operating systems, browsers, with different resolutions, etc. easily from within the Sauce Labs dashboard without having to own the hardware. Here is a sample how to test a web application on an iPad.
In order to try out the Sauce Labs functionality from Bluemix I suggest to follow the microservices toolchain tutorial.