本發(fā)明涉及自動化測試領(lǐng)域,更具體地說,涉及一種web頁面的自動化測試方法及裝置。
背景技術(shù):
目前,一個產(chǎn)品正式投入使用前,需要經(jīng)過集成測試、功能測試、回歸測試等幾輪測試,同時又要在測試環(huán)境、生產(chǎn)環(huán)境等多套環(huán)境下進(jìn)行測試,測試工作量巨大。如何把有限的測試資源從重復(fù)性的測試工作中解放出來是當(dāng)前各軟件公司都面臨到的問題,而自動化測試就是解決該問題的唯一辦法。目前市場上大部分自動化測試工具都需要測試人員編寫相關(guān)代碼來完成,而這對無開發(fā)經(jīng)驗的測試人員來說難度巨大,幾乎是不可能完成的一項任務(wù),最終導(dǎo)致自動化測試無法在實際工作中使用。
因此,如何讓無開發(fā)經(jīng)驗的測試人員快速上手自動化測試工作,是本領(lǐng)域技術(shù)人員需要解決的問題。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種web頁面的自動化測試方法及裝置,以實現(xiàn)簡單快速的執(zhí)行自動化測試。
為實現(xiàn)上述目的,本發(fā)明實施例提供了如下技術(shù)方案:
一種web頁面的自動化測試方法,包括:
獲取自動化測試的基礎(chǔ)參數(shù);所述基礎(chǔ)參數(shù)中包括測試Excel文件,所述測試Excel文件中包括測試行為與測試數(shù)據(jù)分離的多個測試用例sheet;
解析所述基礎(chǔ)參數(shù)中測試Excel文件的測試用例sheet;
啟動自動化測試驅(qū)動程序,調(diào)用每個測試用例sheet對瀏覽器進(jìn)行自動化測試,并在測試結(jié)束后生成自動化測試報告。
其中,所述解析所述基礎(chǔ)參數(shù)中測試Excel文件的測試用例sheet,包括:
S11、利用所述基礎(chǔ)參數(shù)判斷是否存在特定文件列表;
若存在,則加載特定文件列表,將加載的特定文件列表作為目標(biāo)文件列表,并繼續(xù)執(zhí)行S12;若不存在,則加載全部文件列表,將加載的全部文件列表作為目標(biāo)文件列表,并繼續(xù)執(zhí)行S12;
S12、利用所述基礎(chǔ)參數(shù)判斷目標(biāo)文件列表中是否存在特定測試用例sheet列表;若存在,則解析特定測試用例sheet列表中的測試用例sheet;若不存在,則解析全部測試用例sheet。
其中,所述調(diào)用每個測試用例sheet對瀏覽器進(jìn)行自動化測試,包括:
S21、開啟瀏覽器,并執(zhí)行目標(biāo)單測試用例sheet;
S22、判斷所述目標(biāo)單測試用例sheet是否執(zhí)行成功;
若是,則記錄執(zhí)行成功日志,并執(zhí)行S23;若否,則進(jìn)行瀏覽器截圖保存,并記錄執(zhí)行失敗日志,并執(zhí)行S23;
S23、關(guān)閉所述瀏覽器,判斷是否存在未執(zhí)行測試用例sheet;
若存在,則調(diào)取下一未執(zhí)行單測試用例sheet作為目標(biāo)單測試用例sheet,并繼續(xù)執(zhí)行S21;若不存在,則測試結(jié)束。
其中,每個測試用例sheet中包括與一個測試行為對應(yīng)的多個測試數(shù)據(jù)。
其中,所述在測試結(jié)束后生成自動化測試報告,包括:
在測試結(jié)束后生成HTML格式的可視化測試報告。
一種web頁面的自動化測試裝置,包括:
基礎(chǔ)參數(shù)獲取模塊,用于獲取自動化測試的基礎(chǔ)參數(shù);所述基礎(chǔ)參數(shù)中包括測試Excel文件,所述測試Excel文件中包括測試行為與測試數(shù)據(jù)分離的多個測試用例sheet;
解析模塊,用于解析所述基礎(chǔ)參數(shù)中測試Excel文件的測試用例sheet;
自動化測試模塊,用于啟動自動化測試驅(qū)動程序,調(diào)用每個測試用例sheet對瀏覽器進(jìn)行自動化測試;
報告生成模塊,用于在測試結(jié)束后生成自動化測試報告。
其中,所述解析模塊包括:
第一判斷模塊,用于利用所述基礎(chǔ)參數(shù)判斷是否存在特定文件列表;
第一加載模塊,用于存在特定文件列表時加載特定文件列表,將加載的特定文件列表作為目標(biāo)文件列表;
第二加載模塊,用于不存在特定文件列表時加載全部文件列表,將加載的全部文件列表作為目標(biāo)文件列表;
第二判斷模塊,用于利用所述基礎(chǔ)參數(shù)判斷目標(biāo)文件列表中是否存在特定測試用例sheet列表;
第一解析模塊,用于存在特定測試用例sheet列表時,解析特定測試用例sheet列表中的測試用例sheet;
第二解析模塊,用于不存在特定測試用例sheet列表時,解析全部測試用例sheet。
其中,所述自動化測試模塊包括:
執(zhí)行模塊,用于開啟瀏覽器,執(zhí)行目標(biāo)單測試用例sheet;
第三判斷模塊,用于判斷所述目標(biāo)單測試用例sheet是否執(zhí)行成功;
日記記錄模塊,用于執(zhí)行成功時,記錄執(zhí)行成功日志;執(zhí)行失敗時,進(jìn)行瀏覽器截圖保存,并記錄執(zhí)行失敗日志;
第四判斷模塊,用于關(guān)閉所述瀏覽器,判斷是否存在未執(zhí)行測試用例sheet;若存在,則調(diào)取下一未執(zhí)行單測試用例sheet作為目標(biāo)單測試用例sheet,并觸發(fā)所述執(zhí)行模塊;若不存在,則測試結(jié)束。
其中,每個測試用例sheet中包括與一個測試行為對應(yīng)的多個測試數(shù)據(jù)。
其中,所述報告生成模塊在測試結(jié)束后生成HTML格式的可視化測試報告。
通過以上方案可知,本發(fā)明實施例提供的一種web頁面的自動化測試方法,包括:獲取自動化測試的基礎(chǔ)參數(shù);所述基礎(chǔ)參數(shù)中包括測試Excel文件,所述測試Excel文件中包括測試行為與測試數(shù)據(jù)分離的多個測試用例sheet;解析所述基礎(chǔ)參數(shù)中測試Excel文件的測試用例sheet;啟動自動化測試驅(qū)動程序,調(diào)用每個測試用例sheet對瀏覽器進(jìn)行自動化測試,并在測試結(jié)束后生成自動化測試報告。
可見,在本方案中,可通過測試人員通過編寫或錄制測試用例的excel文件即可進(jìn)行Web頁面的自動化測試,可以讓無開發(fā)經(jīng)驗的測試人員快速上手Web頁面的自動化測試工作;并通過對測試行為和測試數(shù)據(jù)進(jìn)行分離,可以編寫不同的測試數(shù)據(jù),以適應(yīng)在不同數(shù)據(jù)環(huán)境下重復(fù)利用測試行為進(jìn)行自動化測試,并且本方案支持自動生成自動化測試報告,提供可視化的測試結(jié)果;本發(fā)明還公開了一種web頁面的自動化測試裝置,同樣能實現(xiàn)上述技術(shù)效果。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例公開的一種web頁面的自動化測試方法流程示意圖;
圖2為本發(fā)明實施例公開的一種具體的web頁面的自動化測試方法流程示意圖;
圖3為本發(fā)明實施例公開的一種web頁面的自動化測試裝置結(jié)構(gòu)示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明實施例公開了一種web頁面的自動化測試方法及裝置,以實現(xiàn)簡單快速的執(zhí)行自動化測試。
參見圖1,本發(fā)明實施例提供的一種web頁面的自動化測試方法,包括:
S101、獲取自動化測試的基礎(chǔ)參數(shù);所述基礎(chǔ)參數(shù)中包括測試Excel文件,所述測試Excel文件中包括測試行為與測試數(shù)據(jù)分離的多個測試用例sheet;
其中,每個測試用例sheet中包括與一個測試行為對應(yīng)的多個測試數(shù)據(jù)。
具體的,在本實施例中,需要測試人員首先根據(jù)實際Web頁面的測試行為,編寫或錄制可視化的測試excel文件,該測試excel文件既可以理解為測試用例集,測試excel文件中包括的多個測試用例sheet,既可以理解為多個測試用例。
需要說明的是,測試用例中的測試行為可以理解為測試步驟,測試數(shù)據(jù)可以理解為測試過程中需要輸入的數(shù)據(jù)或者校驗的數(shù)據(jù)。并且,同一系統(tǒng)在不同環(huán)境下,測試行為是基本相同的,但是測試數(shù)據(jù)不一定相同,因此在本實施例中,將測試行為和測試數(shù)據(jù)分離,即同一份測試用例會配置不同的測試數(shù)據(jù),這樣就可以在不同環(huán)境下進(jìn)行測試,這樣只需要維護(hù)一份測試行為,并且在不同的測試環(huán)境中只要新增一份測試數(shù)據(jù),使本方案支持在不同數(shù)據(jù)環(huán)境下重復(fù)利用測試行為進(jìn)行Web頁面進(jìn)行自動化測試,增加了測試用例擴(kuò)展的便捷性。
具體的,通過測試人員對基礎(chǔ)參數(shù)進(jìn)行配置后,可開啟測試工具,測試工具會加載用戶的配置和系統(tǒng)默認(rèn)的配置信息,開始自動化測試的準(zhǔn)備工作。
S102、解析所述基礎(chǔ)參數(shù)中測試Excel文件的測試用例sheet;
其中,所述解析所述基礎(chǔ)參數(shù)中測試Excel文件的測試用例sheet,包括:
S11、利用所述基礎(chǔ)參數(shù)判斷是否存在特定文件列表;
若存在,則加載特定文件列表,將加載的特定文件列表作為目標(biāo)文件列表,并繼續(xù)執(zhí)行S12;若不存在,則加載全部文件列表,將加載的全部文件列表作為目標(biāo)文件列表,并繼續(xù)執(zhí)行S12;
S12、利用所述基礎(chǔ)參數(shù)判斷目標(biāo)文件列表中是否存在特定測試用例sheet列表;若存在,則解析特定測試用例sheet列表中的測試用例sheet;若不存在,則解析全部測試用例sheet。
具體的,在本實施例在中,需要根據(jù)用戶事先配置的基礎(chǔ)參數(shù),判斷用戶是否配置了特定列表以及是否存在特定測試用例sheet列表,如果是,那么就執(zhí)行特定列表中的用例,否則執(zhí)行全部用例。這樣在某些情況下,可以只測試需要測試的用例,實現(xiàn)對特定用例測試的快速定位。
S103、啟動自動化測試驅(qū)動程序,調(diào)用每個測試用例sheet對瀏覽器進(jìn)行自動化測試,并在測試結(jié)束后生成自動化測試報告。
其中,所述調(diào)用每個測試用例sheet對瀏覽器進(jìn)行自動化測試,包括:
S21、開啟瀏覽器,并執(zhí)行目標(biāo)單測試用例sheet;
S22、判斷所述目標(biāo)單測試用例sheet是否執(zhí)行成功;
若是,則記錄執(zhí)行成功日志,并執(zhí)行S23;若否,則進(jìn)行瀏覽器截圖保存,并記錄執(zhí)行失敗日志,并執(zhí)行S23;
S23、關(guān)閉所述瀏覽器,判斷是否存在未執(zhí)行測試用例sheet;
若存在,則調(diào)取下一未執(zhí)行單測試用例sheet作為目標(biāo)單測試用例sheet,并繼續(xù)執(zhí)行S21;若不存在,則測試結(jié)束。
具體的,在本實施例中,確定測試用例sheet后,需要啟動自動化驅(qū)動程序開啟瀏覽器進(jìn)行測試,批量執(zhí)行測試用例,記錄執(zhí)行日志并保存錯誤發(fā)生時的瀏覽器截圖,在測試結(jié)束后生成HTML格式的可視化測試報告,提供可視化的測試結(jié)果。
參見圖2,為本實施例提供的一具體的自動化測試方案流程圖;需要說明的是,在圖2的自動化測試方案流程圖中,自動化測試工具需要配置測試應(yīng)用地址,測試用例目錄,特定測試用例,測試數(shù)據(jù)目錄,測試用瀏覽器等;這里的測試數(shù)據(jù)目錄下包括多個數(shù)據(jù)文件,數(shù)據(jù)文件中每個數(shù)據(jù)都有一個別名,這個別名與測試用例的測試數(shù)據(jù)別名相對應(yīng)。不同的數(shù)據(jù)目錄下的同名文件中,數(shù)據(jù)不一定相同,因此,在本方案中,可通過配置不同的測試數(shù)據(jù)目錄確定測試用例所使用的測試數(shù)據(jù)。
下面對本發(fā)明實施例提供的自動化測試裝置進(jìn)行介紹,下文描述的自動化測試裝置與上文描述的自動化測試方法可以相互參照。
參見圖3,本發(fā)明實施例提供的一種web頁面的自動化測試裝置,包括:
基礎(chǔ)參數(shù)獲取模塊100,用于獲取自動化測試的基礎(chǔ)參數(shù);所述基礎(chǔ)參數(shù)中包括測試Excel文件,所述測試Excel文件中包括測試行為與測試數(shù)據(jù)分離的多個測試用例sheet;
解析模塊200,用于解析所述基礎(chǔ)參數(shù)中測試Excel文件的測試用例sheet;
自動化測試模塊300,用于啟動自動化測試驅(qū)動程序,調(diào)用每個測試用例sheet對瀏覽器進(jìn)行自動化測試;其中,每個測試用例sheet中包括與一個測試行為對應(yīng)的多個測試數(shù)據(jù)。
報告生成模塊400,用于在測試結(jié)束后生成自動化測試報告。
基于上述實施例,所述解析模塊包括:
第一判斷模塊,用于利用所述基礎(chǔ)參數(shù)判斷是否存在特定文件列表;
第一加載模塊,用于存在特定文件列表時加載特定文件列表,將加載的特定文件列表作為目標(biāo)文件列表;
第二加載模塊,用于不存在特定文件列表時加載全部文件列表,將加載的全部文件列表作為目標(biāo)文件列表;
第二判斷模塊,用于利用所述基礎(chǔ)參數(shù)判斷目標(biāo)文件列表中是否存在特定測試用例sheet列表;
第一解析模塊,用于存在特定測試用例sheet列表時,解析特定測試用例sheet列表中的測試用例sheet;
第二解析模塊,用于不存在特定測試用例sheet列表時,解析全部測試用例sheet。
基于上述實施例,所述自動化測試模塊包括:
執(zhí)行模塊,用于開啟瀏覽器,執(zhí)行目標(biāo)單測試用例sheet;
第三判斷模塊,用于判斷所述目標(biāo)單測試用例sheet是否執(zhí)行成功;
日記記錄模塊,用于執(zhí)行成功時,記錄執(zhí)行成功日志;執(zhí)行失敗時,進(jìn)行瀏覽器截圖保存,并記錄執(zhí)行失敗日志;
第四判斷模塊,用于關(guān)閉所述瀏覽器,判斷是否存在未執(zhí)行測試用例sheet;若存在,則調(diào)取下一未執(zhí)行單測試用例sheet作為目標(biāo)單測試用例sheet,并觸發(fā)所述執(zhí)行模塊;若不存在,則測試結(jié)束。
基于上述實施例,所述報告生成模塊在測試結(jié)束后生成HTML格式的可視化測試報告。
可見,本方案通過excel文件編寫或錄制測試用例來實現(xiàn)Web頁面的自動化測試,支持同個測試行為在配置不同數(shù)據(jù)文件下的自動化測試,自動生成自動化測試報告,提供可視化的測試結(jié)果,該工具簡單易學(xué),可以讓無開發(fā)經(jīng)驗的測試人員快速上手自動化測試工作。
本說明書中各個實施例采用遞進(jìn)的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。
對所公開的實施例的上述說明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對這些實施例的多種修改對本領(lǐng)域的專業(yè)技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實施例中實現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一致的最寬的范圍。