通过OTAClient - JAVA从测试计划中获取所有QC测试

时间:2014-04-28 14:28:43

标签: java qc hp-quality-center com4j

用于访问QC中测试计划中所有测试用例的接口是什么? 对于测试实验室中的测试集详细信息,我们有ITestSetFactory。但是,如何在Key-Value对中的某些集合对象中从QC获取所有测试详细信息?

现在,数据检索更为重要。使用在Java jar中转换的OTAClient.dll并使用com4j作为桥接器!

提前致谢!

2 个答案:

答案 0 :(得分:2)

对于测试计划结构(树和文件夹),有ITreeManagerITestFolder / ITestFolderFactory接口,测试中有ITestFactory接口。< / p>

使用TestFolder和TestFactory对象的NewList方法,您可以创建一个递归函数,它可以为您提供测试计划中的所有测试。

答案 1 :(得分:2)

ITDConnection QCConnection =null;
try{
  QCConnection = ClassFactory.createTDConnection();
  QCConnection.initConnection("QC URL", domain, domainPswd);
  IList domains = QCConnection.domainsList();
  IList projectList = QCConnection.projectsList();
  List<String> domainList = new ArrayList<String>();
  for(int i=1;i<domains.count();i++){
    domainList.add((String)domains.item(i));
    System.out.println("DOmains: "+domains.item(i));
  }
  for(int i=1;i<projectList.count();i++){
    System.out.println("Projects : "+projectList.item(i));
  }
  QCConnection.connectProject(project, "LoginName", "Password");
  ITreeManager iTreeManager = QCConnection.treeManager().queryInterface(ITreeManager.class);
  ISubjectNode iSubNode = iTreeManager.nodeByPath("Subject").queryInterface(ISubjectNode.class);

  IList testFolders = iSubNode.newList();
  for(Com4jObject isys:testFolders){
    System.out.println("Test folder : "+isys.queryInterface(ISysTreeNode.class).name());
  }
}
catch(Exception e){
  System.out.println("Exceptions occured: "+e.getMessage());
}

将显示项目中的所有文件夹!