自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

將QA引入軟件開發(fā)生命周期是工程師要遵循的最佳實踐

譯文
開發(fā) 前端 開發(fā)工具
為了滿足業(yè)務需求,思想前衛(wèi)的公司會將 QA 嵌入到 SDLC 中。這篇文章將帶您了解應在每個開發(fā)階段引入哪些 QA 活動。

???

作者丨Lena Yakimova

譯者 | 朱鋼

策劃丨孫淑娟

【51CTO.com快譯】為了滿足業(yè)務需求,思想前衛(wèi)的公司會將 QA 嵌入到 SDLC 中。這篇文章將帶您了解應在每個開發(fā)階段引入哪些 QA 活動。

幾乎無可爭辯的,速度和創(chuàng)新是產(chǎn)品高效交付的支柱,這有助于在當今市場上取得成功。憑借順利引入新技術并更快地發(fā)布實用軟件的能力,公司走上了從 COVID-19 大流行及其后果中恢復并調(diào)整到"下一個常態(tài)"的道路上。

為了自信地做到這一點并保證軟件滿足計劃的業(yè)務需求,思想前衛(wèi)的公司將 QA 引入到了軟件開發(fā)生命周期(SDLC)中。

QA 是所有流程階段不可或缺的一部分,它有助于避免在關鍵缺陷修復、提高軟件可信度和安全性以及降低系統(tǒng)突然停機的風險方面產(chǎn)生不可預見的費用。除了改進功能外,QA 還會衡量在當前狀態(tài)下將功能發(fā)布到生產(chǎn)環(huán)境中對業(yè)務的影響,從而提高客戶忠誠度并促進整體銷售。

那么,在每個開發(fā)階段應該引入哪些 QA 活動呢?讓我們仔細閱讀本文中的答案。

SDLC 的 4 個階段中必備的最佳實踐

瀑布式、敏捷式、快速應用開發(fā) (RAD)、螺旋模型... 根據(jù)方法和產(chǎn)品的特性,開發(fā)過程中不同階段略有不同。但是,無論你的公司堅持哪種方法,在每個 SDLC 階段進行測試都變得至關重要。

這是一個真實案例:幾年前,三星召回了 250 萬部 Note7 智能手機,導致?lián)p失數(shù)十億美元。這都是因為軟件缺陷——電池管理系統(tǒng)的瓶頸——負責監(jiān)控和停止充電過程,導致過度充電和爆炸。

不幸的是,這種情況屢見不鮮。因此,為了最大限度地提高開發(fā)效率并減少因修復后期發(fā)現(xiàn)的缺陷而造成的財務和聲譽損失,我建議在每個基本開發(fā)階段考慮必要的 QA 活動。

???

一、需求收集

如果不了解目標受眾、應用解決的問題、性能、安全性、合規(guī)性和許多其他標準,就不可能規(guī)劃開發(fā)和測試工作。

考慮到修復缺陷的成本在每個階段都呈指數(shù)級增長,QA 工程師需執(zhí)行需求測試,以減少從一開始的返工,并發(fā)現(xiàn) IT 解決方案業(yè)務邏輯中的錯誤、歧義或不一致。

在測試需求時,專家確認產(chǎn)品的功能、UI、必要的硬件和軟件標準一致、清晰且無錯誤。這允許進一步創(chuàng)建無故障的測試計劃、測試用例、用例、可追溯性矩陣和其他工件。

然而,測試只是成功的一半。測試文檔的標志是其動態(tài)性質。在沒有任何更新的情況下,它逐漸變得毫無價值,這些更新是由不斷變化的需求、轉移優(yōu)先級或不斷將新代碼傳送到生產(chǎn)環(huán)境造成的。因此,除了測試之外,QA 團隊還必須及時更新測試文檔,以消除任何流程故障。

二、分析與設計

基于上一階段的結果,開發(fā)團隊設計即將推出的應用程序的架構并創(chuàng)建其原型。

為確保產(chǎn)品取得商業(yè)上的成功,QA 團隊首先進行原型測試,以根據(jù)客戶反饋及早發(fā)現(xiàn) SDLC 中的問題,并在開發(fā)開始之前引入必要的更改。通過專注于識別可能在以后導致系統(tǒng)故障的邏輯缺陷,工程師顯著減少了額外軟件創(chuàng)建過程所需的時間和財務工作。

特別關注原型的可用性測試。這只是提供引人入勝的設計的第一步,必須考慮一些限制,因為它們可能會影響現(xiàn)階段的測試結果。例如,構思不佳的顏色陣列可能會在屏幕上缺乏直觀的元素,從而使產(chǎn)品使用變得復雜。牢記它們有助于確定所需的測試并更好地掌握結果。

