針對本文探討的軟件自動化測試項(xiàng)目,挑選工具的重要評判標(biāo)準(zhǔn)有如下幾點(diǎn):

  1.工具成熟性,復(fù)雜工作流軟件白動化測試方法的研究第二章軟件測試?yán)碚撆c技術(shù)基礎(chǔ)成熟性指工具是否有著足夠廣泛的使用度,是否經(jīng)歷過足夠的時(shí)間考驗(yàn),是否經(jīng)過足夠?qū)嵺`的檢驗(yàn)。

  由于WOA軟件自動化測試項(xiàng)目并非一個(gè)短期的、試驗(yàn)性的項(xiàng)目,而是一個(gè)需要長期進(jìn)行并推廣的項(xiàng)目。因此,冷門或是新穎的工具并不合適此項(xiàng)目。此類工具的穩(wěn)定性以及未來的發(fā)展性沒有保障。對于長期的軟件自動化測試項(xiàng)目,風(fēng)險(xiǎn)過大。

  2.資料全面性,由于在軟件自動化測試項(xiàng)目的進(jìn)行過程中,必然會遇到各類問題。若工具的資料不夠全面,沒有足夠好的產(chǎn)品服務(wù),沒有強(qiáng)大的社區(qū)交互支持,那么,每次問題的解決過程都將變得非常艱苦,容易造成時(shí)間的大量浪費(fèi)。項(xiàng)目進(jìn)度難以評估,成本難以控制。

  3.工具對象識別能力,雖然自動化工具未必是基于Gu一 (Graphieuser,s一nterfaee,用戶圖形界面)進(jìn)行的,但基于GUI進(jìn)行的自動化測試有其明顯的好處?能夠更好的模擬真實(shí)的用戶操作。不但可以測試到底層的問題,還能測到表層問題,如頁面的巧錯(cuò)誤等。

  因此,一個(gè)自動化測試工具的識別對象能力非常重要。一個(gè)的自動化測試工具應(yīng)當(dāng)擁有良好的控件識別機(jī)制,并有快速準(zhǔn)確的識別能力。自動化測試工具不但應(yīng)該能夠良好識別頁面上的各種常見對象:如文字、超鏈接、圖片、文本框、密碼框、單選框、下拉框、頁面彈出框等等。對于一些系統(tǒng)自定義控件,也應(yīng)該支持自定義描述,提供對象映射功能等。由于對象在頁面上的表現(xiàn)不同,并不是所有的工具和框架都能處理好各種情況,因此控件識別方面需要進(jìn)行仔細(xì)的評估。

  4.腳本語言支持能力,不同的自動化工具使用的編程語言不盡相同,常見的有vBseriPt、Javaseript、Java、e#、Rubv等。

  對于腳本語合首先應(yīng)考慮其功能是否可以滿足需求,是否足夠強(qiáng)大。Java、c#之類的高級語言功能上優(yōu)勢明顯,vBscriPt、」avascriPt等腳本語言則需進(jìn)行仔細(xì)評估。

  5.工具的集成開發(fā)環(huán)境,(Integratedoeve一oping〔nvironment,集成開發(fā)環(huán)境)對于腳本開發(fā)非常重要,一個(gè)良好的舊〔對于生產(chǎn)效率的提升是巨大的。舊〔應(yīng)提供智能提示、自動完成、快速編譯查錯(cuò)、方便而又強(qiáng)大的調(diào)試等基本功能。

  6.團(tuán)隊(duì)協(xié)作與版本控制,復(fù)雜工作流軟件自動化測試方法的研究第二章軟件測試?yán)碚撆c技術(shù)纂礎(chǔ)在軟件自動化測試過程中,需要團(tuán)隊(duì)協(xié)作。因此,一個(gè)良好的版本控制環(huán)境非常重要。能夠使用遷出、遷入機(jī)制將自動化內(nèi)容管理起來。保存每個(gè)遷入的版本,在需要回退的時(shí)候能夠方便的找到歷史版本并進(jìn)行回退。這樣能避免誤操作帶來的損失,才能讓工作中的協(xié)作更為出色。

  7.執(zhí)行控制與執(zhí)行報(bào)告,自動化測試與功能測試一樣,需要進(jìn)行多次的“執(zhí)行”,測試執(zhí)行能力對于自動化測試工具而言非常重要。由于自動化測試的優(yōu)勢之一便是可以進(jìn)行無人值守的“自動”執(zhí)行。因此,工具提供的執(zhí)行方式應(yīng)當(dāng)多種多樣,不但需要能夠方便的進(jìn)行手動驅(qū)動,還需提供自動驅(qū)動,定時(shí)驅(qū)動等功能。此外,自動化工具還應(yīng)一記錄每次運(yùn)行的詳情,能夠自動生成內(nèi)容詳細(xì)的,可以定制的測試報(bào)告。

  8.工具容錯(cuò)處理能力,自動化腳本運(yùn)行中,會有多種不確定的因素的干擾,如常見的網(wǎng)絡(luò)和服務(wù)器穩(wěn)定性問題等。工具應(yīng)提供恢復(fù)機(jī)制,能夠讓測試人員對于意外情況進(jìn)行自定義配置,關(guān)聯(lián)特定的恢復(fù)清理腳本。測試用例的編寫與自動化工具的選擇都是決定軟件自動化項(xiàng)目成敗的重要環(huán)節(jié),下一章將結(jié)合本文著重介紹的WOA項(xiàng)目,具體闡述該項(xiàng)目的需求、工具選擇、設(shè)計(jì)與具體實(shí)現(xiàn)。