通过测试 ID 从 Excel 执行 alm 中的测试用例

Executing the test cases in alm from Excel by Test ID

我正在尝试通过 Excel 宏在 QC ALM 中执行测试用例。我可以访问测试列表中的测试,但无法通过 ID 找到我需要执行的特定测试用例。

下面是我使用的示例代码:

Set tsTreeMgr = tdConnection.testsettreemanager
Set tsFolder = tsTreeMgr.NodeByPath(nPath)
' --Search for the test set passed as an argument to the example code
Set tsList = tsFolder.FindTestSets("Test Set Name")

'------Accessing the Test Cases inside the Test SEt ----

Set theTestSet = tsList.Item(1)
For Each testsetfound In tsList
    Set tsFolder = testsetfound.TestSetFolder
    Set tsTestFactory = testsetfound.tsTestFactory
    Set tsTestList = tsTestFactory.NewList("")

    For Each tsTest In tsTestList
        MsgBox (tsTest.Name+","+ tsTest.ID)
        testrunname = "Test Case name from excel sheet"
        '----Accesssing the Run Factory ---
        Set RunFactory = tsTest.RunFactory
        Set obj_theRun = RunFactory.AddItem(CStr(testrunname))
        obj_theRun.Status = "Passed"
        obj_theRun.Post
    Next
Next

任何有助于让测试实验室的测试集中的 TestCase 执行的帮助都将大有帮助。

我认为您正在寻找 TSTest 对象的 TestId 属性。因此,在您的循环中,您可以只测试 TestId 是否与 Excel:

中的值匹配
If tsTest.TestId = testidfromexcel Then
    ' do something
End If

或者您可以使用过滤器仅从您的测试集中获取与来自 Excel 的相应测试 ID 相匹配的 TSTest 实例:

Set testSetFilter = tsTestFactory.Filter
testSetFilter.Filter("TC_TEST_ID") = testidfromexcel
Set tsTestList = testSetFilter.NewList()

现在您的 tsTestList 应该只包含 ID 来自 Excel 的测试的测试实例。