共用方式為


建立測試計劃和測試套件的指引

使用 Microsoft 測試管理員建立 Team 專案的測試計劃和測試套件時,可以採用幾種方式。 本主題將著重於以開發方法為基礎的兩種方式。

其中一種方式是建立一個測試計劃供所有里程碑使用,並且在進行時加入測試套件和測試。 不過,如果您使用此方式,就不會有之前里程碑的測試成功率歷程資料。 因此,最好是建立以特定反覆項目或里程碑 (依使用的開發方法而定) 的測試目標為主的測試計劃。 藉由建立反覆項目或里程碑的測試計劃,就可以看見特定反覆項目或里程碑完成的時間 (依據您的測試目標)。 您也可以在完成目前里程碑的測試時,為下一個反覆項目或里程碑準備測試計劃。 使用此方式可追蹤每一個測試計劃的測試進度,並且查看應用程式品質改善的程度。

如果您同時將手動和自動化測試加入至測試套件,就可以依據這兩種類型的測試來檢視測試套件和測試計劃的整體品質。

依據您使用的方法,利用下列各節來開發和測試應用程式:

  • Agile 開發

  • 其他開發方法

如需測試計劃和測試套件以及如何建立兩者的詳細資訊,請參閱使用測試計劃定義您的測試工作

Agile 開發

如果您使用敏捷方法開發和測試應用程式,通常會建立使用者本文並使用期程 (Sprint) 和反覆項目追蹤開發和測試工作的進度。 您可以使用測試計劃與每個期程相互關聯。 例如,您的 Web 應用程式可能有下列使用者本文:

  1. 使用者想要從網站選取多項產品,並且將產品加入購物車內。 (期程 1)

  2. 使用者想要使用信用卡購買購物車內的項目。 (期程 1)

  3. 使用者想要儲存購買項目時的資訊,方便下次可快速購買。 (期程 2)

  4. 使用者想要在購買項目時登入帳戶,以擷取個人資訊而不必再次輸入。 (期程 2)

下列步驟假設這些是專案的使用者本文。 您會想要為這些使用者本文建立測試案例。 您也可能想要針對多個可彼此聯結的使用者本文,使用測試案例測試其端對端功能。 例如,您可能想要測試使用者是否可以選取項目、將項目加入購物車內、登入及購買項目。 依照這些步驟執行,您就會有一組測試計劃,如下圖所示:

適用於 Agile 開發的測試計劃和測試套件

專案設定

  1. 在專案開始時,建立下列測試計劃 (依據您計劃擁有的期程數目而定)。

    1. 期程 1 測試計劃

      這將用於測試期程 1 使用者本文。

    2. 期程 2 測試計劃

      這將用於測試期程 2 使用者本文和來自期程 1 的任何必要迴歸測試。

    3. 主要測試計劃

      這將用於橫跨多個期程的端對端測試。 另外還會用於服務等級協定的效能測試。 此測試計劃不一定要與特定反覆項目產生關聯,因為它橫跨多個反覆項目,而且只有在所有里程碑完成時才能完成。

  2. 決定要用來測試使用者本文的測試組態。 例如,您可能想要測試應用程式的使用者本文會在 Internet Explorer 8 上採用組態 1 執行,以及在 Firefox 3.5 上採用組態 2 執行。 那麼請使用 Microsoft 測試管理員建立這些測試組態。 如需如何建立測試組態的詳細資訊,請參閱使用測試組態定義您的測試表

  3. 將使用者本文所需的測試組態加入至測試計劃。 根據預設,這些組態將用於您在測試計劃中建立的任何測試套件。

    注意事項注意事項

    如果您需要針對特定使用者本文或測試案例使用不同的組態,可以為每個測試套件變更測試組態。 如需詳細資訊,請參閱 HOW TO:選取測試計劃或測試套件的不同測試組態

