什麼是配置測試?示例測試用例
配置測試
配置測試是一種軟體測試方法,其中軟體應用程式在各種軟體和硬體組合下進行測試,以分析功能需求並確定軟體應用程式在無錯誤或缺陷的情況下執行的最佳配置。
如前所述,配置測試是一種軟體測試型別,其中被測應用程式必須使用軟體和硬體的不同組合進行評估。
配置測試示例
讓我們來看一個桌面應用程式的示例,瞭解其工作原理 -
通常,桌面應用程式是兩層或三層結構。在這裡,我們將研究一個使用 Asp.Net 構建的三層桌面應用程式,它由客戶端、業務邏輯伺服器和資料庫伺服器組成,每個伺服器都支援以下列出的平臺。
Windows XP、Windows 7、Windows 8 及其他客戶端平臺
Windows Server 2008 R2、Windows Server 2008 R2 和 Windows Server 2012R2 是伺服器平臺。
SQL Server 2008、SQL Server 2008R2、SQL Server 2012 及其他資料庫
為了驗證應用程式是否正常執行並且沒有出現故障,測試人員必須使用上述平臺和資料庫版本的組合來測試客戶端、伺服器和資料庫的組合。
配置測試不僅限於軟體,也適用於硬體,因此它也被稱為硬體配置測試,其中我們測試各種硬體裝置,例如印表機、掃描器、網路攝像頭和其他使被測應用程式能夠執行的裝置。
此測試的目的是什麼?
如前所述,此測試是一種評估程式、系統或應用程式效能的技術,同時考慮各種系統設定。
進行此測試是為了發現系統或程式平穩執行而沒有任何錯誤、問題或效能故障的最佳配置。藉助此測試,可以確定提供所需效能特徵的最佳配置。
此測試的第二個主要原因是系統與 SRS 中包含的其他軟體或硬體的相容性(軟體需求規範)。
一個具體的例子
假設您的公司使用 C# 建立了一個基於 .NET 框架的桌面應用程式。
並且此應用程式構建在三層體系結構上,包括前端(客戶端)、應用程式層(伺服器)和資料庫層。因此,每一層都將支援某些平臺。
假設每一層都支援以下列出的平臺 -
客戶端 - Microsoft Windows 10、Windows 7、Windows XP 和 Linux。
伺服器例如 Ubuntu Server、Windows Server 2016 和 Novell Open Enterprise Server。
資料庫例如 Microsoft SQL Server、IBM DB2 和 MySQL。
現在,作為軟體測試人員,您必須在上述客戶端、伺服器和資料庫平臺的每個組合上測試該應用程式,以確保它在所有這些平臺上都能正常工作。
例如,您將測試應用程式如何在 Windows 10 作業系統、Windows Server 2016 資料庫和 MySQL 資料庫下工作,然後您將測試應用程式如何在 Windows 10 作業系統、Windows Server 2016 資料庫和 IBM DB2 資料庫下工作。
依此類推,直到您嘗試了所有可能的組合。我們的測試不僅限於軟體;它還將包括硬體,其中我們將必須檢查每種可能的硬體裝置組合。因此,此測試也稱為硬體配置測試。
配置測試準備
在執行配置測試之前,此測試有一些前提條件必須滿足。
以下是要求 -
#1)建立覆蓋矩陣
由於存在大量可選的硬體和軟體組合,因此有效地測試每個組合都變得非常耗時且實際上是不可能的。
例如,在上述情況下,將共有 3*3*3 或 27 種軟體配置。假設我們有 5 個不同的硬碟驅動器和 6 個不同的記憶體容量。那麼計數將增加到 27*5*9 或 810 種配置。如果我們在圖片中新增更多元素,這將繼續增加。因此,提前計劃軟體測試工作並確定將支援哪些平臺至關重要。
然後,我們需要建立一個覆蓋矩陣來儲存所有不同的硬體和軟體設定。此覆蓋矩陣也稱為 BCM(基本配置矩陣)。
#2)設定配置優先順序
下一步是使用配置矩陣對配置進行優先順序排序。
此階段是必要的,因為測試所有大量的組合是不可能的。因此,根據客戶的意見確定了最重要的設定,並且這些設定將首先得到充分測試。
完成前兩個階段後,我們可以開始按重要性順序測試各種配置。
Microsoft VSTS(Visual Studio Team Services)是一種配置測試工具。
VSTS(Microsoft Visual Studio Team Services)是一種解決方案,可以根據您的測試策略極大地幫助您在多種配置中測試您的程式。
您應該制定一個測試計劃,以幫助您選擇要執行哪些測試以及在哪些設定上執行。您必須驗證環境是否已針對您想要的設定正確設定。獲得組合矩陣後,您必須測試該矩陣。
要執行此測試,請遵循以下步驟 -
建立變數並配置配置。您的設定中的一個元件是變數。例如,變數“瀏覽器”可能有多個值,例如 Chrome、Firefox、IE10 等。
將配置分配給測試計劃、測試套件或特定測試用例。
分別在每個設定上執行測試。
記錄每個設定的測試結果。
配置測試前提條件
在開始任何專案的配置測試之前,必須滿足一些前提條件。
建立一個包含軟體和硬體設定的各種組合的矩陣。
對設定進行優先順序排序,因為測試所有設定都很困難。
根據其優先順序測試每種配置。
配置測試目標
配置測試的目的是確保一切正常。
驗證應用程式以檢視它是否滿足可配置性要求
手動生成故障以幫助檢測在測試期間不容易發現的問題(例如:更改系統的區域設定,如時區、語言、日期時間格式等)
確定測試應用程式的最佳設定。
新增或更改硬體資源,例如負載均衡器、增加或減少 RAM 大小、連線各種印表機型別等,以分析系統性能。
根據優先順序分析系統效率,確定使用可用資源執行測試的有效性,以獲得最佳系統配置。
驗證地理位置分散的環境中的系統,以確定其執行狀況。
例如,如果伺服器位於與客戶端不同的位置,則系統應無論系統設定如何都能正常工作。
檢查無論設定如何更改,問題有多容易重現。
透過正確記錄和保留易於識別的版本來確保應用程式元件的可追溯性。
在整個軟體開發生命週期中,確定應用程式元件的可管理性。
配置測試:分步指南
在本部分中,我們將逐步介紹應用於不同型別的配置測試的方法。配置測試分為兩類,如下所示。
軟體配置測試
硬體配置測試
軟體配置測試
軟體配置測試是在不同的作業系統、軟體升級等情況下對被測應用程式進行測試。軟體配置測試需要很長時間,因為安裝和解除安裝過程中所需的許多軟體工具需要花費時間。
在虛擬機器上測試軟體設定是用於執行此操作的方法之一。虛擬機器是一個基於軟體的環境,模擬物理硬體的行為,為使用者提供與物理機器相同的體驗。虛擬機器用於複製現實世界中的場景。
始終最好在虛擬機器上安裝應用程式/軟體並繼續測試,而不是在多臺真實計算機上安裝和解除安裝軟體,這非常耗時。可以使用多個虛擬計算機來執行此過程,從而使測試人員的工作更容易。
在軟體配置測試方面,通常最好儘早開始。
提供了可測試的配置標準。
測試環境現已可用。
測試團隊已接受了廣泛的配置測試培訓。
已釋出構建,並且單元測試和整合測試均已透過。
要測試軟體配置測試,一個典型的測試策略是在不同的軟體配置中執行功能測試套件,以確保被測程式按預期執行,沒有任何缺陷或錯誤。
另一種方法是手動使測試用例失敗並檢查效率,以確保系統正常執行。
示例
考慮一個必須針對各種瀏覽器測試相容性的銀行應用程式。如果應用程式託管在滿足所有標準的環境中,則測試實驗室中的單元和整合測試可能會成功。
但是,如果將相同的程式部署到客戶端位置,並且機器缺少應用程式直接或間接依賴的某些軟體更新或版本,則應用程式可能會失敗。為了避免這種情況,最好在繼續測試之前,透過消除部分可重新配置標準來手動使測試失敗。
硬體配置測試
硬體配置測試通常在實驗室中進行,實驗室中存在連線各種硬體的實際機器。
當新的構建可用時,必須將軟體安裝在連線硬體的所有物理計算機上,並且必須在每個系統上執行測試套件,以確認應用程式正常執行。
在每臺計算機上安裝軟體、連線硬體以及手動執行或自動化上述過程並執行測試套件都需要大量時間。
此外,在執行硬體配置測試時,我們定義了要測試的硬體型別,並且有如此多的不同型別的計算機硬體和外設,幾乎不可能執行所有這些硬體。因此,測試人員有責任確定使用者最常用的硬體,並根據此優先順序進行測試。
總結
配置測試與其他形式的測試一樣,應在軟體工程中給予同等重視。如果沒有配置測試,就不可能評估理想的系統性能,並且軟體可能會遇到它旨在執行的相容性問題。
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP