如何使用HP QC OTA Java中的测试ID获取子文件夹名称

时间:2013-12-02 09:17:15

标签: java hp-quality-center com4j

实际上需要使用

下的测试ID获取SubFolder名称
  

测试计划>主题>样本(文件夹名称)>场景(子文件夹)>   TC1(Test-BPT)

我需要使用Scenario

检索TestID作为子文件夹名称

这是我的代码

ITestSetTreeManager tstm = tdc.testSetTreeManager().queryInterface(ITestSetTreeManager.class);   
ITestSetFolder tsf = tstm.nodeByPath("Root\\Lab").queryInterface(ITestSetFolder.class); 

    IList testSets = tsf.findTestSets("Regression", false, "");   

    for (Com4jObject testSetObj : testSets)   
    {   
        ITestSet testSet = testSetObj.queryInterface(ITestSet.class);   

        System.out.println(testSet.name());   
        IBaseFactory testFactory = testSet.tsTestFactory().queryInterface(IBaseFactory.class);   
        IList testInstances = testFactory.newList("");   
        for (Com4jObject testInstanceObj : testInstances)   
        {   
            ITSTest testInstance = testInstanceObj.queryInterface(ITSTest.class);   
            System.out.println(testInstance.testName());
            Object ID =  testInstance.testId();
            System.out.println(ID.toString());
         }
    }

使用ID对象我可以检索TestId,还需要检索子文件夹名称。

对于尝试使用TS_SUBJECT但是失败的

任何人都可以在获取子文件夹名称/ TS_SUBJECT字段值时分享您的观点。

1 个答案:

答案 0 :(得分:0)

最后使用java Com4jObject使用ISubjectNode检索当前Business Process Test的Folder(Sub文件夹)名称

ITestFactory iTestFactory = QCConnection.testFactory().queryInterface(ITestFactory.class);
Com4jObject comobjTest = iTestFactory.item(testInstance.testId());
ITest iTest = comobjTest.queryInterface(ITest.class);
Com4jObject SubjectField = (Com4jObject)iTest.field("TS_SUBJECT");
ISubjectNode SubFolder = SubjectField.queryInterface(ISubjectNode.class);
System.out.println(SubFolder.Name());