期程 1 測試

  1. 將期程 1 的使用者本文 1 和 2 加入至 [期程 1 測試計劃],以建立兩個以需求為基礎的測試套件。 如需如何從使用者本文建立測試套件的詳細資訊,請參閱 HOW TO:將需求或使用者本文加入至測試計劃

  2. 檢查使用者本文的測試套件所需的測試組態是否正確。 根據預設,每個測試套件都會設定為使用測試計劃的測試組態。

  3. 將接受度測試案例加入至使用者本文 1 和 2 的這些測試套件。 例如,您可以將下列測試案例加入至適當的測試套件:

    1. 使用者本文 1:將一個項目加入購物車內

    2. 使用者本文 1:從購物車中移除項目

    3. 使用者本文 2:購買購物車中的單一項目

      如果將這些測試案例加入至從使用者本文建立的測試套件中,則這些測試案例會自動與使用者本文產生關聯。 如需如何將測試案例加入至測試套件的詳細資訊,請參閱 HOW TO:將測試案例加入至測試套件

      注意事項注意事項

      您可以在建立測試案例時加入測試步驟,或者其他測試人員可以在測試步驟更為明確時加入步驟。

  4. 如果您建立了任何自動化測試,可以將這些測試加入至測試套件。 例如,如果您有任何單元測試或自動程式碼 UI 測試,就可以將這些測試與測試案例產生關聯,並且將這些測試加入至測試套件。 如需詳細資訊,請參閱 HOW TO:使自動化測試與測試案例產生關聯從自動化測試的組件建立測試案例。 只要這些測試準備就緒,就可在期程期間加入。

  5. 將使用者本文完成時確定要測試的任何端對端測試案例,加入至主要測試計劃中的端對端測試套件。

  6. 使用者本文在期程期間準備好進行測試時,將測試計劃的測試套件狀態設定為 [進行中]。 如需詳細資訊,請參閱 HOW TO:變更測試套件的測試狀態

    注意事項注意事項

    您可能還想要加入探勘測試案例,用來進行每個使用者本文的探勘測試。 此測試案例可以只包含一個測試步驟,用來探勘此使用者本文並且在找到 Bug 時記錄您的動作。

  7. 您可以從 [執行測試] 檢視中選取您要執行的「測試點」(Test Point)。 測試點是指測試案例與測試組態的配對。 例如,測試人員 A 只有一部已安裝 Internet Explorer 8 的電腦。 測試人員 A 針對必須在 Internet Explorer 8 上執行的使用者本文,選取並執行所有測試點。 測試人員 B 針對必須在 Firefox 3.5 上執行的使用者本文,選取並執行所有測試點。

  8. 當該使用者本文之測試套件的所有手動和自動化測試都已完成時,您就可以檢視該測試套件的測試狀態。 在 [測試] 活動中,選擇 [執行測試] 檢視。 您也可以執行報表來查看狀態。 依據每個期程的品質目標,您可以判斷期程測試工作是否完成。 如需有關從 Microsoft 測試管理員報告的詳細資訊,請參閱報告測試計劃的測試進度

  9. 期程 1 完成時,您必須決定哪些測試需要做為下一個期程的迴歸測試執行,以確認開發新的使用者本文不會影響期程 1 使用者本文的功能。

  10. 在期程 2 測試計劃中建立稱為「迴歸」的測試套件。 然後將您為這些迴歸測試識別的測試案例加入至期程 2 測試計劃中的此測試套件。

