OS Framework Selection: Reversible Real-World Trial

Learn more about testing new frameworks with this reversible real-world trial.

When selecting an open-source framework, the proof of the pudding is in the eating. You did your research, you did a thorough review process, and one candidate stood out among the rest and offered the best solutions for your use case.

So, the framework looks great, but does it really live up to all of its promises? You must test it thoroughly before adopting it for good. You know that a "try-me" tutorial is not enough. However, performing a real test is a lot of work.

Acceptance Testing Using Arquillian (Jakarta EE)

In agile projects using Java/JEE, the focus and scope of developer testing are usually diminished to either unit testing or very basic functional testing. Arquillian brings in a newer thought process of integration and acceptance testing that includes Continuous Integration and testing within the JEE container, especially for JEE products or solutions that require functionalities to be tested across various containers. This provides the most productive way. According to the internet, Arquillian was also the "Duke's Choice Award for Developer Productivity at JavaOne Conference 2011." In my experience, it not only enhances the productivity of developers but also promotes good practices. 

It allows you to convert your TestNG or JUnit (among others) test cases into Arquillian test cases with few changes. Also, it allows you to directly use CDI in your test code. This allows you to inject dependencies such as EJB or web services directly in your test cases. The central thought process involved in using Arquillian is the ShrinkWrap API provided by it. It allows you to package your product or project code into Archives like JAR, WAR, and EAR. Along with the project code that is to be tested, the test cases are also packaged. It then allows multiple Maven configurations to allow direct deployment into one of these modes (that we used for our product).