Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用转换为Jar的OTAClient.dll在QC中创建测试集_Java_Hp Quality Center_Com4j - Fatal编程技术网

Java 使用转换为Jar的OTAClient.dll在QC中创建测试集

Java 使用转换为Jar的OTAClient.dll在QC中创建测试集,java,hp-quality-center,com4j,Java,Hp Quality Center,Com4j,我正在尝试将我的应用程序与QC链接,并通过它创建动态测试集。 我能够使用OTAClient.dll检索一些QC数据。使用com4j转换为java接口。现在我需要在QC测试实验室中创建一个新的测试集[将首先尝试现有测试] ITDConnection QCConnection = ClassFactory.createTDConnection(); QCConnection.initConnection("http://server/qcbin", "division", "");

我正在尝试将我的应用程序与QC链接,并通过它创建动态测试集。 我能够使用OTAClient.dll检索一些QC数据。使用com4j转换为java接口。现在我需要在QC测试实验室中创建一个新的测试集[将首先尝试现有测试]

ITDConnection QCConnection = ClassFactory.createTDConnection();
    QCConnection.initConnection("http://server/qcbin", "division", "");
    System.out.println("Is connected: "+QCConnection.connected());
    QCConnection.connectProject("domain", "username", "password");
    System.out.println("Database entered: "+QCConnection.dbName());
    QCConnection.bugFactory().queryInterface(ITestFactory.class);
    ITestSetFactory sTestSetFactory = (QCConnection.testSetFactory()).queryInterface(ITestSetFactory.class);
    ITestSet sTestSet = (sTestSetFactory.item(14002)).queryInterface(ITestSet.class);
    System.out.println("Test details by id: "+sTestSet.checkTestInstances("testid"));
上面的代码用于获取测试详细信息。有人能帮助创建测试集吗?
谢谢

您可以做类似的事情:

            ITestSetTreeManager treeManager = connection.testSetTreeManager().queryInterface(ITestSetTreeManager.class);
            ITestSetFolder testSetFolder = treeManager.nodeByPath("Path/where/test/set/should/be/placed").queryInterface(ITestSetFolder.class);
            ITestSetFactory factory = testSetFolder.testSetFactory().queryInterface(ITestSetFactory.class);
            ITestSet testSet = factory.addItem(new Variant(Variant.Type.VT_NULL)).queryInterface(ITestSet.class);
            testSet.name("testSetName");
            testSet.status("Open");
            testSet.post();
            testSet.unLockObject();

您可以执行类似的操作:

            ITestSetTreeManager treeManager = connection.testSetTreeManager().queryInterface(ITestSetTreeManager.class);
            ITestSetFolder testSetFolder = treeManager.nodeByPath("Path/where/test/set/should/be/placed").queryInterface(ITestSetFolder.class);
            ITestSetFactory factory = testSetFolder.testSetFactory().queryInterface(ITestSetFactory.class);
            ITestSet testSet = factory.addItem(new Variant(Variant.Type.VT_NULL)).queryInterface(ITestSet.class);
            testSet.name("testSetName");
            testSet.status("Open");
            testSet.post();
            testSet.unLockObject();

谢谢你,普洛波。现在,我们使用根目录的索引,然后创建了一个测试文件夹。 下面是代码和一些额外的改进: 还包括添加发布目标,这是我们在过程中遇到的错误之一

ITDConnection QCConnection = ClassFactory.createTDConnection();
QCConnection.initConnection("http://nceqcwebp1/qcbin", "E_TRAVEL", "");
QCConnection.connectProject("ETVNRE", "vigupta", "Amadeus!!");
ITestSetTreeManager treeManager = QCConnection.testSetTreeManager().queryInterface(ITestSetTreeManager.class);
ITestSetFolder baseFolder = treeManager.root().queryInterface(ITestSetFolder.class);
baseFolder.addNode("Automatic Test Creation");
ITestSetFolder testSetFolder = treeManager.nodeById(baseFolder.findChildNode("Automatic Test Creation").nodeID()).queryInterface(ITestSetFolder.class);

ITestSetFactory factory = testSetFolder.testSetFactory().queryInterface(ITestSetFactory.class);
ITestSet testSet = factory.addItem(new Variant(Variant.Type.VT_NULL)).queryInterface(ITestSet.class);
testSet.name("Automatic Test Set");
testSet.status("Open");

testSet.field("CY_USER_04", "no schema used");
testSet.field("CY_USER_07", "Non-regression");
testSet.post();
testSet.unLockObject();

谢谢你,普洛波。现在,我们使用根目录的索引,然后创建了一个测试文件夹。 下面是代码和一些额外的改进: 还包括添加发布目标,这是我们在过程中遇到的错误之一

ITDConnection QCConnection = ClassFactory.createTDConnection();
QCConnection.initConnection("http://nceqcwebp1/qcbin", "E_TRAVEL", "");
QCConnection.connectProject("ETVNRE", "vigupta", "Amadeus!!");
ITestSetTreeManager treeManager = QCConnection.testSetTreeManager().queryInterface(ITestSetTreeManager.class);
ITestSetFolder baseFolder = treeManager.root().queryInterface(ITestSetFolder.class);
baseFolder.addNode("Automatic Test Creation");
ITestSetFolder testSetFolder = treeManager.nodeById(baseFolder.findChildNode("Automatic Test Creation").nodeID()).queryInterface(ITestSetFolder.class);

ITestSetFactory factory = testSetFolder.testSetFactory().queryInterface(ITestSetFactory.class);
ITestSet testSet = factory.addItem(new Variant(Variant.Type.VT_NULL)).queryInterface(ITestSet.class);
testSet.name("Automatic Test Set");
testSet.status("Open");

testSet.field("CY_USER_04", "no schema used");
testSet.field("CY_USER_07", "Non-regression");
testSet.post();
testSet.unLockObject();

谢谢你的帮助。但是代码无法通过路径获取节点。对我来说,路径是:根/。/。。然后测试集就来了。是否存在从QC获取文件夹id的方法,或者我们是否可以以分层方式获取测试集?可能您指向了错误的路径?如果您想获得精确的格式,您可以右键单击路径并使用“Report Selected”。+如果您想获得文件夹Id,您可以用测试集复制整个目录并将其粘贴到记事本:)最后一个参数点文件夹Id。感谢您的帮助。但是代码无法通过路径获取节点。对我来说,路径是:根/。/。。然后测试集就来了。是否存在从QC获取文件夹id的方法,或者我们是否可以以分层方式获取测试集?可能您指向了错误的路径?若你们想得到精确的格式,你们可以右键点击路径并使用“ReportSelected”。+若你们想得到文件夹Id,你们可以用测试集复制整个目录并粘贴到记事本:)最后一个参数点文件夹Id。