A recent acquisition by Oracle involved a company called Empirix, that sold its e-Test Suite product to Oracle. Oracle is now integrating this product with Enterprise Manager, under the new Oracle Application Testing Suite label. The e-Test Suite is used for functional – black box – testing of Web Applications (those applications with a client that communicates via HTTP with a backend, including Applets and to some extent WebServices). The scripts recorded for functional testing – from the actions performed by the user –
can be – parametrized if necessary – used for load or stress testing. The test process as a whole can be managed with the Oracle Test Manager for Web Applications, which sits on top of a repository that will hold (Functional) Requirements, associated Test Plans composed of one ore more individual test cases (that correspond with the tests defined in the Load Test tool) and records issues found with executing the test plan and individual test cases. The tool generates reports and dashboards with charts.
Note: the picture shows theUI for Oracle Functional Testing for Web Applications. On the left hand side you see a tree with test cases – and on the right hand the ‘embedded browser’ with the application & page currently being test-script-recorded.
There are certain similarities between this tool and a tool like Selenium – an open source white box tool for functional testing of web applications. The Oracle representative I spoke to suggested that it oftentimes makes sense to start with Selenium – as it is a fairly simple and free tool – and consider moving to Oracle Application Testing Suite as the challenges are too much for Selenium. He estimated that Selenium has about 20% of the capabilities of the Oracle product – but sometimes that 20% is all you need. Selenium by the way is plug in for a web browser, the opposite of having a browser embedded in the tool.
This virtual users capability that encompasses many parameters (including configurable browser types, connection speeds, and think times), allows testers to interact with the Web application just like real users will to understand exactly how the application will scale under peak load conditions. The tool virtual users can generate multithreaded browser requests while performing rigorous functional validation under load conditionsâ€”validation that protocol-based legacy client server testing tools cannot provide. Oracle Load Testing for Web Applications can also be used to test the performance of Web service interfaces by simulating thousands of concurrent clients accessing SOA-based applications.
The test scripts can be recorded for both HTML based Web applications as well as Applets. However, Oracle (Web)Forms currently poses some problems, as the applet-servlet communication is encoded/encrypted in ways that current the Application Test Suite cannot deal with. This is one of the top priorities to address for the development team – early next year might bring us a release that supports testing of Forms applications as well.
Just to be clear on this: web applications developed using entirely different technologies, such as PHP, .NET, Ruby and GWT can all be tested as in the end they all render HTML to the browser and perform HTTP based communication.
Managing the Test Process
Oracle Test Manager for Web Applications helps users manage the Web application testing process, ensuring full test coverage. It allows the user to define testing requirements, specify and execute manual or automated tests to validate those requirements, and then manage the defects that those tests uncover.The incidents recorded in Test Manager can also be exported to be loaded in for example Bugzilla, Jira or other incident tracking tools.
The Test Manager to some extent competes with HP Mercury Test Director. However, it is much simpler and more flexible and has far less functionality. Note: Oracle itself is a big user of the HP Mercury testing tools – well over $1M per year in license fees. It is the objective to as quickly as possible move all testing of all (web and service) products to the Application Test Suite.
Other competitors include IBM Rational and Borland’s Life Cycle products.
The Test Manager is a Web application – currently running on JBoss (!) but in the process of using WebLogic as its primary and default deployment platform. It sits by default on a MS Access or SQLServer database (!); however, since it only uses standard ODBC for its database access, it is easy to switch over to an Oracle database. Obviously, one of the first things that will be changed in the product is to ensure that it installs on Oracle by default.