Невозможно загрузить более одного тестового примера в HP ALM - PullRequest
0 голосов
/ 30 мая 2019

Моя проблема в том, что текущий код загружает только один тестовый пример, и я не могу добавить более одного, поскольку число шагов теста является динамическим (см. Прикрепленное изображение), поэтому я не знаю, в какой строке каждого тестаcase закончится, чтобы добавить это в код, чтобы автоматизировать весь процесс, если бы я сказал, например, 10 тестовых примеров для загрузки.

Буду признателен за помощь в разработке способа созданияцикл, который может интегрировать все и позволить пользователю загружать столько тестовых примеров, сколько необходимо.

Cheers.

Мне удалось загрузить один тестовый набор со всеми шагами и ожидаемыми результатами.

Sub upload_test_cases()

Dim wd, CConnection, sProject, sTestPlanPath, TestFolderPath, strNodeByPath

'qcURL = InputBox("Please enter ALM URL", "", "http://url:8080/qcbin")
qcURL = "http://url:8080/qcbin/"
If qcURL = "" Then
  MsgBox ("ALM URL cannot be blank")
  Exit Sub
End If

'sDomain = InputBox("Please enter your Domain" & vbNewLine & "Eg:CORE_SYSTEMS", "", "CORE_SYSTEMS")
sDomain = ""
If sDomain = "" Then
  MsgBox ("DomainName cannot be blank")
  Exit Sub
End If

'sProject = InputBox("Please enter your ProjectName" & vbNewLine & "Eg:RADC;GCM(As per ALM Project)", "", "GCM")
sProject = ""
If sProject = "" Then
  MsgBox ("ProjectName cannot be blank")
  Exit Sub
End If

sUser = InputBox("Please enter your Username" & vbNewLine & "Eg:MSID", "", "")
'sUser = ""
If sUser = "" Then
  MsgBox ("UserName cannot be blank")
  Exit Sub
End If

sPass = InputBox("Please enter your Password", "", "")
'sPass = ""

'sFolderpath = InputBox("Please enter your ALM Folderpath" & vbNewLine & "<Subject\FolderStructure>", "")
'sFolderpath = "Subject\Folder_Name"

'If sFolderpath = "" Then
 ' MsgBox ("FolderPath cannot be blank")
  'Exit Sub
'End If

Set QCConnection = CreateObject("TDApiOle80.TDConnection")

QCConnection.InitConnectionEx qcURL
QCConnection.ConnectProjectEx sDomain, sProject, sUser, sPass


Set tsf = QCConnection.TestFactory
Set trmgr = QCConnection.TreeManager
Set subjectfldr = trmgr.NodebyPath("Subject")
Worksheets("Sheet1").Select
' read the main and sub folder names
Set folder = Worksheets("Sheet1").Cells(2, 1)
Set subfolder = Worksheets("Sheet1").Cells(2, 2)

On Error Resume Next
' create main folder
Set trfolder = subjectfldr.AddNode(Worksheets("Sheet1").Cells(2, 1))
trfolder.Post

Set subjectfldr = trmgr.NodebyPath("Subject\" & folder)
'create subfolder if specified
If Not subfolder = "" Then
Set trfolder = subjectfldr.AddNode(subfolder)
trfolder.Post
End If

'reset error handling
On Error GoTo 0

If subfolder = "" Then
Set trfolder = trmgr.NodebyPath("Subject\" & folder)
Else
Set trfolder = trmgr.NodebyPath("Subject\" & folder & "\" & subfolder)
End If


' now create a test case
Set sampleTest = trfolder.TestFactory.AddItem(Null)
' set mandatory values
sampleTest.Field("TS_NAME") = Worksheets("Sheet1").Cells(2, 3) ' Test Case Name
sampleTest.Field("TS_DESCRIPTION") = Worksheets("Sheet1").Cells(2, 4) ' Project
sampleTest.Field("TS_RESPONSIBLE") = Worksheets("Sheet1").Cells(2, 8) ' Designer[![enter image description here][1]][1]


sampleTest.Post
' create test steps
Set dsf = sampleTest.DesignStepFactory
Set stepList = dsf.Newlist("[empty]")

Dim RowCount As Integer

' loop through all the steps
LastRow = Range("F2", Range("F2").End(xlDown)).Rows.Count
For i = 2 To (LastRow + 1)
Set dstep = dsf.AddItem(Null)
dstep.StepName = Worksheets("Sheet1").Cells(i, 5) ' Step Name
dstep.StepDescription = Worksheets("Sheet1").Cells(i, 6) ' Step Description
dstep.StepExpectedResult = Worksheets("Sheet1").Cells(i, 7) ' Step Expected Results
'stepList.Add (dstep)
'sampleTest.Post
dstep.Post
Next i


Set DesignStepFactory = Nothing
Set TestFactory = Nothing
Set TreeManager = Nothing

'Disconnect from QC
QCConnection.Disconnect

'Logout the QC Session
QCConnection.Logout
QCConnection.ReleaseConnection

End Sub

Пользователь должен иметь возможность загружать столько тестовых примеров, сколько необходимо для данных, добавленных в Лист 1 таблицы Excel.

Я знаю, что для этого действия существует надстройка Excel, нозапустить макрос и настроить все самостоятельно гораздо проще и удобнее, поэтому я пытаюсь придумать этот конкретный макрос.

enter image description here

...