測試開發
測試驅動開發(tdd
)
驅動這個流程前行的開發周期稱為「紅燈-綠燈-重構」。具體如下;
編寫乙個測試;
執行所有測試;
編寫實現**;
執行所有測試;
重構;執行所有測試。
編寫測試期間處於綠燈狀態昭示著存在錯報的問題,對於這樣的測試,應將其刪除或重構。
注意:編寫測試時,應處於紅燈狀態。完成測試要求後,所有測試都應通過,此時將處於綠燈狀態。
測試驅動開發的主要目標是提供可測試的**設計,測試只是一項很有用的副產品。
黑盒測試
黑盒測試(也叫功能測試)將受測試軟體視為乙個黑盒,無需知道其內部結構。這種測試是通過軟體介面進行的,旨在確認他們像預期的那樣工作。
優點:可高效測試大塊**段;
無需訪問和理解**,也不要求測試人員知道如何編寫**;
將使用者角度和開發人員角度分離。
缺點:
覆蓋率有限,因為執行部分測試場景;
測試效率低下,因為測試人員對軟體內部構造一無所知;
測試缺乏針對性,因為測試人員對應程式的了解有限。
白盒測試
白盒測試(也叫透明盒測試,玻璃盒測試和結構測試)檢視受測試軟體的內部,並將由此獲得的知識用於測試過程。白盒測試要求測試人員了解系統的內部結構,同時具備程式設計技能;它提供了從內部觀測軟體的結果。
優點:可高效找出錯誤和問題;
知道受測軟體的內部結構有助於進行詳細測試;
能夠發現隱藏的錯誤;
可幫助程式設計師反省;
由於知道軟體的內部構造,因此可最大限度地提高測試覆蓋率。
缺點:
可能無法發現未實現或缺失的功能;
需要對受測軟體的內部構造有大致認識;
需要訪問**;
測試通常與產品**的實現細節緊密耦合,導致重構**後原本應該通過的測試未能通過。
質量檢查(
qc)面向產品,旨在確保結果符合預期,重點是發現缺陷。
質量保證(
qa)專注過程以確保製造質量,即力圖確保以正確的方式做正確的事情,將缺陷消滅在萌芽狀態。
傳統軟體文件存在主要問題是,他們通常都不是最新的。一部分**發生變化後,文件便不再反映實際情況,幾乎任何型別的文件都是如此,需求和測試用例受到的影響最大。
採用某種持續整合(
ci)時,不正確的測試文件將失敗並迅速得到修復。
ci能夠解決測試文件不正確的問題,但無法確保所有功能都有相關文件,可使用
tdd的方式建立測試文件。
相位驅動開發(
bdd)可在保留
tdd和自動化的優點的同時,提供非程式設計師所需要的文件。
bdd故事可作為驗收標準(在**之前編寫的),可頻繁執行(最好每次提交時都執行),還是使用自然語言編寫的,因此不擔在任何情況下都是最新的,而且可供那些不想研究**的人使用。
要提供即準確有最新的資訊,唯一划算的方式使使用可整合到持續整合系統的可執行文件。
測試開發筆記 Linux搭建環境
搭建環境之centos7 docker 阿里雲映象加速器 1 安裝docker 1 安裝yum utils軟體包 提供yum config manager 實用程式 並設定穩定的儲存庫 sudo yum install y yum utils sudo yum config manager add ...
測試開發筆記 資料庫
一 為什麼要學習資料庫 1 為了方便查詢資料 2 為了持久化儲存資料 二 資料庫的相關概念 dbms db sql db 資料庫,儲存資料的容器 dbms 資料庫管理系統或者資料庫管理產品 常見的資料庫管理系統 mysql oracal db2 sql server sql 結構化查詢語句 三 資料...
測試開發筆記 資料庫
mysql前端筆記 二 常見約束補充 1 主鍵自增 auto increment 通過auto increment設定主鍵自增 特點 和主鍵結合使用,自增字段的資料型別是整數型別 自增的資料開始值是1,沒增加一行資料,自增1 新增自增 create table tb dept10 id int 11...