是德科技軟件測試自動化事業(yè)部總經(jīng)理探討軟件質(zhì)量對于數(shù)字世界的重要意義
2022-01-21
作者:是德科技軟件測試自動化事業(yè)部總經(jīng)理 Gareth Smith 博士
來源:是德科技
新冠疫情加快了數(shù)字化轉(zhuǎn)型的步伐,軟件在我們的工作、生活和學(xué)習(xí)中已經(jīng)在發(fā)揮著至關(guān)重要的作用。 全球的數(shù)字化程度越來越高,人們對于數(shù)字產(chǎn)品的依賴性也與日俱增,這一切都讓軟件質(zhì)量成為眾所關(guān)注的焦點(diǎn)。
數(shù)字化轉(zhuǎn)型的速度沒有放緩的跡象,基于軟件的創(chuàng)新和發(fā)展仍將持續(xù)。 據(jù)估計,軟件質(zhì)量問題在 2020 年給美國經(jīng)濟(jì)造成的損失達(dá)到了驚人的 2 萬億美元[1] ,因此我們必須找到有效的方法,在軟件發(fā)布速度和質(zhì)量之間取得平衡。
為了進(jìn)一步了解軟件質(zhì)量的重要性,是德科技軟件測試自動化部門總經(jīng)理 Gareth Smith 博士進(jìn)行分享,探討為什么說軟件質(zhì)量決定了業(yè)務(wù)能否取得成功以及我們應(yīng)當(dāng)采取哪些措施來提升軟件質(zhì)量。
1.為什么軟件質(zhì)量至關(guān)重要?
在過去十年間,軟件廠商更多關(guān)注的是如何盡快發(fā)布新的應(yīng)用和服務(wù)上,以期跟上快速變化的需求并支持?jǐn)?shù)字化轉(zhuǎn)型。 然而,對交付速度的過度追求往往導(dǎo)致軟件質(zhì)量不盡完善。
在數(shù)字優(yōu)先的世界,軟件質(zhì)量至關(guān)重要。例如,未被發(fā)現(xiàn)的缺陷可能會引發(fā)系統(tǒng)宕機(jī),云平臺配置錯誤可能導(dǎo)致數(shù)據(jù)泄露或數(shù)據(jù)丟失。軟件缺陷極大地增加了開發(fā)成本。在軟件發(fā)布后再去查找和糾正缺陷,成本會遠(yuǎn)遠(yuǎn)高于在設(shè)計/開發(fā)階段這么做。
2.如何提升自己的軟件質(zhì)量?
在快速開發(fā)軟件的同時,軟件廠商必須重視測試和監(jiān)控,才能提供流暢的高質(zhì)量(全渠道)數(shù)字體驗(yàn),成功獲得用戶認(rèn)可。新一代軟件測試平臺通過整合最新 AI 技術(shù),滿足這一要求。AI 可以從實(shí)際應(yīng)用軟件的使用情況以及歷史錯誤模式中學(xué)習(xí)經(jīng)驗(yàn)教訓(xùn),掌握哪些應(yīng)用軟件特性產(chǎn)生了最關(guān)鍵的業(yè)務(wù)成果。平臺可以自動生成測試,重點(diǎn)考察應(yīng)用軟件中對業(yè)務(wù)成功起到?jīng)Q定性作用的用戶旅程。DevOps 框架內(nèi)的這種端到端智能測試自動化使得企業(yè)能夠提高團(tuán)隊(duì)的工作效率,同時更快交付高質(zhì)量軟件。
3.DevOps 對測試策略有何影響?是德科技的智能自動化平臺起到了什么作用?
DevOps 通過破除不同團(tuán)隊(duì)之間的壁壘實(shí)現(xiàn)協(xié)調(diào)和協(xié)作,從而以更快的速度生產(chǎn)更好、更可靠的產(chǎn)品。DevOps 理念讓團(tuán)隊(duì)能夠?qū)ψ约洪_發(fā)的應(yīng)用軟件更加充滿信心,能夠更好地滿足客戶需求,更快地實(shí)現(xiàn)業(yè)務(wù)目標(biāo)。
DevOps 的成功與測試自動化有著內(nèi)在的聯(lián)系,因?yàn)槊鎸y試范圍越來越廣、發(fā)布頻次越來越快的趨勢,手動測試無法滿足測試需求。而且,僅僅是自動執(zhí)行少數(shù)幾項(xiàng)測試或管理流程也還是不夠。要想在數(shù)字時代取得成功,開發(fā)和測試自動化工程師必須與運(yùn)營團(tuán)隊(duì)通力合作,才能確保軟件和應(yīng)用讓用戶滿意。
是德科技幫助測試團(tuán)隊(duì)以智能的方式在整個生命周期內(nèi)自動運(yùn)行測試,這個過程包括創(chuàng)建測試?yán)?zhí)行測試以及自動分析結(jié)果。我們基于 AI 的平臺可以加快開發(fā)速度,幫助開發(fā)團(tuán)隊(duì)查看和分析用戶瀏覽數(shù)字資產(chǎn)的方式和特點(diǎn)。這些分析結(jié)果會反饋到測試自動化流程中,從而顯著提升軟件的質(zhì)量和可靠性。
4.AI 能夠?yàn)闇y試自動化策略帶來哪些改變?
AI 賦能測試自動化更進(jìn)一步超越基于規(guī)則的簡單自動化范疇。它利用算法來高效訓(xùn)練使用大數(shù)據(jù)集的系統(tǒng)。通過應(yīng)用推理、解決問題和機(jī)器學(xué)習(xí)等技能,人工智能驅(qū)動的測試自動化工具可以模仿手動操作,讓軟件測試人員可以擺脫繁瑣的測試任務(wù)。
智能測試自動化能夠評估數(shù)字產(chǎn)品的功能、性能和可用性,而不是簡單地驗(yàn)證代碼。該工具集人工智能、機(jī)器學(xué)習(xí)和分析能力于一身,不僅能夠監(jiān)測用戶體驗(yàn)(UX),還能對應(yīng)用軟件和真實(shí)數(shù)據(jù)展開分析,從而自動生成并執(zhí)行用戶旅程。得益于此,用戶能夠以一種更智能的方式來持續(xù)測試軟件和應(yīng)用,無論它們在怎樣的環(huán)境下運(yùn)行。
基于人工智能的工具可以避免測試覆蓋范圍發(fā)生重疊,而且能夠通過提升測試的可預(yù)見性來優(yōu)化現(xiàn)有的測試工作,還能夠加快從缺陷檢測到缺陷預(yù)防這個過程, 從而進(jìn)一步提升軟件質(zhì)量。
5.為什么要轉(zhuǎn)向持續(xù)質(zhì)量控制?
對數(shù)字化的依賴使得測試必須從以驗(yàn)證為目的的活動轉(zhuǎn)變?yōu)槌掷m(xù)的質(zhì)量控制流程。團(tuán)隊(duì)必須將質(zhì)量控制納入軟件開發(fā)的每個階段,并且讓整個流程自動化運(yùn)轉(zhuǎn)。持續(xù)的質(zhì)量監(jiān)控指的是在整個軟件開發(fā)生命周期(SDLC)中采用系統(tǒng)性方法來查找和修復(fù)軟件缺陷。這樣可以盡早發(fā)現(xiàn)和解決問題,從而降低出現(xiàn)安全漏洞和錯誤的風(fēng)險。
6.提升軟件質(zhì)量是否需要配備更多的技術(shù)資源?
不需要。人工智能讓軟件的設(shè)計、開發(fā)和部署變得更迅速、更有效、更經(jīng)濟(jì)。機(jī)器人不會取代程序員。相反,人工智能驅(qū)動的工具讓項(xiàng)目經(jīng)理、業(yè)務(wù)分析師、軟件開發(fā)人員和測試人員可以更高效地工作并獲得更有成效的結(jié)果,讓他們能夠以更低的成本更快開發(fā)出質(zhì)量更高的軟件。
是德科技的智能自動化平臺使得普通開發(fā)人員也能輕松使用我們的無代碼解決方案,利用人工智能和分析技術(shù)在整個測試過程中自動執(zhí)行測試。它能夠讓行業(yè)專家變身為自動化工程師。AI 和 ML 負(fù)責(zé)腳本編寫和維護(hù),因?yàn)闄C(jī)器與人類測試人員不一樣,它們可以在幾分鐘內(nèi)創(chuàng)建并執(zhí)行幾千項(xiàng)測試。
7.是德科技自動化平臺能為測試自動化帶來怎樣的轉(zhuǎn)變?
是德科技的智能自動化平臺是一款完全沒有侵入性的測試工具,無需用戶接觸源代碼或者是在被測系統(tǒng)(SUT)上安裝任何軟件,即可確保全面的測試覆蓋。我們的技術(shù)不涉及應(yīng)用軟件,用戶無需了解底層技術(shù)堆棧即可發(fā)現(xiàn)并報告性能問題、故障和其他錯誤。這樣一款工具對于醫(yī)療、政府和國防等受管制的行業(yè)至關(guān)重要。
AI 驅(qū)動的自動化可以在從 UI 到 API 再到數(shù)據(jù)庫的任意層面上,對任何器件、操作系統(tǒng)或?yàn)g覽器上的任何技術(shù)展開測試。測試范圍既包括極其現(xiàn)代化、瞬息萬變的網(wǎng)站,也涵蓋傳統(tǒng)的后臺系統(tǒng)以及銷售點(diǎn)和命令與控制系統(tǒng)。
智能自動化的首要目標(biāo)是了解應(yīng)用或軟件的特性會給客戶體驗(yàn)和業(yè)務(wù)成果造成怎樣的影響。除此之外,它還能夠幫助我們發(fā)現(xiàn)有待改進(jìn)的地方,并預(yù)測這樣的改變對業(yè)務(wù)的影響。
8.在您看來,未來會出現(xiàn)哪些與軟件質(zhì)量相關(guān)的趨勢?
隨著數(shù)字化轉(zhuǎn)型的步伐加快,軟件質(zhì)量的重要性將日益凸顯。數(shù)字化機(jī)構(gòu)必須持續(xù)監(jiān)控數(shù)字資產(chǎn)的性能以及用戶的交互方式,才能確保提供盡可能最佳的體驗(yàn)。我們認(rèn)為,未來三年,QA 領(lǐng)域?qū)⒊霈F(xiàn)以下五大趨勢:
1.質(zhì)量保證(QA)將成為利潤中心而不是合規(guī)職能。您必須能夠率先發(fā)布軟件,并且您的軟件必須擁有令人贊不絕口的用戶體驗(yàn)、完美無瑕的功能和卓爾不凡的響應(yīng)能力,否則您的企業(yè)可能會陷入困境或失敗。但是,只要您能夠想辦法實(shí)現(xiàn)這些目標(biāo),成功就大為可期。QA 讓您能夠持續(xù)衡量是否達(dá)成了這些目標(biāo),因此它會成為利潤中心,而不僅僅只是一項(xiàng)合規(guī)職能。
2.用戶體驗(yàn)將成為企業(yè)實(shí)現(xiàn)差異化的關(guān)鍵因素。用戶體驗(yàn)就好比是展示櫥窗,您需要通過它來吸引客戶并保留客戶。您需要將客戶體驗(yàn)打造得盡善盡美,否則您就會與競爭對手拉開距離。
3.性能。無論何時,一旦性能出現(xiàn)超過 3 秒的時延,很可能就會對您的業(yè)務(wù)造成重大打擊。 千禧一代不夠有耐心,而 Z 世代的耐心則更少!客戶能夠接受的時延頂多只有 3 秒,超過這一時間,他們就會轉(zhuǎn)向您的競爭對手。您需要通過持續(xù)有效的負(fù)載和性能測試來確保您的業(yè)務(wù)規(guī)模和響應(yīng)能力。
4.數(shù)字克星(Digital Nemesis)。測試必須采取更加智能的方式,數(shù)字克星能夠在采用了人工智能驅(qū)動的“混沌工程”系統(tǒng)中發(fā)現(xiàn)和突出顯示弱點(diǎn),并不知不覺地予以修復(fù)。無論是功能、性能、用戶體驗(yàn)方面的弱點(diǎn)還是安全性弱點(diǎn),都不在話下。
5. 端到端融合測試。從硬件到用戶體驗(yàn)。過去那種分層或分類型進(jìn)行測試的方式已經(jīng)一去不復(fù)返。我們需要測試 5G 手機(jī)、5G 基站、網(wǎng)絡(luò)負(fù)載、應(yīng)用的負(fù)載處理能力,以及功能、API、性能、安全性、 iOS、安卓、云、Windows 等等。但是如果對整個端到端系統(tǒng)展開測試(包含所有層、端到端工作流程和交互點(diǎn))會怎么樣?如果不這樣做的話,我們就沒有對實(shí)際使用的系統(tǒng)真正進(jìn)行測試;我們就無法真正隔離問題,因?yàn)槿绻麤]有不同層之間的交互或者當(dāng)交互測試條件不同時,問題可能不會發(fā)生。因此,我們現(xiàn)在需要通過多層融合測試——將硬件、網(wǎng)絡(luò)、軟件和用戶體驗(yàn)測試人員的技能整合到一個端到端框架中――實(shí)現(xiàn)更高水平的測試。