測試階段過程中需要進行測試文檔評審和缺陷管理,這不僅可以提高測試效率,而且在項目管理中項目可以根據缺陷收斂趨勢平衡產品質量、項目進度與成本三者關系。在測試用例設計時,需要關注逆向測試用例和可靠性測試用例的設計,這樣會更加有效地發現產品中隱藏的缺陷,從而提高產品質量。
在線分析儀器又稱過程分析儀器,是指直接安裝在工藝流程中,對被測介質的組成成分或物性參數進行自動連續分析的一類儀器。為了拓展在線分析儀器的市場,一些公司開始研發或改進相應的在線分析儀器產品。
若使新開發或改進的分析儀器能夠在用戶現場長期、可靠地運行,除了通過前期的技術預研、設計開發及技術評審等方法保證,還需要通過產品測試對產品的功能、性能、可靠性等方面進行驗證,以保證產品質量。目前,在線分析儀器在用戶現場暴露出的問題主要集中在軟件bug、器件失效、EMC 問題、測量受環境溫度影響等。根據Pareto 原則,產品中所有缺陷并不是都可以在測試中發現。但是其中的一些問題,如軟件部分bug 和測量受環境影響等一些缺陷可以在測試階段通過加強測試發現并改進,這不僅需要加強測試人員的質量意識,更需要加深測試人員對測試理論知識的理解和測試技術的掌握。
一、測試基本理論
1.1 測試職責
在線分析儀器測試人員角色根據負責產品模塊的類別不同,分可以分為軟件測試人員、硬件測試人員、產品測試人員和可靠性測試人員及認證測試人員等。軟件測試人員主要負責軟件黑盒測試,硬件測試人員主要負責硬件單元測試和硬件與軟件的集成測試。可靠性測試人員負責產品可靠性方面的測試,主要有環境測試和壽命測試等,認證測試人員則主要負責產品的CMC 認證、防爆認證等型式試驗相關檢測項目的測試。產品測試人員的主要職責是協助單元測試和集成測試,執行系統測試、一致性測試和用戶測試等,協助分析、解決測試問題。當然不同公司的組織架構會不同,測試人員職責的劃分也會不相同。目前,大多分析儀器公司軟件測試、硬件測試及可靠性測試主要由產品測試人員完成。
1.2 測試定義
Glenford J.Myers 在《The Art of Software Testing》中從心理學和經濟學兩方面對測試的定義和測試原則進行了基本的闡述,在該書中測試是指是為了發現錯誤而執行程序的過程。
目前,對于測試的定義,不同的人對其描述也略有不同。1993 年,IEEE 提出的軟件工程標準術語中,將軟件測試定義為:使用人工或自動手段來運行或評價某個系統或系統部件的過程,其目的在于檢驗它是否滿足規定的需求或是弄清預期結果和實際結果之間的差別。盡管不同人對測試定義存在差異,然而不同的定義均明確了測試應該是以查找缺陷為目標的一種過程。
1.3 測試目的
測試的目的不僅是為了發現產品缺陷,而且通過分析缺陷分布特征和缺陷產生原因可以幫助項目改進當前開發過程中的一些問題。同時,通過缺陷分析也能幫助我們設計出有針對性的測試用例,提高測試有效性。測試理想目標是達到“產品*”,即使測試過程中沒有發現任何缺陷,該過程的測試也具有意義,完整的測試是評價產品質量的有效手段。
1.4 缺陷收斂度
關于缺陷管理的理論研究起步比較晚,發展遠未成熟。參考CMM5 中定義規范和目前在線分析儀器行業特點,將產品缺陷按照嚴重程度分為四級:致命、嚴重、一般和建議。
通過測試缺陷收斂趨勢能夠反映被測試產品的質量變化情況,不僅可以輔助項目進行決策,而且也可以做為產品發布的一個重要參考,測試缺陷收斂度評估示例圖見圖1.在線分析儀器的測試缺陷收斂度可以從以下三個方面進行評估。
1)缺陷累計發現數;
2)各階段缺陷提交數;
3)缺陷數。
測試缺陷累計發現數趨于穩定和各階段缺陷提交數趨近于0,表示產品質量相對比較穩定,但是并不代表產品質量好。缺陷數趨勢曲線下跌的時候,表示產品質量有所改進,缺陷數趨勢曲線逐漸上升時,表示產品質量在持續惡化。缺陷數收斂趨勢曲線越趨近于0,產品質量越好。
二、測試方法
根據測試人員對被測對象的了解程度來劃分,測試用例設計方法可分為白盒測試和黑盒測試。
白盒測試:又稱為結構測試或邏輯驅動測試,必須知道軟件或產品內部工作過程,通過測試來檢測其內部是否按照需求、設計正常運行。通過邏輯覆蓋、路徑覆蓋等方式選擇測試用例,可以用測試覆蓋率評價測試用例。在線分析儀器一般在單元測試階段中軟件測試和硬件測試采用白盒測試方法,主要驗證軟件流程、軟件算法是否滿足需求和硬件信號鏈路是否正確等。
黑盒測試:又稱數據驅動測試或功能測試,是針對軟件或產品的功能需求進行測試。通過測試來檢測每個功能是否符合需求,不考慮其內部的邏輯結構。下面介紹幾種在線分析儀器測試中常用的幾種黑盒測試方法。
2.1 等價類劃分法
測試人員應該首先了解并掌握的功能測試相關技術是等價類劃分,理解這種技術的用法十分重要,因為它是很多其它軟件測試技術和途徑的基礎。等價類是某個輸入域的集合,在這個集合中每個輸入條件都是等效的,如果其中一個的輸入條件不能發現產品或軟件缺陷,那么集合中其它輸入條件進行測試時也不會發現缺陷。等價類分為有效等價類和無效等價類,有效等價類就是由對產品規格說明有意義的、合理的輸入數據所構成的集合;無效等價類就是對產品的規格說明不合理的或無意義的輸入數據所構成的集合,設計測試用例時需要同時考慮這兩種等價類。
2.2 邊界值分析法
從長期的測試工作經驗得知,大量的故障往往發生在輸入定義域或輸出值域的邊界上,而不是在其內部。使用邊界值分析方法設計測試用例,首先應該確定邊界情況,輸入等價類與輸出等價類的邊界,是應該著重測試的邊界情況。邊界值分析方法的基本思想是,選取正好等于、剛剛小于或剛剛大于邊界的值作為測試數據,而不是選取等價類中的典型值或者任意值作為測試數據。在測試過程中,考慮了邊界條件的測試用例與其他沒有考慮邊界條件的測試用例相比,具有更高的測試回報率。
2.3 因果圖法
等價類劃分和邊界值分析的測試方法,主要考慮單一輸入條件,但是不考慮各個輸入條件之間的相互制約關系,也不考慮輸入條件的各種組合情況。如果考慮使用一種適合于描述多種輸入條件的組合,產生多個相應動作的測試方法,可以使用因果圖,因果圖法適用于多種條件的組合、相應產生多個結果的情況。在較為復雜的情況下,這個測試方法能有效地幫助我們檢查多種條件組合下的輸出是否正確,并且設計出、非冗余的測試用例。
2.4 錯誤推測法
錯誤推測法,基于經驗和直覺推測產品中可能存在的各種錯誤,從而有針對性的設計測試用例的方法。錯誤推測方法的基本思想是,根據以往的工作經驗推測出產品中所有可能存在的錯誤和容易發生錯誤的特殊情況,根據他們選擇測試方法和設計測試用例。
當然,還有其他一些測試方法可以在測試用例設計中使用,如:正交設計法、特殊值法、流程分析法和組合設計法等。各種測試方法各有所長,應該針對產品的具體需求,選擇合適的測試方法,設計的測試用例,有效地將產品中隱藏的缺陷揭露出來。
三、結論
在線分析儀器的測試是保證產品質量一項非常重要的工作,測試人員需要掌握豐富的測試理論知識和測試技術,合理設計測試用例才能有效地發現產品中隱藏的缺陷,尤其軟件中的逆向測試用例和產品可靠性測試用例的設計。在實際的工作中發現在線分析儀器系統測試階段過程,通過逆向測試用例和可靠性測試用例發現的缺陷數比例的確很高。隨著測試技術的發展,越來越多的測試方法會被應用在分析儀器行業中,這將有效地提高測試效率和產品質量。
免責聲明
客服熱線: 15267989561
加盟熱線: 15267989561
媒體合作: 0571-87759945
投訴熱線: 0571-87759942
下載儀表站APP
Ybzhan手機版
Ybzhan公眾號
Ybzhan小程序