如何解決 Test Case 用 Excel 匯入後 測試案例 Test Case 的測試步驟都擠在一起

如何解決 Test Case 用 Excel 匯入後 測試案例 Test Case 的測試步驟都擠在一起

問題

 

環境 TFS 2012 和 Test Pro 進行 測試案例管理

有些時候在管理上會需要額外開立了一個新的 Team Project 來區分權限管理專案,而又希望可以將即有的 Test Case 直接拿來延用。

通常建議在 Test Pro 中直接將 Test Suit 複製到指定的專案會比較省事,然後再用 Excel 的方式修改 反覆項目或是其他欄位。

但若直接使用 Excel 的方式進行批次 Test Case 資料修改的話,原本有多個測試步驟都會擠在同一個步驟,而且還會出現 HTML Tag 這種多餘的字串。

image

 

 

還原原本的測試步驟

 

由於 TFS 會將所有欄位的修改都有「歷史」記錄下來,所以利用這個特性將原本新增錯誤的欄位統一改回來。

請到 TFS 的 Server 上並且用 SQL Management Studio 連線到 TFS 的 SQL 上 ( 請記得用 當初的安裝帳號 )

以下語法中有出現 FldID 是指 TFS 的測試步驟的欄位編號為 10031 ,所以絕對不要換別的號碼。

 

請到 Tfs_DefaultCollection 的資料上執行以下的語法

 

select * from dbo.WorkItemLongTexts

     where ID = ( select ID from dbo.WorkItemsAre where [Work Item Type] = 'Test Case' and State = '就緒')

              and FldID = 10031

 

clip_image002[4]

應該可以查出當天我和 Harry 修改到步驟的清單,上面的是正確,下面的是錯誤的。

ID 是指  Test Case 的編號

 

select * from dbo.WorkItemLongTexts

     where ID = ( select ID from dbo.WorkItemsAre where [Work Item Type] = 'Test Case' and State = '就緒')

              and FldID = 10031

              and SUBSTRING(Words , 1 , 5) = '<DIV>'

 

再執行這個語法應該能抓出當天 3500 筆所有被改過的清單。

 

務必確定沒有問題後,才可以執行以下的語法將這多餘的資料給刪除

 

delete from  dbo.WorkItemLongTexts

     where ID = ( select ID from dbo.WorkItemsAre where [Work Item Type] = 'Test Case' and State = 'Ready')

              and FldID = 10031

              and SUBSTRING(Words , 1 , 5) = '<DIV>'

 

clip_image004[4]

重新整理後就可以看到步驟的項目會回來 J

 

 

ps.. 以上所有的動作因為是修改到 資料庫,所以請自行嚴格要求,若是很擔心自已發生誤操作的話請自行備份。