AI智能是這兩年互聯(lián)網(wǎng)行業(yè)口號喊的最響亮的項目,AI簡單的來說就是一個離開人類的操作和控制,利用程序代碼和數(shù)據(jù)分析為依托實現(xiàn)自動智能化的效果。
AI智能讓一個搜索引擎公司(百度)為之瘋狂,可見其中的深奧與未來發(fā)展。讓大家認為的騙子瘋子賈躍亭,能一次又一次的死而復活,可見AI的無與倫比的魅力。
其實AI已經(jīng)進入人類日常生活中了,例如智能手機Siri,Alexa語音接口,華為手機AI智能拍照,車站機場掃描等。通過大數(shù)據(jù)和數(shù)據(jù)科學實現(xiàn)數(shù)據(jù)存儲的進步,實現(xiàn)最低誤差和最高效率。
AI智能的實現(xiàn),需要龐大的數(shù)據(jù)和硬件設施,包括大量的人力。一步一步檢測,一步一步完善,一步一步接近智能。除了開發(fā)團隊的付出,測試團隊更要嚴謹把關(guān),一個小小的BUG都可能讓智能變智殘。所以當涉及到AI系統(tǒng)的測試時,我們測試團隊決不能松懈!
1、人工智能測試與傳統(tǒng)軟件測試有什么不同?簡單來說,具有AI的系統(tǒng)其實就是一個軟件,但這種軟件具有相應學習和改變其行為的能力。傳統(tǒng)的軟件功能測試涉及對給定輸入集的預期輸出與實際輸出的測試。在人工智能的情況下,預期輸出可能隨著機器學習在一段時間內(nèi)的進展而變化。因此,人工智能系統(tǒng)測試不同于傳統(tǒng)的軟件測試,測試人員應該準備好接受這種AI測試程序。
2、AI系統(tǒng)的測試輸出是什么?對于同一組輸入,人工智能中的輸出并不總是相同。因此,理解系統(tǒng)的底層——機器學習模型,并相應地更新測試用例非常重要。測試人員應該了解當數(shù)據(jù)輸入系統(tǒng)時機器將如何學習和表現(xiàn)。測試人員應該能夠在正面和負面情景中測試AI系統(tǒng)的行為。
3、測試AI系統(tǒng)的法律和道德要求還記得好萊塢科幻電影《機械公敵》里的劇情嗎?人類發(fā)明了超過人類本身的高級智能系統(tǒng)和機械人,結(jié)果差點造成人類被毀滅。雖然有夸張手段,但是AI智能確實是能威脅到人類自己的一個亦正亦邪產(chǎn)物。所以,在設計測試用例和場景之前,應該完全審查法律、道德和社會要求。測試人員有責任通過進行可能導致法律、道德和社會問題的負面測試來測試AI系統(tǒng)的這些方面。由此可見AI系統(tǒng)測試非常關(guān)鍵,應該非常仔細地進行,以確保我們正在構(gòu)建對人類有用的機器。
4、AI算法測試在AI中,機器分析數(shù)據(jù)模式并使用這些模式來構(gòu)建規(guī)則,也稱為啟發(fā)式規(guī)則。這是人類大腦所做的類似操作,有助于人類做出決定。機器在加載數(shù)據(jù)并分析模式后,它會了解模式,并在收到模式時自行更新模式。因此,機器的行為及其AI算法不會總是表現(xiàn)得相同,因此我們不能指望輸出始終是100%完美的。它取決于機器基于數(shù)據(jù)模式在一段時間內(nèi)發(fā)展起來的啟發(fā)式方法。
5、測試數(shù)據(jù)以測試AI算法機器學習是人工智能的一部分,機器根據(jù)數(shù)據(jù)的類型和輸入的模式來構(gòu)建自己的知識。測試人員應仔細選擇他們的測試數(shù)據(jù)來測試機器學習,以便他們輸送到機器的數(shù)據(jù)模式應該與AI系統(tǒng)的預期輸出相匹配。
6、AI架構(gòu)和設計AI系統(tǒng)測試人員應該對AI架構(gòu)以及系統(tǒng)設計有充分的了解。這是因為在知道輸出隨著輸入數(shù)據(jù)模式到AI系統(tǒng)的變化而變化的事實之后,它將幫助測試人員設計其測試用例。因此,將AI系統(tǒng)作為黑盒測試應該涉及架構(gòu)和系統(tǒng)設計方面的知識。
7、需要嚴格的測試 AI 系統(tǒng)AI系統(tǒng)的行為與傳統(tǒng)軟件不同,因為它們具有學習能力,因為它們可以提供數(shù)據(jù)。因此,為了對AI系統(tǒng)進行深入分析,在以不同模式批量提供數(shù)據(jù)之后執(zhí)行嚴格測試非常重要。更有意義的數(shù)據(jù)被饋送到機器,它將開發(fā)啟發(fā)式,機器可以執(zhí)行決策,這是測試人員可以準確測試機器行為的地方。
8、輸入相同但輸出與以前不同這是 AI 系統(tǒng)的理解行為,測試用例不能被聲明為失敗,因為實際的功能測試應該基于模式、規(guī)則和啟發(fā)式而不是針對同一組輸入的行為。在人工智能機器中相應地學習和改變其行為。
9、輸出管理至關(guān)重要在AI中,可以通過向其提供數(shù)據(jù)模式來動態(tài)地改進AI算法。測試機制可以作為訓練AI系統(tǒng)并立即研究其影響的機會。訓練有素的機器即改進的算法可以直接用于生產(chǎn)。但是,我們需要確保機器具有所需的知識。
10、回歸測試該數(shù)據(jù)集可用于之前測試過機器模式的回歸測試。但重復測試用例可能不會一遍又一遍地獲得相同的結(jié)果。因此,除非它是為一個全新的人工智能機器做的,否則回歸測試可能不那么有效。回歸測試應該基于AI算法行為,對被饋送到系統(tǒng)的數(shù)據(jù)集的測試。
新夢想軟件測試總結(jié):AI測試不同于傳統(tǒng)的軟件測試,測試人員在測試任何AI系統(tǒng)之前都要考慮到上面十點,避免所測之物出現(xiàn)BUG,更加要避免自己身上出現(xiàn)工作BUG。