試腳本時(shí),運(yùn)行單元32定時(shí)運(yùn)行該測試腳本,實(shí)現(xiàn)了測試腳本的定時(shí)運(yùn)行,避免了在用戶每次發(fā)生指令使服務(wù)器運(yùn)行需要定時(shí)運(yùn)行測試腳本,減少了測試人員的工作量,提高了自動(dòng)化測試的效率。
[0078]基于第一實(shí)施例提出本發(fā)明自動(dòng)化測試裝置的第三實(shí)施例,參照?qǐng)D6,在本實(shí)施例中,第一發(fā)送模塊20包括:
[0079]發(fā)送單元21,用于在服務(wù)器中存在所述待測試項(xiàng)目及測試權(quán)限對(duì)應(yīng)的測試信息時(shí),基于所述測試權(quán)限發(fā)送包括所述測試信息的測試修改界面至所述終端,以供用戶基于終端顯示的測試修改界面修改所述測試信息的測試數(shù)據(jù)及元素定位信息;
[0080]在服務(wù)器中由測試項(xiàng)目及測試權(quán)限對(duì)應(yīng)的測試信息時(shí),表面該測試信息已經(jīng)被測試過,但測試人員對(duì)測試結(jié)果不滿意或者對(duì)該待測試項(xiàng)目其他功能的測試結(jié)果不滿意,測試人員需要重新對(duì)該待測試項(xiàng)目測試譬如待測試項(xiàng)目對(duì)應(yīng)的軟件修改后再次測試,此時(shí),測試人員對(duì)待測試項(xiàng)目的該功能測試的測試信息可能不變,或者改動(dòng)不大,因此發(fā)送單元21基于測試權(quán)限發(fā)送包括測試信息的測試修改界面至所述終端,測試人員根據(jù)終端顯示的測試修改界面對(duì)測試信息中的測試數(shù)據(jù)及元素定位信息進(jìn)行相應(yīng)的修改。
[0081]更新單元22,用于在接收到終端發(fā)送的修改后的測試數(shù)據(jù)及元素定位信息時(shí),基于修改后的測試數(shù)據(jù)及元素定位信息更新所述測試信息;
[0082]更新單元22根據(jù)修改后的測試數(shù)據(jù)及元素定位信息更新測試信息,以供后續(xù)直接調(diào)用。
[0083]運(yùn)行模塊30還用于基于更新后的測試信息運(yùn)行所述待測試項(xiàng)目及測試權(quán)限對(duì)應(yīng)的測試腳本。
[0084]本實(shí)施例中,通過在服務(wù)器中存在待測試項(xiàng)目及測試權(quán)限對(duì)應(yīng)的測試信息時(shí),發(fā)送單元21基于測試權(quán)限發(fā)送包括測試信息的測試修改界面至,接著在接收到終端發(fā)送的修改后的測試數(shù)據(jù)及元素定位信息時(shí),更新單元22基于修改后的測試數(shù)據(jù)及元素定位信息更新所述測試信息,最后運(yùn)行模塊基于更新后的測試信息運(yùn)行所述待測試項(xiàng)目及測試權(quán)限對(duì)應(yīng)的測試腳本,實(shí)現(xiàn)了測試信息的修改以及根據(jù)修改后的測試信息對(duì)待測試項(xiàng)目進(jìn)行測試,減少了測試人員的數(shù)據(jù)輸入量,進(jìn)一步提高了項(xiàng)目測試的效率。
[0085]本發(fā)明進(jìn)一步提供一種自動(dòng)化測試方法。參照?qǐng)D7,圖7為本發(fā)明自動(dòng)化測試方法第一實(shí)施例的流程示意圖。
[0086]在本實(shí)施例中,該自動(dòng)化測試方法包括:
[0087]步驟S10,在接收到終端發(fā)送的測試請(qǐng)求時(shí),確定所述測試請(qǐng)求對(duì)應(yīng)的待測試項(xiàng)目以及所述待測試項(xiàng)目的測試權(quán)限;
[0088]其中,本實(shí)施例的自動(dòng)化測試方法應(yīng)用于基于高性能的nginx及tomcat配置的集群服務(wù)器,該服務(wù)器端封裝了主流的Web應(yīng)用程序測試的selenium及網(wǎng)頁內(nèi)驅(qū)動(dòng)軟件webdriver框架進(jìn)行頁面加載,可以進(jìn)行多瀏覽器加載能夠?qū)崿F(xiàn)頁面功能的兼容性測試,同時(shí)selenium框架在執(zhí)行時(shí)支持多種操作系統(tǒng)平臺(tái),解決多平臺(tái)兼容性問題,該服務(wù)器通過配置log4j自定義日志,便于記錄腳本的運(yùn)行情況,并使用testng框架對(duì)測試腳本實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng)和測試報(bào)告整合,其中,nginx是一款面向性能設(shè)計(jì)的HTTP服務(wù)器,具有占有內(nèi)存少,穩(wěn)定性高等優(yōu)勢;tomcat是一個(gè)免費(fèi)的開放源代碼的Web應(yīng)用服務(wù)器!selenium是一個(gè)用于Web應(yīng)用程序測試的工具,直接運(yùn)行在瀏覽器中;log4j是Apache的一個(gè)開放源代碼項(xiàng)目,通過使用Log4j可以控制日志信息輸送的目的地是控制臺(tái)、文件、⑶I組件;testng是一種Java應(yīng)用程序的測試框架。
[0089]本實(shí)施例中,在終端/客戶端請(qǐng)求添加測試項(xiàng)目時(shí),服務(wù)器會(huì)對(duì)每個(gè)測試項(xiàng)目分配一個(gè)唯一的標(biāo)識(shí)ID,然后在分配該測試項(xiàng)目的測試人員對(duì)應(yīng)的ID時(shí),會(huì)用一個(gè)字段來標(biāo)記每個(gè)測試人員擁有的測試項(xiàng)目權(quán)限;在接收到終端發(fā)送的測試請(qǐng)求時(shí)獲取該測試請(qǐng)求對(duì)應(yīng)的待測試項(xiàng)目以及待測試項(xiàng)目的測試權(quán)限,即當(dāng)服務(wù)器收到來自終端發(fā)送過來的測試請(qǐng)求時(shí),先判斷測試人員請(qǐng)求測試的是哪個(gè)測試項(xiàng)目,根據(jù)測試請(qǐng)求以及測試項(xiàng)目獲取該測試人員的測試權(quán)限。
[0090]步驟S20,基于所述測試權(quán)限發(fā)送所述待測試項(xiàng)目對(duì)應(yīng)的測試設(shè)計(jì)界面至所述終端,以供用戶基于終端顯示的測試設(shè)計(jì)界面輸入所述待測試項(xiàng)目的測試信息,其中,所述測試信息包括所述待測試項(xiàng)目的測試數(shù)據(jù)及元素定位信息;
[0091]服務(wù)器可以根據(jù)獲取的待測試項(xiàng)目及測試權(quán)限生成測試設(shè)計(jì)界面,該測試設(shè)計(jì)界面包括與待測試項(xiàng)目對(duì)應(yīng)的測試數(shù)據(jù)輸入框/界面以及待測試項(xiàng)目的測試元素的元素定位信息輸入框/界面,其中,測試數(shù)據(jù)輸入框/界面用于供用戶輸入該待測試項(xiàng)目的測試數(shù)據(jù),元素定位信息輸入框/界面用于供用戶輸入測試元素的路徑等信息,以保證在待測試項(xiàng)目進(jìn)行測試時(shí)能過準(zhǔn)確的定位該測試元素;當(dāng)然,在服務(wù)器存儲(chǔ)有該待測試項(xiàng)目的測試信息時(shí),可以測試設(shè)計(jì)界面還可以包括測試信息的刪除、查找、修改選項(xiàng),測試人員可以通過刪除、修改選項(xiàng)對(duì)服務(wù)器存儲(chǔ)的測試信息進(jìn)行刪除或者修改操作。服務(wù)器將該測試設(shè)計(jì)界面發(fā)送至終端,在終端將接收到的測試設(shè)計(jì)界面進(jìn)行顯示后,測試人員可以根據(jù)終端顯示的測試設(shè)計(jì)界面輸入測試數(shù)據(jù)以及元素定位信息即元素的路徑信息,然后在接收到設(shè)計(jì)完成指令譬如測試人員點(diǎn)擊測試完成選項(xiàng)觸發(fā)設(shè)計(jì)完成指令時(shí),終端將測試人員的測試信息發(fā)送至服務(wù)器即本實(shí)施例的自動(dòng)化測試裝置。
[0092]步驟S30,在接收到所述終端發(fā)送的測試信息時(shí),基于所述測試信息運(yùn)行所述待測試項(xiàng)目及測試權(quán)限對(duì)應(yīng)的測試腳本;
[0093]服務(wù)器存有每一個(gè)測試項(xiàng)目的功能模塊對(duì)應(yīng)的測試腳本,該待測試項(xiàng)目不同的測試權(quán)限對(duì)應(yīng)的測試腳本不盡相同,因此,在接收到所述終端發(fā)送的測試信息時(shí),服務(wù)器基于測試信息運(yùn)行待測試項(xiàng)目及測試權(quán)限對(duì)應(yīng)的測試腳本。
[0094]步驟S40,在所述測試腳本運(yùn)行完成時(shí),發(fā)送所述測試腳本的運(yùn)行結(jié)果至所述終端。
[0095]在根據(jù)測試信息運(yùn)行完成待測試項(xiàng)目及測試權(quán)限對(duì)應(yīng)的測試腳本時(shí),服務(wù)器將測試腳本的運(yùn)行結(jié)果發(fā)送至終端,當(dāng)然,在測試腳本運(yùn)行過程中存在錯(cuò)誤時(shí),將該錯(cuò)誤對(duì)應(yīng)的程序以及運(yùn)行界面等信息進(jìn)行截圖,最后將該截圖與運(yùn)行結(jié)果一起發(fā)送至終端。
[0096]進(jìn)一步地,在其他實(shí)施例中,參照?qǐng)D8,在步驟S40之后,該自動(dòng)化測試方法還包括:步驟S50,在接收到終端發(fā)送的所述待測試項(xiàng)目的測試報(bào)告獲取請(qǐng)求時(shí),基于所述運(yùn)行結(jié)果生成所述待測試項(xiàng)目的測試報(bào)告,并將所述測試報(bào)告發(fā)送至所述終端。
[0097]其中,測試報(bào)告包括測試腳本的運(yùn)行結(jié)果以及運(yùn)行過程中所出現(xiàn)的錯(cuò)誤的截圖等,在接收到測試報(bào)告獲取請(qǐng)求時(shí),基于運(yùn)行結(jié)果生成待測試項(xiàng)目的測試報(bào)告,并將測試報(bào)告發(fā)送至終端,減少了服務(wù)器與終端信息的傳輸,并能夠避免測試人員不需要測試報(bào)告時(shí),發(fā)送測試報(bào)告的情況發(fā)生,當(dāng)然,也可以在用戶基于終端顯示的測試設(shè)計(jì)界面進(jìn)行所述待測試項(xiàng)目的測試設(shè)計(jì)操作,進(jìn)行是否需要獲取測試報(bào)告的選擇,即終端顯示的測試設(shè)計(jì)界面設(shè)有獲取測試報(bào)告的選擇選項(xiàng)。
[0098]進(jìn)一步地,在其他實(shí)施例中,在步驟S20之后,該自動(dòng)化測試方法還包括:在接收到所述終端發(fā)送的測試信息時(shí),存儲(chǔ)所述測試信息。
[0099]服務(wù)器將接收到的測試信息存儲(chǔ),使得后續(xù)對(duì)該待測試項(xiàng)目進(jìn)行同樣的測試(相同的功能)時(shí),可以進(jìn)行采用該測試信息進(jìn)行測試,或者對(duì)該測試信息進(jìn)行相應(yīng)的修改后,采用修改后的測試信息進(jìn)行測試,當(dāng)然,在該測試信息對(duì)應(yīng)的功能測試通過時(shí),測試人員可以直接刪除該測試信息。
[0100]本實(shí)施例通過在接收到終端發(fā)送的測試請(qǐng)求時(shí),獲取測試請(qǐng)求對(duì)應(yīng)的待測試項(xiàng)目以及待測試項(xiàng)目的測試權(quán)限,接著基于測試權(quán)限發(fā)送待測試項(xiàng)目對(duì)應(yīng)的測試設(shè)計(jì)界面至所述終端,然后在接收到終端發(fā)送的測試信息時(shí),在接收到終端發(fā)送的測試信息時(shí),基于測試信息運(yùn)行待測試項(xiàng)目及測試權(quán)限對(duì)應(yīng)的測試腳本,最后發(fā)送測試腳本的運(yùn)行結(jié)果至所述終端,實(shí)現(xiàn)了根據(jù)測試請(qǐng)求進(jìn)行待測試項(xiàng)目的自動(dòng)化測試,使得測試人員只需要進(jìn)行測試用例的簡單設(shè)計(jì)而無需進(jìn)行測試腳本的編碼即可實(shí)現(xiàn)待測試項(xiàng)目的自動(dòng)化測試,降低了對(duì)測試人員能力的要求,減少了學(xué)習(xí)成本,進(jìn)一步地,本實(shí)施例根據(jù)測試請(qǐng)求對(duì)應(yīng)的測試權(quán)限進(jìn)行相應(yīng)的自動(dòng)化測試,使得同一個(gè)測試項(xiàng)目可以同時(shí)進(jìn)行多種測試,提高了測試的效率。
[0101]基于第一實(shí)施例提出本發(fā)明自動(dòng)化測試方法的第二實(shí)施例,參照?qǐng)D9,在本實(shí)施例中,步驟S30包括:
[0102]步驟S31,在接收到所述終端發(fā)送的測試信息時(shí),確定所述待測試項(xiàng)目及測試權(quán)限對(duì)應(yīng)的測試腳本是否為定時(shí)測試的測試腳本;
[0103]在接收到所述終端發(fā)送的測試信息時(shí),確定待測試項(xiàng)目及測試權(quán)限對(duì)應(yīng)的測試腳本是否是定時(shí)測試的腳本,譬如,待測試項(xiàng)目的某些特定的測試腳本需要每日測試一次或者待測試項(xiàng)目的某些特定的測試腳本需要每隔一定的時(shí)間譬如6小時(shí)測試一次時(shí),這些測試腳本均為定時(shí)測試的腳本。
[0104]步驟S32,在測試腳本為定時(shí)測試的測試腳本時(shí),定時(shí)運(yùn)行所述測