当前位置: 首页 > 知识库问答 >
问题:

使用Java和COM4J的质量中心V11脚本统计

扶珂
2023-03-14

我试图访问ALM V11(QC)测试脚本详细信息,如通过/不运行特定项目使用Java但我得到空。有人能帮我吗?

我得到的错误是:

java.lang.NullPointerException
at com.testpack.HPTest2.main(HPTest2.java:53)

我用来连接的代码

        ITDConnection itd=ClassFactory.createTDConnection();
        System.out.println("Test1.1:"+ itd.connected());
        itd.initConnectionEx(url);
        System.out.println("Test1:"+ itd.connected());
        itd.connectProjectEx(domain,project,username,password);


        ITestFactory testFactory;
        //ITSTest2 testFactory;
        ITDFilter2 filterF;
        IList executinList;

        testFactory=(itd.testFactory()).queryInterface(ITestFactory.class);
        //testFactory=(ITestFactory)itd.testFactory().queryInterface(ITestFactory.class);
        filterF=testFactory.fields().queryInterface(ITDFilter2.class);
        String query="\"Passed\"";
        filterF.filter("TC_STATUS",query);
        executinList=filterF.newList();

我试着比较我的VBScript

Set tdc = CreateObject("tdapiole80.tdconnection")
tdc.InitConnection serverName, domainName
tdc.ConnectProject projectName, projUserName, projPassword

'Get the test factory filter
Set TestSetFact = tdc.TSTestFactory
'TestSetFact.AddItem()
Set TestSetFilter = TestSetFact.Filter
stemp = ApplicationName
appsplit = Split(ApplicationName, "or")

irowtemp = 18
'----------------------------------------------------

'--------------------------------
For iLoop = 0 To UBound(appsplit)
    TestSetFilter.Filter("TS_USER_06") = appsplit(iLoop)

    If initiativeName <> "" Then
        TestSetFilter.Filter("TS_USER_04") = initiativeName
    End If
    TestSetFilter.Filter("TC_STATUS") = "Passed"


    Sheet1.Cells(irowtemp, 2).Value = Trim(appsplit(iLoop))

共有1个答案

堵雅健
2023-03-14

Com4jObject。如果包装的COM对象不是该类型,则queryInterface()方法返回null。

可能只是自动完成,弄乱了你的代码,但你应该使用

filterF=testFactory.filter().queryInterface(ITDFilter2.class);

获取筛选器,而不是字段()。

 类似资料:
  • 我正在尝试使用Java代码和com4j连接到HP Quality Center V11,但不断出现以下错误。谁能看看这个错误吗? 当我在浏览器中使用URL并使用相同的凭据登录时,我就可以登录了。我仔细检查了我的域名、url、Id和密码的拼写。。 我得到的错误是: 我用来连接的代码

  • 我已经能够使用com4j连接到HP QC项目。但现在我希望能够使用过滤器访问缺陷。我不知道所有字段的实际字段名,因为我没有QC的管理员权限,所以我无法进入“自定义”选项卡。 我想知道,如何检索缺陷记录并使用字段名输出该记录的列。稍后我想把这些记录保存在excel文件中!但这是以后的事了。请帮我查一下密码! 我的进展: 提前谢谢!

  • 全部的 我正在使用com4j操作质量中心,可以成功创建测试计划和实验室、嵌套文件夹以及两者中的实际项目。 我现在正在尝试将设计步骤添加到测试中,例如: 这一切都很好,然后我试着做: 但是iStep总是以null结束。没有IDesignStepFactory接口,因此我试图在queryInterface调用中使用基本工厂。 检查QC帮助文件和客户端。dll似乎表明没有IDesignStepFacto

  • 我试图连接到惠普qc版本10.00使用com4j库在eclipse上Win7 我遵循以下步骤: 使用tlbimp.jar为OTAClient.dll创建包装器 使用regsvr32注册OTAClient.dll 在程序中导入了OTAClient包装器。 导入com4j库。 使用了以下代码: 获取以下输出: 到底是什么出了问题?

  • 我有一个多个圆圈的图像,圆圈内有热点区域,具有高强度(高像素值)和冷点区域(低像素值)。我想用Python中的OpenCV计算每个圆的加权质心。我正在使用这段代码: 好的,这段代码只需获取二值图像,提取所有圆,并找到每个圆的轮廓。 问题是,我需要找到RGB/灰度图像(考虑像素强度)的加权质心,而不是二值图像。我该怎么做? 非常感谢。

  • 我想在我的shell脚本中使用mysql语法和变量,我用错了什么? 我正在尝试将其作为./test.sh运行