Take the 2-minute tour ×
Software Quality Assurance & Testing Stack Exchange is a question and answer site for software quality control experts, automation engineers, and software testers. It's 100% free, no registration required.

We're planning to automate test synchronization between HP ALM QC and our TestNG test cases. We want to keep them synced in the following scenarios:

  • Test adding: When creating TestNG test, a test should be created in HP QC
  • Test execution: When executing TestNG test, a test instance with status should be created in HP QC
  • Refactoring: Name and directory of TestNG test should correspond to name and directory of test in HP QC. So when refactoring a Java class test (i.e., renaming class or moving between packages),

So we were thinking about different approaches, each having some tradeoff

  • Approach #1: Each time a dev creates a new test, calls maven plugin to add a test to HP QC and then add @QCTestId annotation with testId to the test class source code. Then it commits the class. Each time a dev updates a test name/package, it runs the plugin again to update test name/package in ALM.

  • Approach #2: Similar as 1st approach, but the plugin does not update the test class source code, but adds this information to some external file/DB. When a test name/package is changed, the test with the old name is removed by the plugin from HP QC, and added with a new name to HP QC.

Approach #1 looks a bit smelly to me, because maven plugin is manipulating existing source code. While approach #2 has a limitation that by deleting old test, we’re loosing also history of test execution from HP QC.

Any other idea?

share|improve this question
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.