功能測試與非功能測試


軟件測試大體分爲功能測試和非功能測試。
編程

讓咱們詳細討論這些測試類型,以及功能測試和非功能測試之間的確切差別。 安全




什麼是功能測試?

功能測試是測試被測軟件或應用程序的「功能」。微信

它測試了被測軟件的行爲。根據客戶的需求,稱爲軟件規範或需求規範的文檔將用做測試應用程序的指南。網絡

根據數據雕刻測試數據,並準備一組測試用例。而後在真實環境中對軟件進行測試,以檢查實際結果是否與預期結果同步。該技術被稱爲黑盒技術,一般是手動執行的,在發現錯誤方面也很是有效。閉包

如今讓咱們探索功能測試的類型!!
編輯器

功能測試的類型

下面列出了各類類型的功能測試。函數式編程

冒煙測試:

在實際系統測試以前執行此類測試,以檢查關鍵功能是否正常運行,以便進行進一步的普遍測試。函數

反過來,這節省了從新安裝新版本的時間,而且在關鍵功能沒法正常工做時避免了進一步的測試。這是測試應用程序的通用方法。工具




健全性測試:

這是一種測試,其中僅測試特定功能或已修復的錯誤,以檢查功能是否正常運行,並查看是否因爲相關組件的更改而沒有其餘問題。這是測試應用程序的特定方法。性能

集成測試:

當軟件的兩個或多個功能或組件集成在一塊兒造成一個系統時,將執行集成測試當組件合併成一個總體時,它基本上檢查軟件的正常功能。

迴歸測試:

在修復了在第一輪測試中發現的錯誤以後,在收到軟件的構建版本以後執行迴歸測試。它會驗證錯誤是否已修復,並檢查整個軟件在所作的更改中是否工做正常。

本地化測試:

這是一個測試過程,用於檢查軟件使用客戶端要求的其餘語言轉換爲應用程序時的功能。

        什麼是本地化測試?

        本地化是指使產品,應用程序或文檔內容適應特定區域或地區的文化,語言和其餘要求。

        本地化縮寫爲l10n,其中10是l和n之間的字母數。當想到本地化時,想到的是應用程序的用戶界面和文檔採用特定的語言或語言環境。可是本地化不只限於此。

        在本地化應用程序時,將自定義如下重要領域:

  • 日期和時間格式(包括數字格式)

  • 使用的貨幣

  • 鍵盤用法

  • 排序,對齊和整理數據

  • 配色方案,符號和圖標

  • 在給定文化中,文本和圖形可能被視爲敏感或可能被誤解。

  • 多種法律要求

        本地化的主要目的是使產品的外觀和感受對目標受衆而言,看起來像是專門爲知足他們的需求而建立的。

用戶驗收測試

用戶驗收測試中,會考慮用戶的易用性,根據用戶的溫馨度和接受程度對應用程序進行測試。

實際的最終用戶或客戶端將得到一個試用版,以在其辦公室設置中使用,以檢查該軟件是否在實際環境中按照其要求運行。該測試在最終啓動以前進行,也稱爲Beta測試或最終用戶測試。

什麼是非功能測試?

有一些方面很複雜,例如應用程序的性能等,而且此測試檢查要測試的軟件的質量。在各類不利狀況下,質量主要取決於產品的時間,準確性,穩定性,正確性和耐用性。

用軟件的術語來講,當一個應用程序在任何條件下都能按照用戶的指望平穩,有效地運行時,就能夠說是可靠的應用程序。基於質量的這些方面,在這些參數下進行測試很是關鍵。這種測試稱爲非功能測試。

手動測試該類型是不可行的,所以使用了一些特殊的自動化工具來對其進行測試。

推薦工具: LoadRunner,JMeter等。

非功能測試的類型

下面給出了各類類型的非功能測試。

性能測試:




#1)負載測試:預期應處理特定工做負載的應用程序會在描述特定工做負載的真實環境中測試其響應時間。通過測試,它能夠在規定的時間內正常運行,而且可以處理負載。

#2)壓力測試:壓力測試中,應用程序會承受額外的工做負載,以檢查其是否有效運行並可以按要求處理壓力。

示例:考慮一個通過測試能夠檢查用戶訪問高峯時其行爲的網站。可能存在工做負載超出規範的狀況。在這種狀況下,網站可能會失敗,減速甚至崩潰。

壓力測試是使用自動化工具檢查這些狀況,以建立工做負載的實時狀況並查找缺陷。

#3)卷測試:卷測試下,經過提供實時環境來測試應用程序處理卷中數據的能力。該應用程序在不利條件下通過了正確性和可靠性測試。

#4)耐用性測試:耐用性測試中,軟件的耐用性是以可伸縮的方式反覆重複且始終如一的負載流進行測試的。當加載一致的工做負載時,它將檢查軟件的耐用性。


                                         



經過解決這些問題並相應地找到優質產品的解決方案,全部這些測試類型均可以使該軟件在任何實時狀況下均無錯誤,無崩潰地運行。

可用性測試:

在這種類型的測試中,將對用戶界面的易用性進行測試,並查看其界面友好程度。

安全測試:

安全測試旨在檢查軟件在網絡上免受惡意攻擊的安全性。此測試中要測試的關鍵領域包括受權,用戶身份驗證以及他們根據角色(例如管理員,主持人,做曲者和用戶級別)對數據的訪問。

所以,在瞭解了定義以後,就能夠清楚地瞭解功能測試與非功能測試之間的區別。

功能測試與非功能測試之間的區別

功能測試 非功能測試
它測試產品的功能。它檢查應用程序的操做和動做。 它檢查應用程序的行爲。
功能測試是根據業務需求進行的。 非功能測試是根據客戶的指望和性能要求進行的。
它測試實際結果是否按照預期結果工做。 它檢查響應時間以及在特定條件下軟件的速度。
它是手動執行的。
示例:黑匣子測試方法。
使用自動化工具進行測試更可行。
示例:Loadrunner。
它根據客戶要求進行測試。 它根據客戶的指望進行測試。
客戶反饋有助於下降產品的風險因素。

客戶反饋對於非功能性測試更有價值,由於它有助於改善功能,並使測試人員瞭解客戶的指望。

它正在測試軟件的功能。 它正在測試軟件功能的性能。
功能測試具備如下類型:
•單元測試
•集成測試
•系統測試
•驗收測試
非功能測試包括:
•性能測試
•負載測試
•壓力測試
•容量測試
•安全測試
•安裝測試
•恢復測試


可讀代碼編寫炸雞四(上篇) - 來寫註釋
送書 | Selenium3+Python3自動化測試項目實戰從菜鳥到高手
今天我又帶來了一款超好用的百度網盤高速下載器~附軟件資源
LeetCode47, 全排列進階,若是有重複元素怎麼辦?
Python——帶你五分鐘瞭解函數式編程與閉包

掃描二維碼

關注更多精彩





本文分享自微信公衆號 - 軟件測試test()。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索