期程 2 測試

  1. 將期程 2 的使用者本文 3 和 4 加入至 [期程 2 測試計劃],以建立兩個以需求為基礎的測試套件。

  2. 將接受度測試案例加入至使用者本文 3 和 4 的這些測試套件。 例如,您可能會加入下列測試案例:

    1. 使用者本文 3:建立登入帳戶

    2. 使用者本文 3:結帳,但不建立登入帳戶

    3. 使用者本文 4:登入至登入帳戶 (您可以將參數加入至此測試案例,以便使用不同的登入進行登入)。

    4. 使用者本文 4:使用者忘記密碼

    5. 使用者本文 4:檢視帳戶的訂單

      您可以在建立測試案例時加入測試步驟,或者其他測試人員可以在測試步驟更為明確時加入步驟。

  3. 如果您建立了任何自動化測試,可以將這些測試加入至測試套件。 例如,如果您有任何單元測試或自動程式碼 UI 測試,就可以將這些測試與測試案例產生關聯,並且將這些測試加入至測試套件。 只要這些測試準備就緒,就可在期程期間加入。

  4. 將使用者本文完成時確定要測試的任何新端對端測試案例,加入至主要測試計劃中的端對端測試套件。

  5. 使用者本文在期程期間準備好進行測試時,將測試套件的狀態變更為 [進行中]。 然後執行該使用者本文之測試套件的手動和自動化測試。

    注意事項注意事項

    您可能還想要加入探勘測試案例,用來進行每個使用者本文的探勘測試。 此測試案例可以只包含一個測試步驟,用來探勘此使用者本文並且在找到 Bug 時記錄您的動作。

  6. 您現在可以從 [測試] 活動的 [執行測試] 檢視中,檢視每個測試套件的測試狀態。 您也可以執行報表來查看狀態。 依據每個期程的品質目標,您可以判斷期程測試工作是否完成。

  7. 執行適用於此期程的任何效能測試或端對端測試。

  8. 期程 2 完成時,您必須決定哪些測試需要做為下一個期程(如果有的話) 的迴歸測試執行,以確認開發新的使用者本文不會影響期程 2 使用者本文的功能。

  9. 在下一個期程 (期程 3) 的測試計劃中,從期程 2 測試計劃複製稱為「迴歸」的測試套件。 然後將您為這些迴歸測試識別的測試案例加入至期程 3 測試計劃中的此測試套件。 如需如何複製另一個測試計劃的測試套件的詳細資訊,請參閱 HOW TO:從另一個測試計劃複製測試套件

繼續針對每一個期程執行此程序。 使用此方式將會為期程建立一組測試計劃。 您也會建立迴歸測試的測試套件,該套件將沿用至下一個測試計劃。 針對關鍵里程碑如 Beta 1,您可以選擇重新執行期程中的部分或全部測試。 您可以使用相同的技術來建立此里程碑 (名為 Beta 1) 的測試計劃,然後將測試套件複製到此測試計劃。 如此您就能另外記錄此測試計劃的測試結果,並且與個別期程測試計劃進行比較。

其他開發方法

如果您未採用敏捷方法,則您的開發和測試工作很可能是以功能為主。 不過,您也可以使用需求,而不採用使用者本文。 如果您使用需求,則可以利用敏捷開發一節中的方式,並且針對特定里程碑 (而不是期程) 建立測試計劃,然後將需求加入至測試計劃。 例如,您擁有的 Beta 1 測試計劃中包含所有做為測試套件加入的 Beta 1 需求。 那麼您就可以將接受度測試案例和單元測試加入至這些測試套件,並且將測試案例與需求產生關聯。 如需詳細資訊,請參閱 HOW TO:將需求或使用者本文加入至測試計劃。 如需如何將單元測試加入至測試計劃的詳細資訊,請參閱 HOW TO:使自動化測試與測試案例產生關聯從自動化測試的組件建立測試案例

如果您使用較偏重功能的方式,您的 Web 應用程式可能有下列功能:

  1. 購物車 (Alpha)

  2. 登入 (Alpha)

  3. 結帳 (Beta 1)

  4. 檢視訂單 (Beta 1)

下列步驟假設這些是專案的功能。 另外也假設功能將與 Team 專案的特定區域路徑產生關聯。 您會想要為這些功能建立測試案例。 您可能還想要特別讓測試案例測試多項功能。 例如,您可能想要測試使用者是否可以將項目加入購物車內、登入及購買項目。 依照這些步驟執行,您就會有一組測試計劃,如下圖所示。

以功能為基礎的測試套件指引

