Tesults - 快速指南
Tesults - 概述
軟體開發團隊必須瞭解從測試中發現的故障。他們需要了解運行了哪些測試用例以及故障的原因,以及是否發生了任何迴歸或質量下降。
自動化和手動測試的測試報告以及測試用例的管理是開發和測試工具堆疊的重要組成部分。理想情況下,所有測試執行都應該可以輕鬆訪問測試用例和測試結果。
Tesults 是一款基於 Web 的測試結果和測試用例管理應用程式。本教程的目的是演示如何設定您的測試以使用 Tesults 報告結果,並解釋如何使用可用的分析和報告功能。
Tesults 的功能
Tesults 的主要功能如下:
- 測試結果報告
- 測試用例管理
- 將來自並行測試作業的測試結果合併到單個執行中
- 合併來自整個應用程式或專案的測試結果
- 透過電子郵件和其他服務(如 Slack)通知結果。
- 儲存測試生成的資料,例如日誌和螢幕截圖。
- 將測試用例分配給團隊成員
- 錯誤連結
- 不穩定測試指示器
- 測試用例註釋
- 測試協作
- 效能資料圖表
免費和付費定價
Tesults 是一項商業服務,團隊可以訂閱付費計劃。它提供免費專案計劃供評估使用。免費專案沒有時間限制,可以無限期使用。
但是,與付費專案相比,免費專案在許多方面受到限制,最值得注意的是只提供了一個目標(目標在下一節中解釋),並且每個測試執行的測試用例數量限制為 100 個。
對於一些開源專案、個人和教育工作者以及剛剛起步的小團隊,Tesults 在其定價頁面上提到,如果透過電子郵件請求,可以提供折扣甚至免費產品,因此即使對於沒有預算的團隊,也可以使用 Tesults。
Tesults - 註冊和專案建立
本章涉及諸如如何註冊、如何建立專案以及 Tesults 中的目標到底是什麼等主題。
註冊
首先要做的是註冊。訪問www.tesults.com,然後點選標題中的“註冊”。
要註冊,您必須輸入您的電子郵件地址、建立密碼並輸入您的姓名。
建立專案
註冊後,您將自動登入並可以建立專案。點選標題中的“配置”,然後點選“建立新專案”。您需要輸入專案的名稱。
接下來,您必須選擇您的計劃。在本教程中,我們將建立一個免費專案。
專案建立後,將顯示一個“令牌”。此令牌需要用於將測試結果提交到 Tesults,應將其複製。隨時可以透過配置選單重新建立這些令牌。
此時專案已建立。接下來要做的就是整合自動化測試以將結果資料推送到 Tesults。
目標
Tesults 使用術語“目標”來指代測試結果資料的來源,例如特定的測試作業。建議將每個目標視為一個上傳測試結果的儲存桶。通常,軟體開發團隊不會只執行一次測試執行。他們可能會在不同的環境中、不同的裝置上、不同的分支中以及針對應用程式的不同模組執行測試。
例如,如果存在後端和前端,則可能存在用於後端的 API 測試和用於前端的 UI 自動化測試。如果這些測試集在開發環境和暫存環境中執行,則有四個測試作業:
- 後端開發
- 前端開發
- 後端暫存
- 前端暫存
Tesults 會將每個作業視為一個“目標”。此目標概念的原因在於使每次測試執行都可與上次執行進行比較,並作為組織來自各種來源的結果資料的一種方式。
Tesults - 整合您的自動化測試
Tesults 提供了可用於整合的各種語言庫,包括:
- Python
- Node.js / JS
- Java
- C#
- Ruby
- Go
還提供了一個 REST API。要上傳測試生成的資料和檔案,必須使用其中一個庫。
無程式碼整合
對於某些測試框架,可以使用可用的特定於測試框架的庫進行無程式碼整合。
無需程式碼即可整合的測試框架包括:
- pytest
- Robot
- Jest
- Mocha
- JUnit5
- NUnit 3
所有這些庫的整合過程都類似。
安裝外掛
在您的測試專案中,安裝相關的 Tesults 外掛。例如,如果您使用的是 pytest,則可以使用“pip install tesults”,然後使用“pip install pytest-tesults”來完成此操作。如果您使用的是 Mocha,則使用“npm install mocha-tesults-reporter – save”。請參閱 Tesults 網站上您測試框架的相應命令。
配置外掛
某些外掛不需要配置即可立即使用,某些外掛需要少量配置。例如,在 pytest 的情況下,不需要額外的配置,它已準備就緒。
在 Mocha 的情況下,需要對“mocha”呼叫進行少量更改,具體來說,需要指定報告程式“mocha --reporter mocha-tesults-reporter”。請參閱 Tesults 網站以瞭解您正在使用的框架的具體配置,但總的來說,配置是一行更改或無更改。
傳遞引數
需要傳遞一個引數到外掛以及其他可選引數。必需的引數是提供 Tesults 目標令牌。此令牌是在上一個教程頁面中為預設目標建立專案時生成的。如果您沒有此令牌,可以從 Tesults 的配置選單中獲取新令牌。在配置選單中點選“重新生成目標令牌”。
如何傳遞引數取決於您的測試框架和外掛。例如,在 pytest 中,它可以在 pytest 呼叫“pytest --tesults-target token_value”中提供,或者透過使用配置檔案提供。對於 Mocha,它類似,可以在 mocha 呼叫“mocha * --reporter mocha-tesults-reporter -- tesults-target=token”中傳遞,或者可以在配置檔案中傳遞。
目標令牌是唯一必需的引數,還有用於傳遞構建資訊和檔案上傳的可選引數。請參閱 Tesults 網站以獲取有關您測試框架引數的具體資訊。
執行測試
執行您的測試,結果現在將提交到 Tesults。
程式碼整合
如果您使用的是自定義測試框架或 Tesults 沒有特定庫或外掛的測試框架,則需要使用其中一個語言框架。
在這裡,我們將瞭解 Python 整合中涉及的內容。其他語言的整合過程非常相似,請參閱 Tesults 網站以獲取您的程式語言的具體詳細資訊,但首先請遵循本教程以瞭解該過程:
安裝庫
對於 Python,以下是命令:
pip install tesults
對於其他語言,過程類似,對於 JS 測試框架,您從 npm 安裝庫,對於 Java,您可以使用 Gradle 或 Maven,對於 C#,包託管在 NuGet 上,而 Ruby 則將其作為 gem 提供。
配置庫
對於 Python,配置僅涉及在您要使用庫的任何模組中使用require ‘tesults’。同樣,其他語言也需要類似的配置。請參閱 Tesults 網站以獲取您程式語言的具體配置。
對映測試資料
此步驟是無程式碼外掛允許您避免的操作。對於基於程式碼的整合,您必須將您的測試資料對映到 Tesults 測試資料。
對於 Python,這意味著將每個測試用例結果轉換為 Python 字典:
{
'name': 'Tutorial 1',
'desc':'Tutorial 1 .',
'suite': 'Tutorials Point',
'result': 'fail',
'reason': 'Assert fail in line 102, tutorialspoint.py',
'files': ['full-path/log.txt', 'full-path/screencapture.png'],
'_CustomField': 'Custom field value'
}
名稱和結果是必需的。其他所有內容都是可選的。結果必須是“pass”、“fail”或“unknown”之一。
套件很有用,因為它有助於在檢視結果時對測試用例進行分組,並有助於避免名稱衝突。應為失敗的測試用例提供原因。
檔案對於確保日誌和其他測試檔案已儲存並在其所屬的測試用例旁邊檢視很有用。
您還可以擁有任意數量的自定義欄位;它們必須以下劃線 (_) 字元開頭。對於每個測試用例,都以這種方式構建字典,並將其儲存在陣列中。
上傳結果
要上傳結果,每個庫都提供一個結果上傳函式。在 Python 的情況下,您需要呼叫以下內容:
tesults.results(data)
其中資料引數如下:
data = {
‘target’: ‘token’,
‘results’: {
‘cases’: [<your test cases>]
}
}
cases 陣列是上面一節中建立的陣列。
對於其他程式語言,流程完全相同,只需更改語法。
幫助
如果您需要幫助進行整合,Tesults 網站提供了一種請求幫助的方式。
後續步驟
至此,整合已完成,我們可以瞭解如何檢視、分析和根據測試結果採取行動。
Tesults - 檢視測試結果
Tesults 提供了三種檢視整體測試結果的檢視和一個詳細的測試用例檢視。
結果檢視
結果檢視是檢視測試執行測試結果的主要方式。所有測試執行的測試用例都會顯示,並按測試套件分組。
如果您有數百或數千個測試結果,可以使用側面的測試套件摺疊和展開按鈕,以便於導航。
有可用的控制元件可用於更改檢視。您可以使用它們來 -
更改檢視型別 - 結果、摘要、補充
更改專案 - 如果您有多個專案
更改目標 - 如果您有多個目標
更改測試執行 - 您可以選擇舊的測試執行
搜尋 - 如果您有數百或數千個測試用例,用於搜尋特定測試用例時很有用
按排序 - 您可以選擇按套件、結果(透過/失敗)和測試名稱對結果進行排序
重新整理結果 - 您可以單擊重新整理圖示手動重新整理,也可以啟用自動重新整理,這將頻繁重新整理檢視
結果檢視列出了透過總數、失敗總數、測試用例總數以及按測試套件劃分的測試用例數。
補充檢視
補充檢視最適合快速找出哪些測試用例是新的失敗、舊的或持續的失敗以及新的透過。補充檢視無需在結果檢視中進行查詢,而是透過自動將最新結果與之前的測試執行進行比較,使此資訊易於獲取。
摘要檢視
如果您有多個目標(測試作業),則摘要檢視很有用。您可以在此一個檢視中檢視整個專案的最新結果,以瞭解是否存在需要關注的特定區域。
測試用例詳細資訊
在結果檢視中,您可以單擊任何測試用例以檢視有關它的詳細資訊。將出現一個測試用例特定檢視,其中包含以下欄位 -
名稱
描述
結果
套件 - 這是測試用例所屬的測試套件
失敗原因 - 如果測試用例失敗
檔案 - 可以在此處檢視檔案。日誌、螢幕截圖和一些 csv 檔案可以在視窗內聯檢視,其他檔案可以下載
連結 - 此測試用例的直接連結
關聯的錯誤 - 與測試用例連結的 JIRA 或其他錯誤管理系統中的錯誤
任務 - 用於將測試用例分配給同事,如果測試用例失敗且應有人調查,則很有用
歷史記錄 - 顯示同一測試用例的先前結果
評論 - 可以新增特定於測試用例的評論
透過使用三個高級別檢視和測試用例詳細資訊檢視,可以全面瞭解測試結果。
Tesults - 團隊成員
您可以將團隊成員新增到您的專案中,以便其他人可以登入並檢視結果。此外,如果您想將測試用例失敗分配給特定人員以進行調查、檢視結果和新增錯誤連結以及評論測試用例,則需要新增團隊成員。
新增團隊成員
從選單欄中單擊“配置”,然後單擊“團隊成員”。
透過提供團隊成員的電子郵件地址逐個新增,然後單擊“新增”。或者使用 CSV 檔案批次新增。
邀請將傳送到您新增的電子郵件地址。
您也可以在此處刪除團隊成員並更改其角色。
團隊成員角色
有五種團隊成員角色。新增新團隊成員時,他們會自動成為“級別 1 - 成員”。此角色可以檢視結果。
如果您希望團隊成員能夠管理測試用例,則必須將其更改為“級別 2 - 調節員”。
下一個角色,“級別 3 - 管理員”還可以管理專案,例如新增目標。
下一個角色,“級別 4 - 官員”還可以編輯專案計劃詳細資訊和付款資訊。
“級別 5”是“專案所有者”;如果您建立了專案,則將是您。此角色是唯一可以刪除專案的角色。
Tesults - 專案配置
您可以使用配置選單應用可能影響您的專案的更改。
從選單中單擊“配置”以開啟配置選單。
目標
您可以從此選單中執行的最重要的事情之一是建立和編輯目標。目標對應於測試作業,因此對於您希望使用 Tesults 報告結果的每個測試執行,您都需要建立一個相應的目標。
單擊“建立目標”以建立目標。
您也可以在此處編輯目標名稱,並在此處重新生成目標令牌。
如果您有多個目標,您也可以在此處修改它們在摘要檢視中以及在下拉選擇列表中的顯示順序。
您也可以在此處刪除目標。
團隊成員
透過單擊“團隊成員”新增和編輯團隊成員。上一節詳細介紹了新增團隊成員。
通知
您可以選擇透過單擊“自動通知”來啟用和停用通知。您可以選擇是在每次測試執行後傳送通知,還是僅在結果發生變化時傳送通知。當沒有任何變化時,第二種方法有助於減少結果資料的垃圾郵件傳送。
與其他服務的整合
配置選單也是您可以在其中將專案與外部服務(如 Slack)整合的地方。對於 Slack,您可以設定將通知傳送到整個專案或不同 Tesults 目標的特定 Slack 頻道。
單擊“Slack 頻道”以配置哪些 Slack 頻道應接收通知。
計劃
您可以透過單擊“計劃”更改您的計劃型別。在本教程中,我們建立了一個免費專案。
按構建整合結果
如果您執行並行測試執行,但結果應作為單個測試執行整合,您可以透過單擊配置選單中的“按構建整合結果”連結來啟用整合。然後,如果測試執行的構建名稱與另一個測試執行的構建名稱匹配,則所有結果都會整合,以便您在一個測試執行中檢視所有內容。
刪除專案
要刪除您的專案,請從配置選單中單擊“刪除專案”。
根據測試結果採取行動
每個測試用例都可以視為一個“任務”。這對於處理失敗的測試用例很有用。
分配失敗的測試用例
在這裡,您將瞭解如何將失敗的測試用例分配給團隊成員。
如果您開啟失敗測試用例的測試用例,您將看到一個名為“任務”的欄位。有一個“分配”按鈕。如果您單擊它,您將看到所有專案團隊成員的下拉列表。
選擇您希望調查測試失敗的團隊成員。然後,他們將收到一封電子郵件,通知他們已分配給他們任務。
解決測試用例
如果分配給您的任務,如果您認為已實施修復,則可以將任務設定為已解決。
解決方案通知
如果測試用例在下一個測試執行中透過,則任務會自動解決,並且會向任務分配給的人員傳送電子郵件,讓他們知道測試已透過,並且任務將被刪除。
監控不穩定的測試用例
Tesults 在任何看起來像在透過和失敗之間多次更改結果的測試用例的名稱旁邊添加了一個“不穩定”圖示。目的是對測試用例進行調查以找出 -
- 測試用例本身存在問題,導致它有時透過,有時失敗。
- 被測系統中存在偶爾出現的錯誤。
將錯誤連結到測試用例
如果失敗的測試用例是由於已知錯誤導致的,或者如果您因測試失敗而建立了一個新的錯誤,則可以將您在錯誤跟蹤軟體(例如 JIRA)中建立的錯誤連結到測試用例。只需貼上錯誤跟蹤器的連結。然後,Tesults 會在測試用例的名稱旁邊新增一個“錯誤”圖示以顯示錯誤已連結。
檢視任務
從選單欄中單擊“任務”以檢視您自己和團隊其他成員的任務。
您可以檢視分配給您自己和其他人哪些任務,並且可以透過已解決(如果您將其設定為已解決)和未解決來顯示任務。您還可以透過單擊測試用例將任務重新分配給其他人。
Tesults - 通知
您可以設定透過電子郵件和外部服務(例如 Slack)傳送通知。
結果
從選單中單擊“配置”以開啟配置選單,然後單擊“自動通知”。
在此處,您可以選擇啟用或停用測試結果通知。
您還可以選擇僅在測試結果更改時或在每次測試執行時傳送通知。如果您以高頻率提交測試結果,例如作為持續整合系統的一部分,最好僅在更改時傳送通知,以避免被電子郵件淹沒。
下一節將介紹與其他服務的整合。
任務
Tesults 還發送與任務管理相關的通知。如果有人將測試用例分配給您,您會收到有關它的通知電子郵件。當分配給您的測試用例透過並從您的列表中刪除時,您也會收到通知。
管理
當團隊成員被新增到專案或從專案中刪除時,會發送有關此事的通知訊息。
Tesults - 與其他服務的整合
Tesults 可以與 Slack 整合以根據測試結果傳遞通知。路線圖頁面還提到了即將與 PagerDuty 整合的內容,將來可能還會有其他整合,但對於本教程,我們將重點關注 Slack 整合。
從選單欄中單擊“配置”以訪問配置選單,然後單擊 Slack。
第一步是授權 Tesults 能夠向您的 Slack 頻道傳送訊息。為此,您必須登入 Slack 和 Tesults。然後單擊如下所示的“新增”按鈕 -
您將被髮送到 Slack 以進行授權。
確認後,您將返回到 Tesults,然後可以選擇透過“專案範圍”或“目標範圍”啟用通知。
專案範圍
專案範圍允許您選擇哪些 Slack 頻道或多個頻道應接收您的測試結果通知。來自任何目標的所有通知都將傳送到您選擇的頻道。
目標範圍
如果您希望更細粒度的控制,請選擇目標範圍。
現在,您可以從 Tesults 專案中選擇目標,併為特定目標分配您希望接收通知的 Slack 頻道或多個頻道。您可以對每個目標執行此操作。
如果您有針對不同環境或專案區域的 Slack 頻道,這些頻道應該獲得更有針對性的通知,這將非常有用。
Tesults - 使用列表進行測試用例管理
測試列表用於管理測試用例。將測試用例儲存在此處是為了在每次手動測試執行中重複使用,甚至用於記錄自動化測試。
點選選單中的“列表”進入測試列表檢視。
建立測試列表
點選“建立列表”。請注意,您還需要先建立一個組,組允許您組織您的測試列表。如果您要建立很多測試列表,請建立組。
現在,命名您的測試列表並確認。您的列表將出現,您可以立即開始向其中新增測試用例。
新增測試用例
新增測試用例包括三種類型:“手動”、“從CSV匯入”和“從目標匯入”。讓我們先了解一下手動操作。
手動
點選“將用例新增到列表”手動新增測試用例。
輸入測試用例詳細資訊,例如:
- 名稱
- 結果
- 描述
- 套件
- 引數
- 自定義欄位
點選“儲存用例”,您將看到該用例已出現在列表中。
從CSV匯入
您也可以從csv檔案匯入用例。
您需要確保您的csv檔案的資料佈局方式為:列的第一行是欄位名稱。
從目標匯入
匯入測試用例的第三種方法是從目標(現有測試結果)匯入。
選擇您要從中匯入測試用例的目標。
更新測試用例
建立測試列表並新增測試用例後,您可以透過點選特定測試用例來編輯或更新測試用例。
點選測試用例頁尾中的“編輯”。
您可以更改任何欄位;在本例中,我們將結果從失敗更改為透過。
刪除測試用例
同樣,您可以透過點選所選測試用例頁尾中的“刪除”來刪除測試用例。
與測試執行一起使用
您可以將測試列表與手動測試執行一起使用,下一節將解釋如何操作。
Tesults - 手動測試的測試執行
測試執行用於執行手動測試。點選選單中的“執行”訪問測試執行。
建立測試執行
首先要建立一個測試執行。點選“建立新的測試執行”,然後輸入測試執行的名稱並確認建立。
此處的名稱是臨時名稱。預設情況下,Tesults將其設定為當前日期和時間。該名稱用於稍後返回到測試執行或與其他團隊成員共享測試執行以同時進行工作。
確認建立新的測試執行後,它將為空。
新增測試用例
要手動新增測試用例,請點選新增新用例。現在,您可以新增測試用例詳細資訊,包括:
- 名稱
- 結果
- 套件
- 引數
- 描述
- 檔案(上傳與測試用例相關的檔案)
- 自定義欄位
儲存用例,您將看到它已新增到測試執行中。
從列表匯入測試用例
您也可以從測試列表中新增測試用例(有關建立測試列表,請參閱上一節)。這是新增測試用例最有效的方法,因為對於每個新的測試執行,您都可以使用現有的測試用例。
點選匯入用例,然後從下拉列表中選擇一個測試列表,然後點選匯入。
編輯測試用例
要編輯測試用例,請點選它以開啟測試用例詳細資訊。
點選頁尾中的“編輯”。
刪除測試用例
您可以以相同的方式刪除測試用例。選擇它並點選頁尾中的“刪除”。
將測試用例分配給團隊成員
預設情況下,測試用例未分配,並且會顯示列表中的所有測試用例。透過將下拉列表從“全部”更改為團隊成員的姓名,更改顯示的測試用例為特定團隊成員。
選擇團隊成員後(包括您自己),您可以將測試用例分配給特定人員。會出現一個新的“分配”按鈕。點選它,測試執行將更改為顯示所有測試用例,並顯示指示器,指示測試用例是否分配給當前選擇的人員、未分配或分配給其他人。
現在,您可以點選測試用例將其分配給當前選定的團隊成員,然後再次點選取消分配。完成後,點選“完成”。
選擇“全部”將繼續顯示所有測試用例,選擇團隊成員將顯示分配給該個人的測試用例。
將測試用例標記為已完成
預設情況下,測試執行中的所有測試用例都標記為未完成。這意味著需要對其進行處理。要指示測試用例已完成,請選擇測試用例,然後從頁尾中點選“標記為已完成”。
在測試頂部,將顯示已完成測試用例的百分比以及分配給團隊成員的數量。
將測試用例標記為已完成,可以輕鬆跟蹤哪些測試用例已檢視並瞭解執行的進度。
提交手動結果
執行中的所有測試用例都標記為已完成之後,“提交測試執行”按鈕將啟用,您可以點選它將結果提交到您的一個專案目標。
從下拉列表中選擇適當的目標,然後點選“提交結果”。
由於自動化測試執行可能是透過將結果提交到特定目標來完成的,因此您可能希望為手動測試執行建立單獨的目標,否則,歷史資料和比較將中斷並導致混淆。
在某些情況下,如果測試執行僅供測試團隊內部使用,而不是更廣泛地使用,則最好不要提交結果。只需在團隊中檢視測試執行,然後建立一個新的測試執行以開始新的測試執行。
如果您專門為手動測試執行建立了目標,那麼提交結果是一個好主意。提交後,您可以從選單欄中點選“結果”檢視結果。