When you learn to program, everything happens on the same computer, but when you start working for a (structured) organization, you realize the risks of changing and testing code directly where your users or customers are working. Thus you will have separated environments for developing, integrating or releasing your system. In this article, Richard Ellison provides some best practices for software testers on how to manage software testing environments.
One of the problems we face in automated system testing is how to setup and manage the life cycle of the included applications. Traditional virtualisation technologies can provide solutions to these problems, but at the price of heavy resources requirements and unacceptably long startup times. Docker on the other hand, with lower resource requirements and shorter application startup times, has seen a lot of interest lately for looking like a better fit for automated system testing.
Although it could appear like a counterintuitive concept, the idea of performing software testing in production has gained more and more visibility in a software development world that aims for rapid delivery of new features and where it could be more and more difficult to reproduce the full complexity of applications in a separate environment. In this article, Marc van ’t Veer discusses the concept of testing in production and why it should be performed.
Arquillian is a open source platform sponsored by JBoss that simplifies the testing of Java middleware. It brings your test to the runtime, freeing you from the concern of managing the runtime from your test and letting you focused on writing your integration test logic. This blog post by Nikolas Frankel explains how to to test Java EE components on JBoss 5.1 EAP with Arquilian and TestNG. His conclusion is that Arquillian seems to be a nice in-container testing framework but seems to have to be polished around some corners. The usage of TestNG may be the culprit here.
This blog post explains how to separate integration and unit tests with Maven, Sonar, Failsafe and JaCoCo. This is achieved by executing unit tests via Surefire and integration tests via Failsafe. Then you show as much information about them as possible in Sonar. The post provides detailed command lines and Maven configuration files to achieve this goal.
This presentation addresses the missing link in Enterprise Java development: simple, easy integration testing. You will learn how the simplified component model of Java EE can be applied to testable development.