Erp軟件自動(dòng)化測(cè)試系統(tǒng)及方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)一種ERP軟件自動(dòng)化測(cè)試系統(tǒng),包括:初始化模塊,用于讀取配置文件信息;用例分析模塊,用于根據(jù)所述配置文件信息加載測(cè)試用例,并分析測(cè)試所涉及的ERP表單及各表單間的測(cè)試邏輯;表單處理模塊,用于加載測(cè)試所涉及的ERP表單,并獲取表單中的測(cè)試對(duì)象和數(shù)據(jù);測(cè)試調(diào)度模塊,用于根據(jù)所述表單間的測(cè)試邏輯,調(diào)度所需的測(cè)試對(duì)象和數(shù)據(jù)進(jìn)行測(cè)試;錯(cuò)誤監(jiān)控模塊,用于監(jiān)控測(cè)試調(diào)度執(zhí)行過(guò)程中出現(xiàn)的異常情況并確認(rèn)是否能夠進(jìn)行處理,如果是,則進(jìn)行對(duì)應(yīng)處理,如果無(wú)法處理,則恢復(fù)到上一測(cè)試節(jié)點(diǎn)重新測(cè)試;以及報(bào)告整合模塊,用于根據(jù)所述測(cè)試調(diào)度模塊的測(cè)試結(jié)果,并結(jié)合錯(cuò)誤監(jiān)控模塊監(jiān)控到的異常情況,自動(dòng)生成測(cè)試報(bào)告后分發(fā)至相關(guān)接口。
【專(zhuān)利說(shuō)明】ERP軟件自動(dòng)化測(cè)試系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及軟件測(cè)試領(lǐng)域,尤其涉及一種ERP軟件自動(dòng)化測(cè)試系統(tǒng)和ERP軟件自動(dòng)化測(cè)試方法。
【背景技術(shù)】
[0002]ERP是企業(yè)資源計(jì)劃(Enterprise Resource Planning)的簡(jiǎn)稱(chēng),其是針對(duì)物資資源管理、人力資源管理、財(cái)務(wù)資源管理、信息資源管理集成一體化的企業(yè)管理軟件。ERP軟件代表最為先進(jìn)的管理模式,幾乎能解決企業(yè)遇到的所有問(wèn)題,通過(guò)ERP管理系統(tǒng),企業(yè)能提高管理效率和市場(chǎng)競(jìng)爭(zhēng)力,因此ERP軟件的推廣應(yīng)用在國(guó)內(nèi)外都很廣泛。隨著信息技術(shù)和制造業(yè)技術(shù)的不斷發(fā)展,企業(yè)對(duì)ERP軟件的依賴(lài)和需求都在增加。
[0003]每一個(gè)新業(yè)務(wù)需求的提出,都需要在原有的ERP軟件上作一定的更改。而ERP軟件業(yè)務(wù)流程復(fù)雜多變,對(duì)其中一個(gè)模塊進(jìn)行修改,會(huì)影響到業(yè)務(wù)流程節(jié)點(diǎn)上的所有模塊。因此,測(cè)試人員面對(duì)ERP軟件頻繁的需求更新時(shí),會(huì)需要花費(fèi)較多的時(shí)間進(jìn)行完整的系統(tǒng)測(cè)試。而實(shí)際上,許多升級(jí)的版本或只做少量更改的需求,只需針對(duì)修改的部分進(jìn)行測(cè)試。在這種情況下,不僅浪費(fèi)測(cè)試人員的時(shí)間,而且極有可能在業(yè)務(wù)系統(tǒng)上線(xiàn)時(shí)出現(xiàn)難以預(yù)料的錯(cuò)誤。
【發(fā)明內(nèi)容】
[0004]為了解決上述問(wèn)題,本發(fā)明提供一種ERP軟件自動(dòng)化測(cè)試系統(tǒng)和ERP軟件自動(dòng)化測(cè)試方法,其執(zhí)行速度快,能夠節(jié)省人力、時(shí)間或硬件資源,且保證系統(tǒng)質(zhì)量。
[0005]本發(fā)明實(shí)施例提供一種ERP軟件自動(dòng)化測(cè)試系統(tǒng),用于對(duì)ERP軟件進(jìn)行自動(dòng)化測(cè)試,所述ERP軟件包括多個(gè)ERP表單。所述ERP軟件自動(dòng)化測(cè)試系統(tǒng)包括:初始化模塊,用于讀取配置文件信息,啟動(dòng)測(cè)試流程;用例分析模塊,用于根據(jù)所述配置文件信息加載測(cè)試用例,并根據(jù)測(cè)試用例中的數(shù)據(jù)分析測(cè)試所涉及的ERP表單及各表單間的測(cè)試邏輯;表單處理模塊,用于加載所述用例分析模塊分析的測(cè)試所涉及的ERP表單,并獲取表單中的測(cè)試對(duì)象和數(shù)據(jù);測(cè)試調(diào)度模塊,用于根據(jù)所述用例分析模塊分析后的表單間的測(cè)試邏輯,調(diào)度所需的測(cè)試對(duì)象和數(shù)據(jù)進(jìn)行測(cè)試;錯(cuò)誤監(jiān)控模塊,用于監(jiān)控測(cè)試調(diào)度執(zhí)行過(guò)程中出現(xiàn)的異常情況并確認(rèn)是否能夠進(jìn)行處理,如果是,則進(jìn)行對(duì)應(yīng)處理,如果無(wú)法處理,則恢復(fù)到上一測(cè)試節(jié)點(diǎn)重新測(cè)試;以及報(bào)告整合模塊,用于根據(jù)所述測(cè)試調(diào)度模塊的測(cè)試結(jié)果,并結(jié)合錯(cuò)誤監(jiān)控模塊監(jiān)控到的異常情況,自動(dòng)生成測(cè)試報(bào)告后分發(fā)至相關(guān)接口。
[0006]優(yōu)選的,所述初始化模塊包括加載單元和用例驅(qū)動(dòng)單元,所述加載單元用于讀取指定路徑下的配置文件中的信息,所述用例驅(qū)動(dòng)單元用于根據(jù)配置文件信息讀取所有測(cè)試用例信息。
[0007]優(yōu)選的,所述用例分析模塊包括讀取單元和分析單元,所述讀取單元用于加載所述用例驅(qū)動(dòng)單元讀取的測(cè)試用例信息,并讀取測(cè)試用例中指定位置的信息,所述分析單元用于根據(jù)所述指定位置的信息,分析測(cè)試涉及的表單以及表單間的測(cè)試邏輯。[0008]優(yōu)選的,所述測(cè)試用例包括ERP表單、操作以及路徑描述的數(shù)據(jù),所述ERP表單表示測(cè)試所涉及的表單,所述操作數(shù)據(jù)表示測(cè)試具體操作,所述路徑描述記錄表單間的邏輯關(guān)系,所述用例分析模塊根據(jù)ERP表單列分析測(cè)試所涉及的表單,以及根據(jù)操作以及路徑描述兩列分析所述表單間的測(cè)試邏輯。
[0009]優(yōu)選的,所述表單處理模塊包括測(cè)試對(duì)象提取單元、測(cè)試對(duì)象池和表單數(shù)據(jù)存儲(chǔ)區(qū),所述測(cè)試對(duì)象提取單元用于獲取所述用例分析模塊分析的測(cè)試涉及的表單信息,并根據(jù)預(yù)設(shè)的關(guān)鍵字段,在測(cè)試涉及的表單中檢索所有符合條件的測(cè)試對(duì)象,所述測(cè)試對(duì)象池用于存儲(chǔ)所述所有符合條件的測(cè)試對(duì)象,所述表單數(shù)據(jù)存儲(chǔ)區(qū)用于存儲(chǔ)每個(gè)測(cè)試對(duì)象的數(shù)據(jù)。
[0010]優(yōu)選的,所述測(cè)試調(diào)度模塊包括邏輯處理單元和調(diào)度單元,所述邏輯處理單元用于將測(cè)試對(duì)象、測(cè)試對(duì)象的數(shù)據(jù)和所述表單間的測(cè)試邏輯封裝成組件,且設(shè)定測(cè)試執(zhí)行路徑;所述調(diào)度單元用于在路徑設(shè)定完畢后,從測(cè)試對(duì)象池和表單數(shù)據(jù)區(qū)提取所需測(cè)試對(duì)象和測(cè)試數(shù)據(jù),并啟動(dòng)組件測(cè)試。
[0011]優(yōu)選的,所述報(bào)告整合模塊包括數(shù)據(jù)收集單元、錯(cuò)誤定位單元和信息分發(fā)單元,所述數(shù)據(jù)收集單元用于收集測(cè)試執(zhí)行結(jié)果,所述錯(cuò)誤定位單元用于根據(jù)測(cè)試執(zhí)行結(jié)果,判斷是否需要進(jìn)行錯(cuò)誤定位,如需要進(jìn)行錯(cuò)誤定位,則定位到對(duì)應(yīng)的錯(cuò)誤節(jié)點(diǎn),并將錯(cuò)誤節(jié)點(diǎn)中異常信息整合在報(bào)告中,所述信息分發(fā)單元用于與郵件服務(wù)器產(chǎn)生交互,并將測(cè)試報(bào)告分發(fā)給項(xiàng)目相關(guān)人員。
[0012]優(yōu)選的,所述錯(cuò)誤監(jiān)控模塊包括錯(cuò)誤檢測(cè)單元和錯(cuò)誤處理單元,所述錯(cuò)誤檢測(cè)單元用于檢測(cè)測(cè)試過(guò)程中的異常信息,并確認(rèn)是否能夠進(jìn)行處理所述異常信息,如果能夠處理,則將異常信息提交給所述錯(cuò)誤處理單元;如果無(wú)法處理,則恢復(fù)到上一測(cè)試節(jié)點(diǎn)重新測(cè)試,所述錯(cuò)誤處理單元?jiǎng)t用于根據(jù)異常信息類(lèi)型,對(duì)異常信息作相應(yīng)的處理。
[0013]本發(fā)明實(shí)施例另提供一種ERP軟件自動(dòng)化測(cè)試方法,其包括:讀取配置文件信息,啟動(dòng)測(cè)試流程;根據(jù)所述配置文件信息加載測(cè)試用例,并根據(jù)測(cè)試用例中的數(shù)據(jù)分析測(cè)試所涉及的ERP表單及各表單間的測(cè)試邏輯;加載分析后的測(cè)試所涉及的ERP表單,并獲取表單中的測(cè)試對(duì)象和數(shù)據(jù);根據(jù)分析后的表單間的測(cè)試邏輯,調(diào)度所需的測(cè)試對(duì)象和數(shù)據(jù)進(jìn)行測(cè)試;監(jiān)控測(cè)試過(guò)程中出現(xiàn)的異常情況并確認(rèn)是否能夠進(jìn)行處理,如果是,則進(jìn)行對(duì)應(yīng)處理,如果無(wú)法處理,則恢復(fù)到上一測(cè)試節(jié)點(diǎn)重新測(cè)試;以及根據(jù)測(cè)試結(jié)果,并結(jié)合監(jiān)控到的異常情況,自動(dòng)生成測(cè)試報(bào)告后分發(fā)至相關(guān)接口。
[0014]優(yōu)選的,所述根據(jù)測(cè)試結(jié)果并結(jié)合監(jiān)控到的異常情況自動(dòng)生成測(cè)試報(bào)告后分發(fā)至相關(guān)接口的步驟進(jìn)一步包括:判斷是否需要進(jìn)行錯(cuò)誤定位,如需要進(jìn)行錯(cuò)誤定位,則定位到對(duì)應(yīng)的錯(cuò)誤節(jié)點(diǎn),并將錯(cuò)誤節(jié)點(diǎn)的異常信息整合在報(bào)告中。
[0015]本發(fā)明的上述實(shí)施例具有自動(dòng)化測(cè)試的功能,方便測(cè)試人員對(duì)ERP軟件進(jìn)行測(cè)試,而且測(cè)試過(guò)程無(wú)需因?yàn)榘l(fā)生異常情況而重新測(cè)試,因此執(zhí)行速度快,節(jié)省了人力、時(shí)間或硬件資源,從而提高測(cè)試效率,并且能夠保證軟件質(zhì)量。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0016]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0017]圖1為本發(fā)明實(shí)施例提供的ERP軟件自動(dòng)化測(cè)試系統(tǒng)的框架示意圖;
圖2為圖1的ERP軟件自動(dòng)化測(cè)試系統(tǒng)的細(xì)化框架示意圖;
圖3為本發(fā)明提供的ERP軟件自動(dòng)化測(cè)試方法的流程圖;
圖4為本發(fā)明實(shí)施例提供的ERP軟件自動(dòng)化測(cè)試方法處理ERP銷(xiāo)售子系統(tǒng)出庫(kù)模塊的流程圖;
圖5為圖4的ERP銷(xiāo)售子系統(tǒng)出庫(kù)模塊的一自動(dòng)化測(cè)試用例模板示意圖;
圖6為圖4的ERP銷(xiāo)售子系統(tǒng)出庫(kù)模塊的另一自動(dòng)化測(cè)試用例模板示意圖;
圖7為圖4的ERP銷(xiāo)售子系統(tǒng)出庫(kù)模塊的自動(dòng)化測(cè)試的配置文件模板示意圖;
圖8為圖4的ERP銷(xiāo)售子系統(tǒng)出庫(kù)模塊的測(cè)試報(bào)告模板示意圖;
圖9為圖4的ERP軟件自 動(dòng)化測(cè)試方法的測(cè)試路徑示意圖。
【具體實(shí)施方式】
[0018]下面結(jié)合附圖和【具體實(shí)施方式】對(duì)本發(fā)明的技術(shù)方案作進(jìn)一步更詳細(xì)的描述。顯然,所描述的實(shí)施例僅僅是本發(fā)明的一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都應(yīng)屬于本發(fā)明保護(hù)的范圍。
[0019]如圖1所示,其為本發(fā)明的ERP軟件自動(dòng)化測(cè)試系統(tǒng)100的總體框架示意圖,所述ERP軟件自動(dòng)化測(cè)試系統(tǒng)100包括初始化模塊101、用例分析模塊102、表單處理模塊103、測(cè)試調(diào)度模塊104、錯(cuò)誤監(jiān)控模塊105以及報(bào)告整合模塊106。
[0020]所述初始化模塊101用于讀取配置文件信息,并啟動(dòng)測(cè)試流程。所述配置文件信息記錄著測(cè)試用例的路徑信息、系統(tǒng)當(dāng)前的環(huán)境變量和用戶(hù)自定義的變量信息(請(qǐng)參考圖7)。啟動(dòng)測(cè)試流程是本次自動(dòng)化測(cè)試的正式開(kāi)始。
[0021]所述用例分析模塊102用于根據(jù)所述配置文件信息,加載測(cè)試用例,并根據(jù)測(cè)試用例中的數(shù)據(jù)分析測(cè)試涉及的表單和測(cè)試邏輯。本實(shí)施例中,所述測(cè)試用例是指初始化后,所述用例分析模塊102根據(jù)所述配置文件信息中的路徑信息所獲取到的一個(gè)excel文件,其記錄測(cè)試活動(dòng)的相關(guān)信息,例如,表單名稱(chēng)、表單類(lèi)型、具體測(cè)試操作以及表單間的邏輯關(guān)系可在測(cè)試用例中體現(xiàn)(請(qǐng)參閱圖5、6)。測(cè)試涉及的表單是指測(cè)試用例中記錄的ERP軟件中預(yù)先存儲(chǔ)的一個(gè)或多個(gè)表單(下稱(chēng)ERP表單)。表單間的邏輯關(guān)系是指測(cè)試涉及的各個(gè)表單之間的先后邏輯關(guān)系,例如在ERP軟件上要先填采購(gòu)訂單,然后才能生成發(fā)貨通知單,那么這兩個(gè)表單之間的邏輯關(guān)系在測(cè)試用例上的表現(xiàn)形式就為“采購(gòu)訂單?發(fā)貨通知單”。具體的,在本實(shí)施例中,測(cè)試用例(即excel表格)中有專(zhuān)門(mén)的字段記錄所涉及的表單和表單間的邏輯關(guān)系,如圖5所示,“ERP表單”一列記錄本次測(cè)試所涉及的表單,“路徑描述”一列則記錄表單間的邏輯關(guān)系。通過(guò)讀取測(cè)試用例中指定的列,例如“ERP表單”和“路徑描述”兩列,可分析出測(cè)試涉及的表單和表單間的邏輯關(guān)系。而所述測(cè)試邏輯是結(jié)合測(cè)試用例中的具體測(cè)試操作以及表單間的邏輯關(guān)系所獲得的信息。具體的,請(qǐng)參閱圖5,所述用例分析模塊102讀取“操作”和“路徑描述”2列的信息,根據(jù)“操作”一列中的編號(hào)確定先后順序,再對(duì)“路徑描述”一列中的箭頭標(biāo)志進(jìn)行分割,進(jìn)行組合,形成表單間的測(cè)試邏輯:新增銷(xiāo)售訂單?新增發(fā)貨檢驗(yàn)申請(qǐng)單?審核發(fā)貨檢驗(yàn)單?新增出庫(kù)單?新增發(fā)票。所述用例分析模塊102分析出測(cè)試涉及到的ERP表單以及測(cè)試邏輯后,將涉及到的ERP表單信息傳給表單處理模塊103,以及將測(cè)試邏輯傳給測(cè)試調(diào)度模塊104。需要注意的是,所述測(cè)試用例的模板文件可由測(cè)試人員手工填寫(xiě),也可自動(dòng)加載。所述測(cè)試用例可直接存儲(chǔ)于ERP軟件中,或者存儲(chǔ)于外接的存儲(chǔ)設(shè)備中,當(dāng)需要加載時(shí),分別通過(guò)直接讀取和USB讀取方式進(jìn)行獲取。
[0022]所述表單處理模塊103用于加載所述用例分析模塊102分析出的測(cè)試涉及的表單,并封裝表單中的測(cè)試對(duì)象和數(shù)據(jù)。其中,測(cè)試涉及的表單中的測(cè)試項(xiàng)都封裝為測(cè)試對(duì)象,且每個(gè)表單的數(shù)據(jù)單獨(dú)提取出來(lái)。更具體的,測(cè)試項(xiàng)是指測(cè)試涉及的表單中需要測(cè)試的字段。所述表單處理模塊103獲得測(cè)試涉及的表單信息后,根據(jù)預(yù)設(shè)的搜索字段,例如圖6中的單據(jù)頭字段和單據(jù)體字段,在測(cè)試涉及的表單中進(jìn)行檢索,遍歷表單中所有測(cè)試項(xiàng)后,提取表單中符合條件的測(cè)試項(xiàng)和動(dòng)作,封裝成測(cè)試對(duì)象,進(jìn)行編號(hào)后進(jìn)行存儲(chǔ)。如果兩個(gè)表單中測(cè)試項(xiàng)字段名稱(chēng)重復(fù),則在字段名前面加表單名以示區(qū)分。所述表單處理模塊103提取完表單數(shù)據(jù)后,結(jié)果供測(cè)試調(diào)度模塊104調(diào)用。
[0023]所述測(cè)試調(diào)度模塊104用于根據(jù)所述測(cè)試邏輯,從表單處理模塊103調(diào)度所需的測(cè)試對(duì)象和數(shù)據(jù)來(lái)執(zhí)行測(cè)試。具體的,以圖5為例,所述測(cè)試調(diào)度模塊104根據(jù)所述測(cè)試邏輯,首先設(shè)定第一步路徑為新增銷(xiāo)售訂單,接著找到封裝的銷(xiāo)售訂單對(duì)象,并根據(jù)表單邏輯新增動(dòng)作,組合成新增銷(xiāo)售訂單組件。同時(shí),設(shè)定下一步路徑為新增發(fā)貨檢驗(yàn)申請(qǐng)單。設(shè)定完畢后,再尋找發(fā)貨檢驗(yàn)申請(qǐng)單對(duì)象,根據(jù)表單邏輯新增動(dòng)作,組合成新增發(fā)貨檢驗(yàn)申請(qǐng)單組件。以此類(lèi)推,遍歷完成5個(gè)業(yè)務(wù)節(jié)點(diǎn)的處理,通過(guò)不同組件的跳轉(zhuǎn),形成ERP軟件的業(yè)務(wù)流程,啟動(dòng)組件的業(yè)務(wù)流程測(cè)試。
[0024]所述錯(cuò)誤監(jiān)控模塊105用于在測(cè)試過(guò)程中,監(jiān)控測(cè)試調(diào)度執(zhí)行過(guò)程中出現(xiàn)的各種異常,并確認(rèn)是否能夠處理異常,如果能夠處理,則首先是捕獲異常,再提交給模塊相應(yīng)單元作進(jìn)一步的處理,如果 無(wú)法處理,則恢復(fù)到上一測(cè)試節(jié)點(diǎn),重新執(zhí)行對(duì)應(yīng)的測(cè)試步驟??梢岳斫?,所述異常是指測(cè)試過(guò)程中任何能夠阻塞測(cè)試的事件。
[0025]在測(cè)試結(jié)束后,所述報(bào)告整合模塊106根據(jù)所述測(cè)試調(diào)度模塊的測(cè)試結(jié)果,并結(jié)合錯(cuò)誤監(jiān)控模塊105監(jiān)控到的異常情況,自動(dòng)生成測(cè)試報(bào)告后分發(fā)至相關(guān)接口。具體的,所述報(bào)告整合模塊106根據(jù)所述錯(cuò)誤監(jiān)控模塊105的監(jiān)控結(jié)果,判斷是否發(fā)生異?;蝈e(cuò)誤。更具體地,如果判斷發(fā)生異常或錯(cuò)誤,則根據(jù)異常信息定位到發(fā)生錯(cuò)誤的對(duì)應(yīng)測(cè)試節(jié)點(diǎn)上,并將異常信息整合到測(cè)試報(bào)告中。如果判斷未發(fā)生異?;蝈e(cuò)誤,則生成“正?!钡臏y(cè)試報(bào)告。所述測(cè)試報(bào)告是在采集數(shù)據(jù)后,根據(jù)預(yù)定義的報(bào)告格式完成的。報(bào)告的分發(fā)依靠公司的郵件接口和配置文件中的郵件接收人,進(jìn)行自動(dòng)發(fā)送。
[0026]如圖2所示,其為圖1的ERP自動(dòng)化測(cè)試系統(tǒng)100的細(xì)化框架示意圖。其中,所述初始化模塊101包括加載單元1011以及用例驅(qū)動(dòng)單元1012,所述用例分析模塊102包括讀取單元1021以及分析單元1022,所述表單處理模塊103包括測(cè)試對(duì)象提取單元1031、測(cè)試對(duì)象池1032以及表單數(shù)據(jù)區(qū)1033,所述測(cè)試調(diào)度模塊104包括邏輯處理單元1041以及調(diào)度單元1042,所述錯(cuò)誤監(jiān)控模塊105包括錯(cuò)誤檢測(cè)單元1051以及錯(cuò)誤處理單元1052,所述報(bào)告整合模塊106包括數(shù)據(jù)收集單元1061、錯(cuò)誤定位單元1062以及信息分發(fā)單元1063。
[0027]所述自動(dòng)化測(cè)試系統(tǒng)100執(zhí)行的測(cè)試過(guò)程可分為自動(dòng)化測(cè)試準(zhǔn)備階段、自動(dòng)化測(cè)試執(zhí)行階段和自動(dòng)化測(cè)試結(jié)束階段。[0028]在自動(dòng)化測(cè)試準(zhǔn)備階段,初始化模塊101中的加載單元1011加載配置文件,讀取配置文件中的配置信息。讀取完畢,通知用例驅(qū)動(dòng)單元1012。用例驅(qū)動(dòng)單元1012接到通知,根據(jù)配置信息中的路徑讀取所有測(cè)試用例信息,并將信息傳給用例分析模塊102。用例分析模塊102中的讀取單元1021加載所有測(cè)試用例,并讀取指定單元列內(nèi)的數(shù)據(jù)。在本實(shí)施例中,這些數(shù)據(jù)包括兩類(lèi),一類(lèi)是ERP表單的數(shù)據(jù),包含單據(jù)頭和單據(jù)體,另一類(lèi)是表單動(dòng)作,包含新增、保存、審核、退出、反寫(xiě)和自定義。所述分析單元1022根據(jù)測(cè)試用例中的數(shù)據(jù)分析出測(cè)試涉及的表單和測(cè)試邏輯,并進(jìn)行路徑組合,即獲得如上述的“新增銷(xiāo)售訂單?新增發(fā)貨檢驗(yàn)申請(qǐng)單?審核發(fā)貨檢驗(yàn)單?新增出庫(kù)單?新增發(fā)票”的信息。分析完畢,分析單元1022將測(cè)試涉及的表單信息傳給表單處理模塊103中的測(cè)試對(duì)象提取單元1031,以及將測(cè)試邏輯傳給測(cè)試調(diào)度模塊104中的邏輯處理單元1041。測(cè)試對(duì)象提取單元1031接收到測(cè)試涉及的表單信息后,根據(jù)預(yù)設(shè)的搜索字段,在測(cè)試涉及的表單中進(jìn)行檢索,遍歷表單中所有測(cè)試項(xiàng)后,提取符合條件的測(cè)試項(xiàng)和動(dòng)作,封裝成測(cè)試對(duì)象,進(jìn)行編號(hào)后存放到測(cè)試對(duì)象池1032中。ERP表單(即測(cè)試涉及的表單)的單據(jù)頭和單據(jù)體數(shù)據(jù)加上對(duì)象編號(hào)后,會(huì)存放到表單數(shù)據(jù)存儲(chǔ)區(qū)1033。
[0029]在自動(dòng)化測(cè)試執(zhí)行階段,測(cè)試用例中涉及的所有ERP表單數(shù)據(jù)經(jīng)表單處理模塊103處理完畢后,邏輯處理單元1041根據(jù)分析單元1022傳入的表單間的邏輯關(guān)系,將每個(gè)業(yè)務(wù)節(jié)點(diǎn)上涉及到的測(cè)試對(duì)象、數(shù)據(jù)和邏輯封裝成組件。組件在整個(gè)測(cè)試過(guò)程中可以重復(fù)調(diào)用,通過(guò)不同組件的跳轉(zhuǎn),形成ERP軟件的業(yè)務(wù)流程。組裝完畢后,通知調(diào)度單元1042。調(diào)度單元1042到測(cè)試對(duì)象池1032和表單數(shù)據(jù)區(qū)1033按先后順序提取所需測(cè)試對(duì)象和測(cè)試數(shù)據(jù),啟動(dòng)組件的業(yè)務(wù)流程測(cè)試。在自動(dòng)化測(cè)試進(jìn)行過(guò)程中,錯(cuò)誤監(jiān)控模塊105進(jìn)行全程監(jiān)控。錯(cuò)誤檢測(cè)單元1051收集程序和系統(tǒng)的錯(cuò)誤信息,從而能夠檢測(cè)出測(cè)試過(guò)程中出現(xiàn)的異常信息。此外,錯(cuò)誤檢測(cè)單元1051還用于確認(rèn)是否能夠處理所述異常信息,如果能夠處理,則將收到的信息分類(lèi)后,提交給錯(cuò)誤處理單元1052進(jìn)一步處理。如果處理不了,即將測(cè)試路徑恢復(fù)到上一測(cè)試節(jié)點(diǎn),重新執(zhí)行該測(cè)試步驟。以此類(lèi)推,如果恢復(fù)失敗,表示測(cè)試執(zhí)行遭到阻塞,則進(jìn)行日志記錄,進(jìn)行下一次測(cè)試迭代。所述錯(cuò)誤處理單元1052則根據(jù)異常信息的類(lèi)型,以預(yù)先設(shè)定的模式進(jìn)行處理。
[0030]在自動(dòng)化測(cè)試結(jié) 束階段,報(bào)告整合模塊106中的數(shù)據(jù)收集單元1061收集測(cè)試過(guò)程中的所有信息后,匯總各個(gè)信息的分類(lèi),例如,自動(dòng)測(cè)試結(jié)果、測(cè)試過(guò)程數(shù)據(jù)度量、測(cè)試過(guò)程中的異常信息等等。錯(cuò)誤定位單元1062根據(jù)測(cè)試執(zhí)行結(jié)果,判斷是否需要進(jìn)行錯(cuò)誤定位。具體的,如果發(fā)生異常或錯(cuò)誤,則根據(jù)異常信息定位到發(fā)生錯(cuò)誤的對(duì)應(yīng)測(cè)試節(jié)點(diǎn)上,并將異常信息整合在報(bào)告中。最后,生成測(cè)試分析報(bào)告,信息分發(fā)單元1063將測(cè)試分析報(bào)告發(fā)送給預(yù)先設(shè)定的項(xiàng)目相關(guān)人員。
[0031 ] 如圖3所示,其為本發(fā)明的ERP軟件自動(dòng)化測(cè)試方法的流程示意圖,所述方法包括以下步驟:
步驟301,填寫(xiě)自動(dòng)化測(cè)試的測(cè)試用例模板和配置文件,并在確認(rèn)本次ERP軟件自動(dòng)化測(cè)試信息后,啟動(dòng)測(cè)試流程。本實(shí)施例中,由測(cè)試人員手動(dòng)填寫(xiě)自動(dòng)化測(cè)試的配置文件信息和建立測(cè)試用例模板。測(cè)試流程啟動(dòng)后,讀取自動(dòng)化測(cè)試配置文件,以獲取本次自動(dòng)化測(cè)試的相關(guān)信息。具體的,所述配置文件包括預(yù)先定義的配置信息,其記錄著測(cè)試用例的路徑信息、系統(tǒng)當(dāng)前的環(huán)境變量和用戶(hù)自定義的變量信息(請(qǐng)參考圖7),可通過(guò)讀取所述測(cè)試用例的路徑信息來(lái)獲得測(cè)試用例中記錄的相關(guān)聯(lián)信息。本實(shí)施例中,所述測(cè)試用例是指一個(gè)excel文件,其記錄測(cè)試活動(dòng)的相關(guān)信息,例如,表單名稱(chēng)、類(lèi)型、具體測(cè)試操作以及表單間邏輯關(guān)系可在測(cè)試用例中體現(xiàn)(請(qǐng)參閱圖5、6)。此外,所述測(cè)試用例可直接存儲(chǔ)于ERP軟件中,或者存儲(chǔ)于外接的存儲(chǔ)設(shè)備中,當(dāng)需要加載時(shí),分別通過(guò)直接讀取和USB讀取方式進(jìn)行獲取。
[0032]步驟302,自動(dòng)加載測(cè)試用例,并根據(jù)測(cè)試用例中的數(shù)據(jù)獲取測(cè)試涉及的表單和表單間的測(cè)試邏輯。本實(shí)施例中,所述測(cè)試用例是指初始化后,根據(jù)所述配置文件中的路徑信息所獲取到的一個(gè)excel文件,其記錄測(cè)試活動(dòng)的相關(guān)信息,例如,表單名稱(chēng)、表單類(lèi)型、具體測(cè)試操作以及表單間的邏輯關(guān)系可在測(cè)試用例中體現(xiàn)(請(qǐng)參閱圖5、6)。測(cè)試涉及的表單是指測(cè)試用例中記錄的在ERP軟件中預(yù)先存儲(chǔ)的一個(gè)或多個(gè)表單(下稱(chēng)ERP表單)。表單間的邏輯關(guān)系是指測(cè)試涉及的各個(gè)表單之間的先后邏輯關(guān)系。具體的,在本實(shí)施例中,測(cè)試用例(即excel表格)中有專(zhuān)門(mén)的字段記錄所涉及的表單和表單間的邏輯關(guān)系,如圖5所示,“ERP表單” 一列記錄本次測(cè)試所涉及的表單,“路徑描述” 一列則記錄表單間的邏輯關(guān)系。通過(guò)讀取測(cè)試用例中指定的列,例如“ERP表單”和“路徑描述”兩列,可獲得測(cè)試涉及的表單和表單間的邏輯關(guān)系。而所述測(cè)試邏輯是結(jié)合測(cè)試用例中的具體測(cè)試操作以及表單間的邏輯關(guān)系所獲得的信息。具體的,請(qǐng)參閱圖5,讀取“操作”和“路徑描述”2列的信息,根據(jù)“操作” 一列中的編號(hào)確定先后順序,再對(duì)“路徑描述” 一列中的箭頭標(biāo)志進(jìn)行分割,進(jìn)行組合,形成表單間的測(cè)試邏輯:新增銷(xiāo)售訂單?新增發(fā)貨檢驗(yàn)申請(qǐng)單?審核發(fā)貨檢驗(yàn)單?新增出庫(kù)單?新增發(fā)票。
[0033]步驟303,自動(dòng)加載測(cè)試涉及的表單,對(duì)表單進(jìn)行測(cè)試對(duì)象封裝和數(shù)據(jù)提取。其中,測(cè)試涉及的表單測(cè)試項(xiàng)都封裝為測(cè)試對(duì)象,且每個(gè)表單的數(shù)據(jù)單獨(dú)提取出來(lái),所述測(cè)試項(xiàng)是指測(cè)試涉及的表單中需要測(cè)試的字段。更具體的,獲得測(cè)試涉及的表單信息后,根據(jù)預(yù)設(shè)的搜索字段,例如圖6中 的單據(jù)頭字段和單據(jù)體字段,在測(cè)試涉及的表單中進(jìn)行檢索,遍歷表單中所有測(cè)試項(xiàng)后,提取測(cè)試涉及的ERP表單中符合條件的測(cè)試項(xiàng)和動(dòng)作,封裝成測(cè)試對(duì)象,進(jìn)行編號(hào)后進(jìn)行存儲(chǔ)。如果兩個(gè)表單中測(cè)試項(xiàng)字段名稱(chēng)重復(fù),則在字段名前面加表單名以示區(qū)分。此外,ERP表單的單據(jù)頭和單據(jù)體數(shù)據(jù)加上對(duì)象編號(hào)后,也會(huì)另行存儲(chǔ)。
[0034]步驟304,根據(jù)所述測(cè)試邏輯,調(diào)度所需的測(cè)試對(duì)象和數(shù)據(jù)進(jìn)行逐一節(jié)點(diǎn)測(cè)試。在本實(shí)施例中,首先根據(jù)各個(gè)ERP表單間的邏輯關(guān)系(例如圖5的“路徑描述”一列),將每個(gè)表單上涉及到的測(cè)試對(duì)象、數(shù)據(jù)和邏輯關(guān)系封裝成組件。完成組裝后,根據(jù)所述邏輯關(guān)系,確定每一個(gè)測(cè)試步驟加載的表單。例如,在圖5的“路徑描述”一列中,邏輯關(guān)系是:銷(xiāo)售訂單?發(fā)貨通知單?出庫(kù)單?發(fā)票,那么設(shè)定的路徑就是第一步加載銷(xiāo)售訂單,第二步加載發(fā)貨通知單,第三步加載出庫(kù)單,第四步加載發(fā)票單據(jù)。最后,按所述邏輯關(guān)系提取所需表單中的測(cè)試對(duì)象和測(cè)試數(shù)據(jù),啟動(dòng)組件的業(yè)務(wù)流程測(cè)試。在本實(shí)施例中,首先設(shè)定第一步路徑為新增銷(xiāo)售訂單,接著找到封裝的銷(xiāo)售訂單對(duì)象,并根據(jù)表單邏輯新增動(dòng)作,組合成新增銷(xiāo)售訂單組件。同時(shí),設(shè)定下一步路徑為新增發(fā)貨檢驗(yàn)申請(qǐng)單。設(shè)定完畢后,再尋找發(fā)貨檢驗(yàn)申請(qǐng)單對(duì)象,根據(jù)表單邏輯新增動(dòng)作,組合成新增發(fā)貨檢驗(yàn)申請(qǐng)單組件。以此類(lèi)推,遍歷完成5個(gè)業(yè)務(wù)節(jié)點(diǎn)的處理,通過(guò)不同組件的跳轉(zhuǎn),形成ERP軟件的業(yè)務(wù)流程,啟動(dòng)組件的業(yè)務(wù)流程測(cè)試。其中,組件在整個(gè)測(cè)試過(guò)程中可以重復(fù)調(diào)用,通過(guò)不同組件的跳轉(zhuǎn),形成ERP軟件的執(zhí)行流程。[0035]步驟305,對(duì)自動(dòng)化測(cè)試過(guò)程進(jìn)行監(jiān)控,處理測(cè)試過(guò)程中發(fā)生的異常,產(chǎn)生日志文件。所述異常是指測(cè)試過(guò)程中任何能夠阻塞測(cè)試的事件。當(dāng)異常發(fā)生時(shí),首先是捕獲異常,再提交給模塊相應(yīng)單元作進(jìn)一步的處理。如果處理不了,就將測(cè)試路徑恢復(fù)到上一測(cè)試節(jié)點(diǎn),重新執(zhí)行該測(cè)試步驟。以此類(lèi)推,如果恢復(fù)失敗,表示測(cè)試執(zhí)行遭到阻塞,則進(jìn)行日志記錄,進(jìn)行下一次測(cè)試迭代。
[0036]步驟306,收集自動(dòng)化測(cè)試結(jié)果,對(duì)結(jié)果進(jìn)行錯(cuò)誤定位,并作初步分析后形成測(cè)試報(bào)告,通過(guò)郵件服務(wù)器發(fā)送給相關(guān)人員。具體的,步驟306具體包括:根據(jù)所述自動(dòng)化測(cè)試結(jié)果,判斷是否發(fā)生異?;蝈e(cuò)誤,如果判斷發(fā)生異常或錯(cuò)誤,則根據(jù)異常信息定位到發(fā)生錯(cuò)誤的對(duì)應(yīng)測(cè)試節(jié)點(diǎn)上,并將異常信息整合到測(cè)試報(bào)告中,如果判斷未發(fā)生異?;蝈e(cuò)誤,則生成“正?!钡臏y(cè)試報(bào)告。所述測(cè)試報(bào)告是在采集數(shù)據(jù)后,根據(jù)預(yù)定義的報(bào)告格式完成制作。報(bào)告的分發(fā)依靠公司的郵件接口和配置文件中的郵件接收人,進(jìn)行自動(dòng)發(fā)送。
[0037]更具體的,請(qǐng)參閱圖4,其為本發(fā)明提供的ERP軟件自動(dòng)化測(cè)試方法用于處理ERP銷(xiāo)售子系統(tǒng)出庫(kù)模塊的流程圖。所述ERP軟件自動(dòng)化測(cè)試方法包括以下步驟: 步驟401,根據(jù)銷(xiāo)售子系統(tǒng)需要測(cè)試的出庫(kù)模塊填寫(xiě)測(cè)試用例模板文件。本次自動(dòng)化測(cè)試需要填寫(xiě)主用例工作表和銷(xiāo)售出庫(kù)工作表信息,所述銷(xiāo)售出庫(kù)工作表為輔助工作表。主用例工作表如圖5所示,包含編號(hào)、標(biāo)識(shí)、模塊、功能點(diǎn)、ERP表單、操作和路徑描述。作為輔助工作表的銷(xiāo)售出庫(kù)工作表如圖6所示,包含銷(xiāo)售出庫(kù)單據(jù)的單據(jù)頭和單據(jù)體,記錄著本次自動(dòng)化測(cè)試數(shù)據(jù)??梢岳斫?,如需要測(cè)試的模塊增加,則增加對(duì)應(yīng)的輔助工作表,以記錄增加的表單數(shù)據(jù)即可。
[0038]步驟402,更改自動(dòng)化測(cè)試框架下的配置文件。配置文件如圖7所示,包含自動(dòng)化測(cè)試用例路徑、當(dāng)前系統(tǒng)環(huán)境變量、Email地址和其它變量信息。在本步驟中,主要是修改本次出庫(kù)模塊測(cè)試用例的路徑信息,確認(rèn)系統(tǒng)當(dāng)前的環(huán)境變量和測(cè)試人員自定義的郵件地
址等變量信息。
[0039]步驟403,啟動(dòng)自動(dòng)化測(cè)試腳本,開(kāi)始出庫(kù)模塊的自動(dòng)化測(cè)試。具體的,初始化腳本加載指定路徑下的配置文件,讀取配置文件下的“自動(dòng)化測(cè)試用例路徑” 一列,獲取本次自動(dòng)化測(cè)試所需要執(zhí)行的測(cè)試用例,同時(shí)檢查當(dāng)前系統(tǒng)的環(huán)境變量是否正確。然后,根據(jù)初始化腳本傳過(guò)來(lái)的測(cè)試用例信息,打開(kāi)指定路徑下的測(cè)試用例,讀取“ERP表單”、“操作”和“路徑描述” 3列中的信息。本實(shí)施例中,首先讀取“ERP表單” 一列中的信息,根據(jù)編號(hào),獲取所涉及到的ERP表單。本實(shí)施例中,涉及到5種表單:銷(xiāo)售訂單、發(fā)貨檢驗(yàn)申請(qǐng)單、發(fā)貨檢驗(yàn)審核單、出庫(kù)單和發(fā)票。接著,讀取“操作”和“路徑描述”2列的信息,根據(jù)“操作”一列中的編號(hào)確定先后順序,再對(duì)路徑描述一列中的箭頭標(biāo)志進(jìn)行分割,進(jìn)行組合,形成表單間的測(cè)試邏輯:新增銷(xiāo)售訂單?新增發(fā)貨檢驗(yàn)申請(qǐng)單?審核發(fā)貨檢驗(yàn)單?新增出庫(kù)單?新增發(fā)票。需要處理的表單信息傳給表單處理腳本,表單間的測(cè)試邏輯傳給測(cè)試調(diào)度腳本。表單處理腳本根據(jù)測(cè)試用例分析結(jié)果所得到需要進(jìn)行處理的5種表單信息,到ERP軟件中提取符合條件的測(cè)試項(xiàng),并通過(guò)腳本封裝成測(cè)試對(duì)象,測(cè)試對(duì)象包含著表單的測(cè)試項(xiàng)和對(duì)應(yīng)的動(dòng)作。對(duì)象封裝成功后,自動(dòng)生成對(duì)象編號(hào),接著在ERP表單數(shù)據(jù)加上對(duì)象編號(hào),指明對(duì)應(yīng)關(guān)系,并放到表單數(shù)據(jù)存儲(chǔ)區(qū)域。測(cè)試調(diào)度腳本根據(jù)傳入的表單之間的測(cè)試邏輯,首先設(shè)定第一步路徑為新增銷(xiāo)售訂單,接著找到封裝的銷(xiāo)售訂單對(duì)象,并根據(jù)表單邏輯新增動(dòng)作,組合成新增銷(xiāo)售訂單組件。同時(shí),設(shè)定下一步路徑為新增發(fā)貨檢驗(yàn)申請(qǐng)單。設(shè)定完畢后,再去尋找發(fā)貨檢驗(yàn)申請(qǐng)單對(duì)象,根據(jù)表單邏輯新增動(dòng)作,組合成新增發(fā)貨檢驗(yàn)申請(qǐng)單組件。以此類(lèi)推,遍歷完成5個(gè)業(yè)務(wù)節(jié)點(diǎn)的處理,通過(guò)不同組件的跳轉(zhuǎn),形成ERP軟件的業(yè)務(wù)流程,啟動(dòng)組件的業(yè)務(wù)流程測(cè)試。
[0040]步驟404,監(jiān)控自動(dòng)化測(cè)試過(guò)程,并判斷是否發(fā)生異常,如果是,則進(jìn)一步執(zhí)行步驟405:判斷是否能夠處理異常;如果判斷未發(fā)生異常,則執(zhí)行步驟406:顯示自動(dòng)化測(cè)試正常結(jié)束。如果能夠處理異常,則執(zhí)行步驟407:捕獲異常,再提交給模塊相應(yīng)單元作進(jìn)一步的處理;如果無(wú)法處理,則執(zhí)行步驟408:將測(cè)試路徑恢復(fù)到上一測(cè)試節(jié)點(diǎn),重新執(zhí)行該測(cè)試步驟。具體的,請(qǐng)參閱圖9,在本實(shí)施例中,包含了銷(xiāo)售出庫(kù)業(yè)務(wù)組件測(cè)試中的五個(gè)流程節(jié)點(diǎn):訂單節(jié)點(diǎn)、發(fā)貨檢驗(yàn)申請(qǐng)節(jié)點(diǎn)、發(fā)貨檢驗(yàn)節(jié)點(diǎn)、出庫(kù)節(jié)點(diǎn)、發(fā)票節(jié)點(diǎn),在自動(dòng)化測(cè)試過(guò)程中,每個(gè)組件節(jié)點(diǎn)都設(shè)置一個(gè)還原點(diǎn)。腳本實(shí)時(shí)監(jiān)控執(zhí)行狀態(tài),一旦發(fā)生錯(cuò)誤即調(diào)用相關(guān)模塊。例如,在出庫(kù)節(jié)點(diǎn)測(cè)試時(shí)ERP軟件意外崩潰重啟,測(cè)試受到了阻塞。此時(shí),自動(dòng)化測(cè)試腳本檢測(cè)到出庫(kù)節(jié)點(diǎn)出錯(cuò),并捕獲到了該異常。自動(dòng)化測(cè)試腳本根據(jù)異常類(lèi)型,與預(yù)先設(shè)定的異常進(jìn)行匹配。匹配成功并進(jìn)行日志記錄后,啟動(dòng)組件還原點(diǎn),將測(cè)試路徑恢復(fù)到上一測(cè)試節(jié)點(diǎn)發(fā)貨檢驗(yàn)節(jié)點(diǎn),重新執(zhí)行該測(cè)試步驟,自動(dòng)化測(cè)試流程得以持續(xù)進(jìn)行。
[0041]步驟409,整合測(cè)試報(bào)告。本實(shí)施例中,無(wú)論是監(jiān)控發(fā)生異常還是測(cè)試正常結(jié)束,均進(jìn)入此步驟。具體的,在本步驟中,報(bào)告整合腳本首先讀取如圖8所示的自動(dòng)化測(cè)試報(bào)告模板。然后,獲取系統(tǒng)當(dāng)前日期,填寫(xiě)日期一欄。接著讀取圖5測(cè)試用例中的“功能點(diǎn)”和“標(biāo)識(shí)”,分別填寫(xiě)到“測(cè)試業(yè)務(wù)”和“用例號(hào)”兩列。最后將每個(gè)業(yè)務(wù)節(jié)點(diǎn)的測(cè)試結(jié)果填寫(xiě)到“結(jié)果”一欄。測(cè)試報(bào)告模板填寫(xiě)完畢,讀取圖7配置文件中的Email地址信息,通過(guò)公司郵件服務(wù)器發(fā)送給測(cè)試人員。測(cè)試人員收到報(bào)告后,作進(jìn)一步的分析。可以理解,本實(shí)施例中所述的填寫(xiě),可由系統(tǒng)自行獲取,也可由測(cè)試人員手動(dòng)填寫(xiě)。
[0042]總的來(lái)說(shuō),本發(fā)明的ERP軟件自動(dòng)化測(cè)試系統(tǒng)及方法于初始化啟動(dòng)后,以測(cè)試用例作為輸入點(diǎn),接著將測(cè)試要素封裝成組件進(jìn)行自動(dòng)化測(cè)試,直到測(cè)試結(jié)束都不需要測(cè)試人員手工干預(yù),節(jié)省了人力和時(shí)間。此外,以用例驅(qū)動(dòng)測(cè)試,再通過(guò)組件的封裝,根據(jù)ERP軟件不同的業(yè)務(wù)流程的重組,實(shí)現(xiàn)組件的重用,提高了測(cè)試覆蓋率,加快了測(cè)試進(jìn)度,縮短了測(cè)試周期。同時(shí),當(dāng)錯(cuò)誤發(fā)生時(shí),通過(guò)組件的錯(cuò)誤定位能快速定位到相關(guān)流程節(jié)點(diǎn)上,迅速解決問(wèn)題,提升軟件質(zhì)量。
[0043]需要說(shuō)明的是,通過(guò)以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以全部通過(guò)硬件來(lái)實(shí)施?;谶@樣的理解,本發(fā)明的技術(shù)方案對(duì)【背景技術(shù)】做出貢獻(xiàn)的全部或者部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如R0M/RAM、磁碟、光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。
[0044]以上所揭露的僅為本發(fā)明實(shí)施例中的較佳實(shí)施例而已,當(dāng)然不能以此來(lái)限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
【權(quán)利要求】
1.一種ERP軟件自動(dòng)化測(cè)試系統(tǒng),用于對(duì)ERP軟件進(jìn)行自動(dòng)化測(cè)試,所述ERP軟件包括多個(gè)ERP表單,所述ERP軟件自動(dòng)化測(cè)試系統(tǒng)包括: 初始化模塊,用于讀取配置文件信息,啟動(dòng)測(cè)試流程; 用例分析模塊,用于根據(jù)所述配置文件信息加載測(cè)試用例,并根據(jù)測(cè)試用例中的數(shù)據(jù)分析測(cè)試所涉及的ERP表單及各表單間的測(cè)試邏輯; 表單處理模塊,用于加載所述用例分析模塊分析的測(cè)試所涉及的ERP表單,并獲取表單中的測(cè)試對(duì)象和數(shù)據(jù); 測(cè)試調(diào)度模塊,用于根據(jù)所述用例分析模塊分析后的表單間的測(cè)試邏輯,調(diào)度所需的測(cè)試對(duì)象和數(shù)據(jù)進(jìn)行測(cè)試; 錯(cuò)誤監(jiān)控模塊,用于監(jiān)控測(cè)試調(diào)度執(zhí)行過(guò)程中出現(xiàn)的異常情況并確認(rèn)是否能夠進(jìn)行處理,如果是,則進(jìn)行對(duì)應(yīng)處理,如果無(wú)法處理,則恢復(fù)到上一測(cè)試節(jié)點(diǎn)重新測(cè)試;以及 報(bào)告整合模塊,用于根據(jù)所述測(cè)試調(diào)度模塊的測(cè)試結(jié)果,并結(jié)合錯(cuò)誤監(jiān)控模塊監(jiān)控到的異常情況,自動(dòng)生成測(cè)試報(bào)告后分發(fā)至相關(guān)接口。
2.如權(quán)利要求1所述的ERP軟件自動(dòng)化測(cè)試系統(tǒng),其特征在于,所述初始化模塊包括加載單元和用例驅(qū)動(dòng)單元,所述加載單元用于讀取指定路徑下的配置文件中的信息,所述用例驅(qū)動(dòng)單元用于根據(jù)配置文件信息讀取所有測(cè)試用例信息。
3.如權(quán)利要求2所述的ERP軟件自動(dòng)化測(cè)試系統(tǒng),其特征在于,所述用例分析模塊包括讀取單元和分析單元,所述讀取單元用于加載所述用例驅(qū)動(dòng)單元讀取的測(cè)試用例信息,并讀取測(cè)試用例中指定位置的信息,所述分析單元用于根據(jù)所述指定位置的信息,分析測(cè)試涉及的表單以及表單間的測(cè)試邏輯。
4.如權(quán)利要求1所 述的ERP軟件自動(dòng)化測(cè)試系統(tǒng),其特征在于,所述測(cè)試用例包括ERP表單、操作以及路徑描述的數(shù)據(jù),所述ERP表單表示測(cè)試所涉及的表單,所述操作數(shù)據(jù)表示測(cè)試具體操作,所述路徑描述記錄表單間的邏輯關(guān)系,所述用例分析模塊根據(jù)ERP表單列分析測(cè)試所涉及的表單,以及根據(jù)操作以及路徑描述兩列分析所述表單間的測(cè)試邏輯。
5.如權(quán)利要求1所述的ERP軟件自動(dòng)化測(cè)試系統(tǒng),其特征在于,所述表單處理模塊包括測(cè)試對(duì)象提取單元、測(cè)試對(duì)象池和表單數(shù)據(jù)存儲(chǔ)區(qū),所述測(cè)試對(duì)象提取單元用于獲取所述用例分析模塊分析的測(cè)試涉及的表單信息,并根據(jù)預(yù)設(shè)的關(guān)鍵字段,在測(cè)試涉及的表單中檢索所有符合條件的測(cè)試對(duì)象,所述測(cè)試對(duì)象池用于存儲(chǔ)所述所有符合條件的測(cè)試對(duì)象,所述表單數(shù)據(jù)存儲(chǔ)區(qū)用于存儲(chǔ)每個(gè)測(cè)試對(duì)象的數(shù)據(jù)。
6.如權(quán)利要求5所述的ERP軟件自動(dòng)化測(cè)試系統(tǒng),其特征在于,所述測(cè)試調(diào)度模塊包括邏輯處理單元和調(diào)度單元,所述邏輯處理單元用于將測(cè)試對(duì)象、測(cè)試對(duì)象的數(shù)據(jù)和所述表單間的測(cè)試邏輯封裝成組件,且設(shè)定測(cè)試執(zhí)行路徑;所述調(diào)度單元用于在路徑設(shè)定完畢后,從測(cè)試對(duì)象池和表單數(shù)據(jù)區(qū)提取所需測(cè)試對(duì)象和測(cè)試數(shù)據(jù),并啟動(dòng)組件測(cè)試。
7.如權(quán)利要求6所述的ERP軟件自動(dòng)化測(cè)試系統(tǒng),其特征在于,所述報(bào)告整合模塊包括數(shù)據(jù)收集單元、錯(cuò)誤定位單元和信息分發(fā)單元,所述數(shù)據(jù)收集單元用于收集測(cè)試執(zhí)行結(jié)果,所述錯(cuò)誤定位單元用于根據(jù)測(cè)試執(zhí)行結(jié)果,判斷是否需要進(jìn)行錯(cuò)誤定位,如需要進(jìn)行錯(cuò)誤定位,則定位到對(duì)應(yīng)的錯(cuò)誤節(jié)點(diǎn),并將錯(cuò)誤節(jié)點(diǎn)中異常信息整合在報(bào)告中,所述信息分發(fā)單元用于與郵件服務(wù)器產(chǎn)生交互,并將測(cè)試報(bào)告分發(fā)給項(xiàng)目相關(guān)人員。
8.如權(quán)利要求1所述的ERP軟件自動(dòng)化測(cè)試系統(tǒng),其特征在于,所述錯(cuò)誤監(jiān)控模塊包括錯(cuò)誤檢測(cè)單元和錯(cuò)誤處理單元,所述錯(cuò)誤檢測(cè)單元用于檢測(cè)測(cè)試過(guò)程中的異常信息,并確認(rèn)是否能夠進(jìn)行處理所述異常信息,如果能夠處理,則將異常信息提交給所述錯(cuò)誤處理單元;如果無(wú)法處理,則恢復(fù)到上一測(cè)試節(jié)點(diǎn)重新測(cè)試,所述錯(cuò)誤處理單元?jiǎng)t用于根據(jù)異常信息類(lèi)型,對(duì)異常信息作相應(yīng)的處理。
9.一種ERP軟件自動(dòng)化測(cè)試方法,其包括: 讀取配置文件信息,啟動(dòng)測(cè)試流程; 根據(jù)所述配置文件信息加載測(cè)試用例,并根據(jù)測(cè)試用例中的數(shù)據(jù)分析測(cè)試所涉及的ERP表單及各表單間的測(cè)試邏輯; 加載分析后的測(cè)試所涉及的ERP表單,并獲取表單中的測(cè)試對(duì)象和數(shù)據(jù); 根據(jù)分析后的表單間的測(cè)試邏輯,調(diào)度所需的測(cè)試對(duì)象和數(shù)據(jù)進(jìn)行測(cè)試; 監(jiān)控測(cè)試過(guò)程中出現(xiàn)的異常情況并確認(rèn)是否能夠進(jìn)行處理,如果是,則進(jìn)行對(duì)應(yīng)處理,如果無(wú)法處理,則恢復(fù)到上一測(cè)試節(jié)點(diǎn)重新測(cè)試;以及 根據(jù)測(cè)試結(jié)果,并結(jié)合監(jiān)控到的異常情況,自動(dòng)生成測(cè)試報(bào)告后分發(fā)至相關(guān)接口。
10.如權(quán)利要求9所述的ERP軟件自動(dòng)化測(cè)試方法,其特征在于,所述根據(jù)測(cè)試結(jié)果,并結(jié)合監(jiān)控到的異常情況,自動(dòng)生成測(cè)試報(bào)告后分發(fā)至相關(guān)接口的步驟進(jìn)一步包括: 判斷是否需要進(jìn)行錯(cuò)誤定位,如需要進(jìn)行錯(cuò)誤定位,則定位到對(duì)應(yīng)的錯(cuò)誤節(jié)點(diǎn),并將錯(cuò)誤節(jié)點(diǎn)的異常信息整合在報(bào)告中。
【文檔編號(hào)】G06F11/36GK103631713SQ201310537410
【公開(kāi)日】2014年3月12日 申請(qǐng)日期:2013年11月4日 優(yōu)先權(quán)日:2013年11月4日
【發(fā)明者】曾宇濤, 宋丹 申請(qǐng)人:中安消技術(shù)有限公司