AI自動化測試:AI測試機器人即將到來
或許你已經聽說過人工智慧(AI)。自從Allen Newell 、 Herbert A. Simon和Cliff Shaw 在十九世紀五十年代寫了第一個人工智慧的程序「Logic Theorist 」,人工智慧開始逐漸被大家了解。
從歷史上來看,可以肯定的是,你並沒有經常聽說AI測試自動化。但現在事情正在發生著改變,AI自動化測試將在未來的自動化測試中發揮越來越重要的作用。
對我來說,AI自動化測試仍然是一個相對新的概念,但它是我在自動化測試領域中積極探索的一個方向。在這篇文章中,我想借這個機會來強調一下為什麼AI自動化測試如此的重要,並且將闡述AI在自動化測試中能夠發揮的作用,同時也會討論為了能最大程度地利用AI進行自動化測試我們所面臨的挑戰。
AI在測試中的作用
在如今的軟體開發中,自動化測試是必要的。對廣大的測試人員來說這是一個激動人心的時刻——每個人都認同進行全面測試的重要性。但是AI在測試中能夠有什麼作用呢?如果運用得當,它或許能夠幫助我們減少很多測試工作。理論上,在我們的測試系統中我看到了兩個及以上的可以用AI解決的潛在的問題。
首先,我們可以藉助AI來幫助我們進行自動化的測試管理和測試用例創建。它通過內置標準降低了工作量,並保持每個人工作的一致性。其次,可以使AI通過閱讀用戶故事接受標準自動生成測試代碼或偽代碼。最後,可以利用AI實現無代碼自動化測試,它會自動在您的Web或移動應用程序上創建和運行測試,而無需編寫任何代碼。
如今AI應用隨處可見,從Siri、Alexa和Google Search到Google Assistant、Slackbot等。這些AI應用中的每一個都有自己特定的角色和功能。為了讓AI能幫助我們進行測試,你需要為AI應用定義一個特定的目標,無論是自動化的創建測試用例,生成測試代碼,實現無代碼測試或其他的目標。
訓練你的AI機器人
AI的一般概念是應用程序具有理解環境、處理輸入數據並執行智能行為的能力,並且能夠學習如何自動改進自身的表現。幾年前,在Android Auto中,語音驅動的搜索已經出現。通過按下我的大眾GTI方向盤上的一個按鈕來激活Google助手,並說:「播放Chris Stapleton的音樂」,Google助手使用AI來處理輸入並執行智能操作。在幾秒鐘內,Chris Stapleton的音樂將被播放。它增加了我每天的通勤安全,並能夠更快地檢索我最喜歡的音樂藝術家。
這裡有一個教訓:最聰明的開發人員讓錯誤通過,大多數時候開發團隊是對Bug進行反應而不是預防。如果你是一個測試人員或者與測試人員一起工作,你就知道測試人員會問很多問題。要構建AI測試機器人,我們必須訓練機器人通過提問來執行智能操作和處理輸入數據,就像Google Assistant一樣。隨著我們不斷加強識別輸入模式和行為的演算法,AI應用程序會變得越來越好。
AI測試機器人面臨的挑戰
AI自動化測試如果要真正的應用於實踐,仍然存在一些需要被解決的問題。當你嘗試構建AI應用程序進行測試時,你可能面臨的挑戰和問題是:
1.識別、完善所需要的演算法
2.收集大量的輸入數據來訓練AI應用程序
3.對於輸入數據AI應用程序如何處理
4.即使數據輸入是新的,機器人也可以重複執行任務。
5.訓練你的AI應用程序的過程永遠不會結束,因為我們需要不斷地改進演算法
在許多方面,人工智慧測試就像是以身作則。 這是一個艱巨的過程,但是如果做得好的話,這個過程也是值得的
結束語
AI不再只是流行語,它實際地在生活中應用著。同樣它也能在自動化測試領域中所應用,就像它在其他領域的所帶來的作用。
如果您花一點時間思考我們每天使用的所有技術,AI已經開始默默融入我們的生活。 做好準備! 自動化軟體測試的角色正處於人工智慧急劇變化的邊緣,AI自動化測試的時代即將到來。
更多測試技術文章,請前往51Testing軟體測試網-中國軟體測試人的精神家園。
上文內容不用於商業目的,如涉及知識產權問題,請權利人聯繫博為峰小編(021-64471599-8017),我們將立即處理。
推薦閱讀:
※軟體測試基礎資料分類整理 | 測試理論文檔
※App測試點總結(1)
※提高處理BUG效率第一步:提高測試工程師排查BUG能力