2016-11-09 4 views
3

J'essaie d'exécuter les cas de test dans QC ALM via une macro Excel. Je suis en mesure d'accéder aux tests dans la liste de test, mais je ne suis pas en mesure de trouver le cas de test particulier que j'ai besoin d'exécuter par son ID.Exécution des cas de test dans alm à partir d'Excel par l'ID de test

est Ci-dessous l'exemple de code J'utilise:

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 

Toute aide pour obtenir TestCase Testset de testlab pour exécuter serait une grande aide.

Répondre

2

Je pense que vous recherchez la propriété TestId de l'objet TSTest. Donc, dans votre boucle, vous pouvez simplement vérifier si testid correspond à la valeur à partir d'Excel:

If tsTest.TestId = testidfromexcel Then 
    ' do something 
End If 

Ou vous pouvez utiliser un filtre pour obtenir uniquement les instances TSTest de votre jeu de test correspondant à l'ID de test respectif à partir d'Excel:

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

Maintenant votre tsTestList ne doit contenir que des instances de test du test avec l'ID d'Excel.

+0

2ème est le bloc que je cherche. Capable d'obtenir l'instance. Merci pour l'aide @Ronald :) –