现在我们正在从Jira服务器迁移到Jira云。我们用Zephyr做测试用例。现在我们已经有1843年了,他们必须像其他的票一样迁移到吉拉云。我们不需要迁移所有测试周期和所有测试执行历史,我们只需要测试用例就可以在未来的测试周期中使用它。
本文包含了对相同问题https://support.getzephyr.com/hc/en-us/community/posts/205799785-How-to-migrate-from-JIRA-Server-to-JIRA-Cloud的答案
但是实用程序不适合我,按下“开始导入”按钮后什么都不会发生。如何使用Zephyr中的测试步骤将测试用例从服务器Jira迁移到云?
发布于 2019-03-11 09:12:21
最后,我找到了如何通过本文中提到的工具自动导入所有1843个测试用例的解决方案。

下面我将展示我是如何处理它的。
Public Const lastTableRow = 3872
Function ConvertSteps()
Dim callerRow As Long
Dim isValueInStepId As Boolean
Dim isNoValueInNextStepId As Boolean
Dim result As String
Dim baseColumnLetter As String
Dim stepIdColumnLetter As String
callerRow = Application.Caller.row
baseColumnLetter = "S"
stepIdColumnLetter = "Q"
Debug.Print "processed row is: " & callerRow
isValueInStepId = (Range(stepIdColumnLetter & callerRow).Value <> "")
isNoValueInNextStepId = (Range(stepIdColumnLetter & (callerRow + 1)).Value = "")
If isValueInStepId And isNoValueInNextStepId Then
Dim i As Integer
i = 1
result = Range(baseColumnLetter & callerRow).Value
Do While Range(stepIdColumnLetter & (callerRow + i)).Value = "" And (callerRow + i) <= lastTableRow
result = result & " " & Range(baseColumnLetter & (callerRow + i)).Value
i = i + 1
Loop
ConvertSteps = result
Else
If Range(baseColumnLetter & (callerRow)).Value = "" Then
ConvertSteps = ""
Else
ConvertSteps = Range(baseColumnLetter & (callerRow)).Value
End If
End If
End Function
Function ConvertTestData()
Dim callerRow As Long
Dim isValueInStepId As Boolean
Dim isNoValueInNextStepId As Boolean
Dim result As String
Dim baseColumnLetter As String
Dim stepIdColumnLetter As String
callerRow = Application.Caller.row
baseColumnLetter = "T"
stepIdColumnLetter = "Q"
Debug.Print "processed row is: " & callerRow
isValueInStepId = (Range(stepIdColumnLetter & callerRow).Value <> "")
isNoValueInNextStepId = (Range(stepIdColumnLetter & (callerRow + 1)).Value = "")
If isValueInStepId And isNoValueInNextStepId Then
Dim i As Integer
i = 1
result = Range(baseColumnLetter & callerRow).Value
Do While Range(stepIdColumnLetter & (callerRow + i)).Value = "" And (callerRow + i) <= lastTableRow
result = result & " " & Range(baseColumnLetter & (callerRow + i)).Value
i = i + 1
Loop
ConvertTestData = result
Else
If Range(baseColumnLetter & (callerRow)).Value = "" Then
ConvertTestData = ""
Else
ConvertTestData = Range(baseColumnLetter & (callerRow)).Value
End If
End If
End Function
Function ConvertResult()
Dim callerRow As Long
Dim isValueInStepId As Boolean
Dim isNoValueInNextStepId As Boolean
Dim result As String
Dim baseColumnLetter As String
Dim stepIdColumnLetter As String
callerRow = Application.Caller.row
baseColumnLetter = "U"
stepIdColumnLetter = "Q"
Debug.Print "processed row is: " & callerRow
isValueInStepId = (Range(stepIdColumnLetter & callerRow).Value <> "")
isNoValueInNextStepId = (Range(stepIdColumnLetter & (callerRow + 1)).Value = "")
If isValueInStepId And isNoValueInNextStepId Then
Dim i As Integer
i = 1
result = Range(baseColumnLetter & callerRow).Value
Do While Range(stepIdColumnLetter & (callerRow + i)).Value = "" And (callerRow + i) <= lastTableRow
result = result & " " & Range(baseColumnLetter & (callerRow + i)).Value
i = i + 1
Loop
ConvertResult = result
Else
If Range(baseColumnLetter & (callerRow)).Value = "" Then
ConvertResult = ""
Else
ConvertResult = Range(baseColumnLetter & (callerRow)).Value
End If
End If
End Function
Public Sub DeleteBlankRows()
Dim SourceRange As Range
Dim EntireRow As Range
Set SourceRange = Range("Q1", "Q" & lastTableRow)
If Not (SourceRange Is Nothing) Then
Application.ScreenUpdating = False
For i = SourceRange.Rows.Count To 1 Step -1
Set EntireRow = SourceRange.Cells(i, 1).EntireRow
Debug.Print SourceRange.Cells(i, 1).Value
If SourceRange.Cells(i, 1).Value = 0 Then
EntireRow.Delete
End If
Next
Application.ScreenUpdating = True
End If
End Sub

所以,这个解决方案帮助我导入了1800+测试用例。我已经导出了他们的部分,500,对我来说,它大约需要3个小时来导入所有的测试用例。
https://stackoverflow.com/questions/55098465
复制相似问题