Выполнение тестовых примеров в alm из Excel по идентификатору теста
Я пытаюсь выполнить контрольные примеры в QC ALM через макрос Excel. Я могу получить доступ к тестам в списке тестов, но не могу найти конкретный тестовый пример, который мне нужно выполнить, по его идентификатору.
Ниже приведен пример кода, который я использую:
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 в testset of testlab будет очень полезна.
1 ответ
Я думаю, что вы ищете свойство TestId объекта TSTest. Таким образом, в вашем цикле вы можете просто проверить, соответствует ли TestId значению из Excel:
If tsTest.TestId = testidfromexcel Then
' do something
End If
Или вы можете использовать фильтр, чтобы получить только экземпляры TSTest из вашего набора тестов, которые соответствуют соответствующему идентификатору теста из Excel:
Set testSetFilter = tsTestFactory.Filter
testSetFilter.Filter("TC_TEST_ID") = testidfromexcel
Set tsTestList = testSetFilter.NewList()
Теперь ваш tsTestList должен содержать только тестовые экземпляры теста с идентификатором из Excel.