2013-02-03 1 views
1

다음 코드를 작성하여 QC에서 테스트 케이스 목록을 가져 오지만 tsTestFactory이 null 인 반면 qcConnect.testSetFactory()을 평가하면 Com4j 객체를 반환합니다. 이 작업을 수행 할 수 있도록 내가 잘못 여기Com4j를 사용하는 QC의 테스트 케이스 목록 받기

ITestSetFactory tsFactory = (qcConnect.testSetFactory()).queryInterface(ITestSetFactory.class); 
ITestSetTreeManager tsTreeMgr = (qcConnect.testSetTreeManager()).queryInterface(ITestSetTreeManager.class); 

ITestSetFolder tsFolder = (tsTreeMgr.nodeByPath(nodePath)).queryInterface(ITestSetFolder.class); 
IList its1 = tsFolder.findTestSets(testSetName, false, ""); 

Iterator itr = its1.iterator(); 
while (itr.hasNext()) 
{ 
    Com4jObject comObj = (Com4jObject) itr.next(); 
    ITestSet sTestSet = comObj.queryInterface(ITestSet.class); 
    System.out.println(sTestSet.name()); 
    System.out.println(sTestSet.id()); 

    ITestFactory tsTestFactory = (qcConnect.testSetFactory()).queryInterface(ITestFactory.class); 
    ITSTest sTSTest = (tsTestFactory.item(sTestSet.id())).queryInterface(ITSTest.class); 

    System.out.println(sTSTest.name()); 
} 

답변

2

TestFactory가 TestSetFactory과 동일하지 않습니다 뭐하는 거지

:

ITestFactory tsTestFactory = (qcConnect.testSetFactory()). queryInterface (ITestFactory.class);

qcConnect.testSetFactory 대신 qcConnect.testFactory를 사용해보십시오.