we are using crusie control (an open source automated build management tool) to check out, compile and deploy our Java application on the weblogic server
after the deployment i want run a set of regression test suite which is written in QTP this needs to be done automatically i.e invoked after the application has been successfully deployed -- please let me know if there is any ant task through which i can trigger this QTP test suite OR any other script through i can integrate cruise control and QTP
I give some explanation about the integration of QTP with Cruise.
There are different ways to integrate QTP and Cruise but this is one I first used with Winrunner. It does require another Mercury product, being Quality Center (or Test Director) and a little publicized tool called TDTestSetRun, which you can get from Mercury’s support site. This little executable allows you to call a test set from within Quality Center. Therefore you add all of the QTP tests you want to run into a test set in Quality Center (or you could do multiple and make multiple calls), then use TDTestSetRun to remotely invoke the test set. The trick is how to report back to Cruise that the tests failed (they will pass by default). To do this I used ant to check for the existence of a file and on each test in the Test Set created an on error (via preferences) task to create the file, which it will do only if the test fails.
There are of course drawbacks to this approach (apart from the cost of the tools!), for example the test results are not communicated back to Cruise (only a pass/fail result). By using Quality Center’s API you could get more information out if you wanted to. It will only run from a Windows PC and the TDTestSetRun application is very buggy. It gives very little and poor feedback if you make a mistake and seems to be very sensitive about the name of the folders and test set’s. One tip if you are having problems is make the test set appear at the top, so call it automated tests for example. Also I have found using a space in the test set name and not in the folder name works.
Below is a sample build.xml file which demonstrates a call to TDTestSetRun and fails if a file exists.
<project name=”Example” default=”runtest” basedir=”.”>
simple example build file for calling QTP or Winrunner tests in Quality Center
<!– set global properties for this build –>
<property name=”TDRunTestDir” location=”C:\TDTestSetRun”/>