三、軟件開發(fā)

讓我們來看看軟件測試活動是如何有助于交付無瑕疵的產(chǎn)品。例如,單元測試單獨驗證可以在系統(tǒng)中邏輯隔離的每個應用程序組件,以確保其行為符合設計方式。

通過適當?shù)膯卧獪y試,開發(fā)人員可以自信的實現(xiàn)代碼重構,使工作流程更加敏捷,并及早發(fā)現(xiàn)軟件的問題,確保簡化集成和調(diào)試過程,并大大降低修復缺陷的成本。

經(jīng)過測試的單元現(xiàn)在形成了模塊,這些模塊反過來又創(chuàng)建了一個完整的系統(tǒng)。在單元測試之后,集成驗證可幫助軟件工程師確保由不同團隊編寫的這些系統(tǒng)組件之間彼此和諧地融合在一起。

敏捷和 DevOps 生態(tài)系統(tǒng)中的單元和集成測試通常可以自動化,以顯著縮短測試時間、最大化測試覆蓋率、多次重用相同的測試用例并避免人為因素。

???

當開發(fā)人員專注于執(zhí)行單元和集成測試時,QA 團隊會創(chuàng)建測試工具以確保高的軟件質量并為發(fā)布準備功能。為了取得成功,這里有 10 種測試類型,根據(jù)產(chǎn)品細節(jié)和業(yè)務需求,這些類型可能會派上用場:

1、功能測試

從一開始,功能測試就確保不存在可能阻礙進一步測試的關鍵問題,并保證最近添加的功能已經(jīng)完全實現(xiàn),而不會影響產(chǎn)品的邏輯。

2、性能測試

通過服務器端性能測試,QA 工程師評估系統(tǒng)是否能夠承受負載,發(fā)現(xiàn)其弱點,并提供詳細的改進建議。這有助于降低軟件 TCO 并建立有效的性能監(jiān)控。

客戶端性能 QA 會衡量 HTML 頁面的加載和呈現(xiàn)時間,并找出影響客戶體驗(繁重的界面、長的響應時間、較差的整體性能)并阻礙與和品牌進行愉快互動的問題。

3、網(wǎng)絡安全測試

基于 OWASP 方法的手動和自動漏洞評估可發(fā)現(xiàn)安全漏洞,并確保對用戶敏感數(shù)據(jù)的高度保護。通過將最佳安全措施盡早注入 SDLC,公司可以最大限度地降低惡意入侵者執(zhí)行攻擊的風險并挽救其聲譽。

4、自動化測試

由于快速質量是敏捷方法和高效產(chǎn)品交付的基石,因此采用自動化測試是更快地構建、測試和交付高質量軟件的方法。

為了實現(xiàn)這些目標,QA 工程師定義了自動化和工具包的范圍、實施所需的框架、配置環(huán)境、準備測試數(shù)據(jù)并開發(fā)腳本,分析測試結果,同時提供對自動化測試的全面支持和監(jiān)控。

5、跨瀏覽器測試

確定應用程序是否可以在不同的瀏覽器中無縫運行,這有助于提供引人入勝的用戶體驗并擴大目標受眾。為此,QA 工程師分析不同地域的瀏覽器使用情況統(tǒng)計信息,選擇最受歡迎的變體,并執(zhí)行測試以確保軟件操作的一致性。

6、跨平臺測試

兼容軟件的操作系統(tǒng)越多,公司可以吸引的客戶就越多。因此 QA 供應商會執(zhí)行測試以發(fā)現(xiàn)操作系統(tǒng)級性能、UI 不一致和特定于平臺的故障,并確保軟件在最低系統(tǒng)要求下按設計運行。

7、移動應用測試

根據(jù) Statista 的數(shù)據(jù),到 2023 年移動應用程序帶來的全球利潤將超過 9350 億美元。隨著全球下載量的增加,市場上的激烈競爭迫使公司更多地考慮其質量并引入 QA。為了提高結果的效率和準確性,提供商會在真實設備上進行測試。

8、無障礙測試

正如世衛(wèi)組織所述,有超過 10 億人(占世界人口的 15%)患有特定的身體或認知障礙,因此設計適合所有社會群體的軟件成為首要目標。通過驗證其是否符合 WCAG 2.1 或 AODA 等國際標準,公司可以照顧目標受眾并擴大其客戶群。

9、本地化測試

