AI軟件測(cè)試的利與弊以及帶來(lái)的挑戰(zhàn)
軟件測(cè)試對(duì)于確保使用應(yīng)用程序客戶的滿意度是十分必要的,人工智能可以在軟件測(cè)試中,解決大部分重復(fù)性任務(wù),那為什么人工智能不能完全替代呢?
一、軟件測(cè)試的背景
Background of Software Testing
軟件測(cè)試對(duì)于確保使用應(yīng)用程序客戶的滿意度是十分必要的。
測(cè)試是指在一些特定條件下觀察應(yīng)用程序,且在測(cè)試過(guò)程中測(cè)試人員已經(jīng)知道要實(shí)施相同的門檻和風(fēng)險(xiǎn)。同時(shí),測(cè)試有助于保護(hù)應(yīng)用程序,避免潛在的可能會(huì)對(duì)應(yīng)用程序和將來(lái)的組織,造成危害的危險(xiǎn)因素。而軟件測(cè)試的下一步是軟件調(diào)試,但只有在經(jīng)過(guò)徹底的測(cè)試之后才能進(jìn)行軟件調(diào)試。
二、測(cè)試與人工智能
任何一個(gè)復(fù)雜任務(wù),如果能夠被測(cè)試者不假思索地解決,都是人工智能的候選之一。
人工智能的一般定義是指:機(jī)器能夠獨(dú)立理解環(huán)境并執(zhí)行輸入數(shù)據(jù),完成智能工作和學(xué)習(xí)如何自動(dòng)提高自身工作水平的能力。
1. 為什么在軟件測(cè)試中我們需要人工智能
Why do we Need AI in Software Testing
將近80%的測(cè)試活動(dòng)是對(duì)軟件已經(jīng)進(jìn)行過(guò)的測(cè)試的重復(fù),這會(huì)消耗了大量的人力和時(shí)間。這種現(xiàn)象在軟件測(cè)試中十分常見,隨著項(xiàng)目的擴(kuò)展,參數(shù)也會(huì)增加,從而會(huì)導(dǎo)致給測(cè)試團(tuán)隊(duì)帶來(lái)額外的工作量,這可能已經(jīng)超出他們的能力和工作時(shí)間的范圍之外了。同時(shí)手動(dòng)測(cè)試還會(huì)面臨可伸縮性的問(wèn)題,這會(huì)需要對(duì)多臺(tái)機(jī)器進(jìn)行管理,這種方法復(fù)雜又繁瑣。
但是,人工智能卻可代替以上方法,可通過(guò)以下方式來(lái)解決這些問(wèn)題:
- 使用人工智能機(jī)器,80%的重復(fù)性任務(wù)可以由人工智能機(jī)器人完成,剩下的20%工作可以由人類利用他們的創(chuàng)造力和推理能力去完成。因此,人工智能可以做重復(fù)性的任務(wù),如:測(cè)試數(shù)據(jù)的數(shù)量、回歸測(cè)試等,而測(cè)試人員可以專注于處理類似于系統(tǒng)集成的創(chuàng)造性的和困難的任務(wù)。
- 使用人工智能機(jī)器人,測(cè)試人員可以重構(gòu)測(cè)試以合并新的參數(shù),這會(huì)使得測(cè)試的覆蓋率增加卻不會(huì)給測(cè)試團(tuán)隊(duì)帶來(lái)額外的工作量。
- 人工智能可以自動(dòng)創(chuàng)建測(cè)試用例,這降低了使用內(nèi)置標(biāo)準(zhǔn)的工作級(jí)別(LOE)。
- AI通過(guò)理解用戶接受標(biāo)準(zhǔn)自動(dòng)生成測(cè)試代碼或偽代碼,測(cè)試自動(dòng)化可以節(jié)省大量的時(shí)間和成本。
- 人工智能還可以進(jìn)行無(wú)代碼測(cè)試自動(dòng)化,它可以在你的web或移動(dòng)應(yīng)用程序上自動(dòng)創(chuàng)建和運(yùn)行測(cè)試,而無(wú)需編寫任何代碼。
- 由于人工智能機(jī)器人可以全天候工作,它們可以在任何需要的時(shí)候幫助調(diào)試項(xiàng)目,因此測(cè)試無(wú)需人工干預(yù)也可以運(yùn)行更長(zhǎng)的時(shí)間。
2. AI 的利與弊
Pros and cons of AI
優(yōu)點(diǎn):
- 人工智能的優(yōu)勢(shì)在于能夠每天24小時(shí)不累地執(zhí)行重復(fù)性任務(wù),而且在代碼中出現(xiàn)錯(cuò)誤比率要遠(yuǎn)遠(yuǎn)低于人類操作。
- 人工智能機(jī)器人能夠正確地理解客戶機(jī)的需求,并且能夠比人類測(cè)試人員更快地生成數(shù)百個(gè)測(cè)試用例的代碼。
缺點(diǎn):
人類是復(fù)雜的、不可預(yù)測(cè)的,人工智能還不夠成熟,無(wú)法復(fù)制人類用戶的經(jīng)驗(yàn),而所有的復(fù)雜性隨之而來(lái)。
研究顯示:85%的客戶在移動(dòng)應(yīng)用程序開發(fā)經(jīng)驗(yàn)不足的情況下,可能會(huì)停止與一家公司的合作。
所以第一次做對(duì)是非常重要的,人工智能還有很長(zhǎng)的路要走,才能準(zhǔn)確地復(fù)制和測(cè)試應(yīng)用程序或網(wǎng)站所使用的每個(gè)場(chǎng)景和環(huán)境,包括網(wǎng)速、當(dāng)?shù)靥鞖?、基礎(chǔ)設(shè)施、時(shí)間等多種因素。
3. AI-powered應(yīng)用程序帶來(lái)的挑戰(zhàn)
Challenges with AI-powered Applications
在嘗試構(gòu)建以AI為動(dòng)力的測(cè)試應(yīng)用程序時(shí),可能面臨的挑戰(zhàn)和可能的問(wèn)題是:
- 識(shí)別,完善所需的所有算法。
- 收集大量的輸入數(shù)據(jù)來(lái)訓(xùn)練機(jī)器人。
- 機(jī)器人如何處理輸入數(shù)據(jù)。
- 機(jī)器人會(huì)重復(fù)任務(wù),即使數(shù)據(jù)輸入是新的。
- 訓(xùn)練機(jī)器人的過(guò)程永遠(yuǎn)不會(huì)結(jié)束,因?yàn)樗惴ㄕ徊?斷改進(jìn)。
多角度來(lái)講,人工智能測(cè)試是一個(gè)漫長(zhǎng)的過(guò)程,但如果做得好,將會(huì)發(fā)揮很重要的作用。
作者:陳迪 Derek,Testin云測(cè)SaaS運(yùn)營(yíng)總監(jiān)。
本文由 @陳迪 Derek? 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來(lái)自Unsplash,基于CC0協(xié)議
- 目前還沒評(píng)論,等你發(fā)揮!