專案設定

  1. 在專案開始時,建立下列測試計劃 (依據您計劃擁有的里程碑數目而定)。

    1. Alpha

      這將用於測試 Alpha 階段可使用的功能。

    2. Beta 1

      這將用於測試 Beta 階段可使用的功能,包括根據 Alpha 的回應而對功能進行的任何變更,或是加入至 Alpha 功能的功能。

  2. 決定必須擁有才能測試這些功能的測試組態。 例如,您可能想要測試應用程式的這些功能會在 Internet Explorer 8 上採用組態 1 執行,以及在 Firefox 3.5 上採用組態 2 執行。 那麼請使用 Microsoft 測試管理員建立這些測試組態。 如需如何建立測試組態的詳細資訊,請參閱 使用測試組態定義您的測試表

  3. 將功能所需的測試組態加入至測試計劃。 根據預設,這些組態將用於您在測試計劃中建立的任何測試套件。

    注意事項注意事項

    如果您需要針對特定功能或測試案例使用不同的組態,可以為每個測試套件變更測試組態。 如需詳細資訊,請參閱 HOW TO:選取測試計劃或測試套件的不同測試組態

Alpha 測試

  1. 將「購物車」的測試套件和「登入」的測試套件加入至 Alpha 測試計劃。 您可以將這些建立為靜態測試套件,然後將測試案例加入至這些套件。 如需如何將測試案例加入至靜態測試套件的詳細資訊,請參閱 HOW TO:建立和管理測試套件

    重要事項重要事項

    您可能也會在依據測試的產品區域建立測試案例時,選取區域路徑。 區域路徑通常會對應至功能或功能組。 如果您這樣做,就可以依據此區域路徑的查詢建立查詢式測試套件。 只要您將測試案例加入至此區域路徑,該測試案例就會自動加入至查詢式測試套件。 如此有助於維護您的測試套件。 在此範例中,您可以針對等於 1 的區域路徑建立查詢式測試套件,以及針對等於 2 的區域路徑建立另一個查詢式測試套件,而不建立靜態測試套件。 如需如何建立這些查詢式測試套件的詳細資訊,請參閱 HOW TO:建立和管理查詢式測試套件

  2. 檢查每項功能的測試套件所需的測試組態是否正確。 根據預設,每個測試套件都會設定為使用測試計劃的測試組態。

  3. 針對個別功能將測試案例加入至測試套件。 例如,您可以將下列測試案例加入至適當的測試套件,或是如果您建立了查詢式測試套件,則只要建立包含正確區域路徑值的測試案例:

    1. 購物車:將一個項目加入購物車內

    2. 購物車:從購物車中移除項目

    3. 登入:登入使用者帳戶

      如需如何將測試案例加入至測試套件的詳細資訊,請參閱 HOW TO:將測試案例加入至測試套件

      注意事項注意事項

      您可以在建立測試案例時加入測試步驟,或者其他測試人員可以在測試步驟更為明確時加入步驟。

  4. 如果您建立了任何自動化測試,可以將這些測試加入至測試套件。 例如,如果您有任何單元測試或自動程式碼 UI 測試,就可以將這些測試與測試案例產生關聯,並且將這些測試加入至測試套件。 如果您依據區域路徑建立查詢式測試套件,則必須確定這些測試案例的區域路徑值是正確的。 如需如何將自動化測試與測試案例產生關聯的詳細資訊,請參閱 HOW TO:使自動化測試與測試案例產生關聯從自動化測試的組件建立測試案例。 只要這些測試準備就緒,就可在 Alpha 測試期間加入。

  5. 功能在專案的 Alpha 階段準備好進行測試時,將測試計劃的測試套件狀態設定為 [進行中]。 如需詳細資訊,請參閱 HOW TO:變更測試套件的測試狀態

    注意事項注意事項

    您可能還想要加入探勘測試案例,用來進行功能的探勘測試。 此測試案例可以只包含一個測試步驟,用來探勘此功能並且在找到 Bug 時記錄您的動作。

  6. 您可以從 [執行測試] 檢視中選取您要執行的「測試點」(Test Point)。 測試點是指測試案例與測試組態的配對。 例如,測試人員 A 只有一部已安裝 Internet Explorer 8 的電腦。 測試人員 A 針對需要在 Internet Explorer 8 上執行的使用者本文,選取並執行所有測試點。 測試人員 B 針對必須在 Firefox 3.5 上執行的使用者本文,選取並執行所有測試點。

  7. 當該功能之測試套件的所有手動和自動化測試都已完成時,您就可以從 [測試] 活動的 [執行測試] 檢視中,檢視該測試套件的測試狀態。 您也可以執行報表來查看狀態。 依據您為 Alpha 測試設定的品質目標,就可以判斷測試工作是否完成。 如需有關從 Microsoft 測試管理員報告的詳細資訊,請參閱報告測試計劃的測試進度