在滿足特定國家 / 地區(qū)的語言、文化和區(qū)域要求方面,針對國際市場的軟件首當其沖。為了定制產(chǎn)品,使其被目標受眾視為符合他們需求的獨特解決方案,QA 工程師專注于:


  • 當?shù)胤ㄒ?guī)(例如,遵守數(shù)據(jù)隱私法)
  • 文化方面(例如,避免冒犯性符號或不適當?shù)念伾?
  • 用戶體驗(例如,日期、地址和貨幣的布局)
  • 視覺材料(例如,必須符合文化期望)
  • 腳本(例如,從內(nèi)容到 UI 的所有方面都按照既定的語言規(guī)則顯示)

10、可用性測試

通過評估用戶適應應用程序設計和執(zhí)行不同任務的難易程度,QA 工程師可以發(fā)現(xiàn)他們在原型設計過程中可能忽略的缺陷,以確保用戶使用過程盡可能透明、直觀和簡單。

四、部署和維護

在期待已久的發(fā)布之前,必須進行用戶驗收測試,以確保軟件可以投入生產(chǎn),滿足所有用戶需求和業(yè)務需求,并且保證遺漏任何缺陷的可能性是最低的。

一旦達到 UAT 推出標準,團隊就會發(fā)布功能。通常每家公司都會設定自己的指標,例如成功完成測試的數(shù)量或已識別的不同嚴重性問題的百分比。

一旦發(fā)布結束,新功能即將推出,這意味著每次將代碼更改交付到生產(chǎn)環(huán)境時,QA 團隊都必須執(zhí)行回歸測試,以確保修改后的軟件部分不會影響現(xiàn)有功能。

通過分析潛在的風險區(qū)域并執(zhí)行多輪(最多三輪)回歸測試以及中間缺陷驗證,QA 工程師可以提高軟件質量并穩(wěn)定改進軟件應用程序。

使用 QA 構建可靠的 IT 產(chǎn)品

為了提供吸引目標受眾的引人入勝的軟件解決方案,公司可以將 QA 注入到整個軟件開發(fā)生命周期,而不是在開發(fā)完成后完成任務,使 QA 工程師超負荷工作。

因此,公司在整個核心 SDLC 階段堅持的基本質量保證實踐應包括:


  • 規(guī)劃期間的需求測試
  • 設計過程中的原型以及可用性驗證
  • 測試文檔的創(chuàng)建和全面性測試,以在開發(fā)階段提高產(chǎn)品質量
  • 在部署和發(fā)布后的支持階段進行 UAT 和回歸測試

當 QA 應用于復雜環(huán)境時,這些工作可以幫助組織降低運營費用,因為它們能夠及早發(fā)現(xiàn)軟件問題,從而將修復成本降至最低并提高開發(fā)速度,并且從一開始就進行徹底的測試,因此返工的可能性很小。

譯者介紹

朱鋼,51CTO社區(qū)編輯,2019年CSDN博客專家20強,2020年騰訊云+社區(qū)優(yōu)秀作者,10年一線開發(fā)經(jīng)驗,曾參與獵頭服務網(wǎng)站架構設計,企業(yè)智能客服以及大型電子政務系統(tǒng)開發(fā),主導某大型央企內(nèi)部防泄密和電子文檔安全監(jiān)控系統(tǒng)的建設,目前在BIM頭部企業(yè)從事招投標軟件開發(fā)。

原文鏈接:https://dzone.com/articles/qa-to-support-software-development-life-cycle-best

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

???


責任編輯:武曉燕 來源: 51CTO技術棧
相關推薦

2010-06-24 16:18:13

2022-05-20 10:41:22

SDLC開發(fā)模型

2009-08-12 18:39:01

軟件開發(fā)的生命周期

2010-07-06 15:30:12

RationalJazz

2021-12-14 09:00:00

IT開發(fā)運營

2011-11-24 21:25:23

ibmdw

2015-06-02 13:31:55

PaaS云應用程序軟件開發(fā)

2010-07-06 14:31:39

RationalJazz

2022-04-25 08:00:00

工具開發(fā)技術團隊

2022-09-03 08:06:44

測試開發(fā)DevOps

2023-06-09 19:01:03

軟件開發(fā)

2022-04-19 07:20:24

軟件開發(fā)安全生命周期SSDLC應用安全

2013-07-24 10:11:50

軟件工程師

2012-07-13 14:09:47

測試工程師軟件測試

2013-07-29 05:11:38

iOS開發(fā)iOS開發(fā)學習類的'生命周期'

2021-07-20 09:00:00

開發(fā)軟件債務

2013-08-16 09:45:33

2023-10-07 00:05:07

2009-05-26 17:38:43

IEEECSDA認證CSDA

2015-07-08 16:28:23

weak生命周期
點贊
收藏

51CTO技術棧公眾號