Beta 1 測試

  1. 將 Alpha 測試計劃中的測試套件複製到 Beta 1 測試計劃。 如需如何複製另一個測試計劃的測試套件的詳細資訊,請參閱 HOW TO:從另一個測試計劃複製測試套件

  2. 如果您使用靜態測試套件,請將「結帳」的測試套件和「檢視訂單」的測試套件加入至 [Beta 1 測試計劃]。 如果您使用區域路徑的查詢式測試套件,則您針對區域路徑 1 或 2 建立的任何測試都會自動加入至從 Alpha 測試計劃複製而來的測試套件中。

  3. 將稱為「端對端」的測試套件加入至 [Beta 1 測試計劃]。 您可以將測試案例加入至此測試套件,以便測試包含多項功能的端對端情節。

  4. 將測試案例加入至這些新功能的測試套件,或是如果您使用查詢式測試套件,則只要建立包含正確區域路徑值的測試案例。 您也可以針對為 Alpha 功能所進行的變更或新增的功能,加入測試案例。 例如,您可能會加入下列測試案例:

    1. 結帳:將購物車的項目結帳

    2. 結帳:結帳,但不建立登入帳戶

    3. 登入 (其他測試案例):使用者忘記密碼

    4. 檢視訂單:檢視帳戶的訂單

    5. 端對端:加入項目、登入和結帳

      您可以在建立測試案例時加入測試步驟,或者其他測試人員可以在測試步驟更為明確時加入步驟。

  5. 如果您建立了任何自動化測試,可以將這些測試加入至測試套件。 例如,如果您有任何單元測試或自動程式碼 UI 測試,就可以將這些測試與測試案例產生關聯,並且將這些測試加入至測試套件。 只要這些測試準備就緒,就可在 Beta 1 期間加入。

  6. 功能在 Beta 1 期間準備好進行測試時,將測試套件的狀態變更為 [進行中]。 然後執行該功能之測試套件的手動和自動化測試。

    注意事項注意事項

    您可能還想要加入探勘測試案例,用來進行 Beta 1 中每一項新功能的探勘測試。 此測試案例可以只包含一個測試步驟,用來探勘此功能並且在找到 Bug 時記錄您的動作。

  7. 您現在可以從 [測試] 活動的 [執行測試] 檢視中,檢視每個測試套件的測試狀態。 您也可以執行報表來查看狀態。 依據您為 Beta 1 設定的品質目標,就可以判斷測試工作是否完成。

  8. 針對 Beta 1 執行任何必要的端對端測試。

如果專案擁有多個里程碑,您可以針對每一個里程碑繼續執行此程序。 使用此方式將會為每一個里程碑建立一個新的測試計劃。 您也會建立端對端測試的測試套件,這些測試會複製到下一個里程碑的測試計劃。 如果您沒有足夠的時間執行前一個里程碑之測試套件中的所有測試,可以限制測試套件中這些複製的測試。 例如,您可以限制只執行「優先權 1」的測試。 如果您使用查詢式測試套件,則可以變更查詢以加入優先權。 如果您使用靜態測試套件,只要移除不要針對里程碑重新執行的測試案例即可。

請參閱

工作

使用 Microsoft 測試管理員進行手動測試的快速入門指南

概念

使用測試計劃定義您的測試工作