欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

Erp軟件自動化測試系統(tǒng)及方法

文檔序號:6517702閱讀:829來源:國知局
Erp軟件自動化測試系統(tǒng)及方法
【專利摘要】本發(fā)明公開一種ERP軟件自動化測試系統(tǒng),包括:初始化模塊,用于讀取配置文件信息;用例分析模塊,用于根據(jù)所述配置文件信息加載測試用例,并分析測試所涉及的ERP表單及各表單間的測試邏輯;表單處理模塊,用于加載測試所涉及的ERP表單,并獲取表單中的測試對象和數(shù)據(jù);測試調(diào)度模塊,用于根據(jù)所述表單間的測試邏輯,調(diào)度所需的測試對象和數(shù)據(jù)進行測試;錯誤監(jiān)控模塊,用于監(jiān)控測試調(diào)度執(zhí)行過程中出現(xiàn)的異常情況并確認是否能夠進行處理,如果是,則進行對應(yīng)處理,如果無法處理,則恢復到上一測試節(jié)點重新測試;以及報告整合模塊,用于根據(jù)所述測試調(diào)度模塊的測試結(jié)果,并結(jié)合錯誤監(jiān)控模塊監(jiān)控到的異常情況,自動生成測試報告后分發(fā)至相關(guān)接口。
【專利說明】ERP軟件自動化測試系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及軟件測試領(lǐng)域,尤其涉及一種ERP軟件自動化測試系統(tǒng)和ERP軟件自動化測試方法。
【背景技術(shù)】
[0002]ERP是企業(yè)資源計劃(Enterprise Resource Planning)的簡稱,其是針對物資資源管理、人力資源管理、財務(wù)資源管理、信息資源管理集成一體化的企業(yè)管理軟件。ERP軟件代表最為先進的管理模式,幾乎能解決企業(yè)遇到的所有問題,通過ERP管理系統(tǒng),企業(yè)能提高管理效率和市場競爭力,因此ERP軟件的推廣應(yīng)用在國內(nèi)外都很廣泛。隨著信息技術(shù)和制造業(yè)技術(shù)的不斷發(fā)展,企業(yè)對ERP軟件的依賴和需求都在增加。
[0003]每一個新業(yè)務(wù)需求的提出,都需要在原有的ERP軟件上作一定的更改。而ERP軟件業(yè)務(wù)流程復雜多變,對其中一個模塊進行修改,會影響到業(yè)務(wù)流程節(jié)點上的所有模塊。因此,測試人員面對ERP軟件頻繁的需求更新時,會需要花費較多的時間進行完整的系統(tǒng)測試。而實際上,許多升級的版本或只做少量更改的需求,只需針對修改的部分進行測試。在這種情況下,不僅浪費測試人員的時間,而且極有可能在業(yè)務(wù)系統(tǒng)上線時出現(xiàn)難以預(yù)料的錯誤。

【發(fā)明內(nèi)容】

[0004]為了解決上述問題,本發(fā)明提供一種ERP軟件自動化測試系統(tǒng)和ERP軟件自動化測試方法,其執(zhí)行速度快,能夠節(jié)省人力、時間或硬件資源,且保證系統(tǒng)質(zhì)量。
[0005]本發(fā)明實施例提供一種ERP軟件自動化測試系統(tǒng),用于對ERP軟件進行自動化測試,所述ERP軟件包括多個ERP表單。所述ERP軟件自動化測試系統(tǒng)包括:初始化模塊,用于讀取配置文件信息,啟動測試流程;用例分析模塊,用于根據(jù)所述配置文件信息加載測試用例,并根據(jù)測試用例中的數(shù)據(jù)分析測試所涉及的ERP表單及各表單間的測試邏輯;表單處理模塊,用于加載所述用例分析模塊分析的測試所涉及的ERP表單,并獲取表單中的測試對象和數(shù)據(jù);測試調(diào)度模塊,用于根據(jù)所述用例分析模塊分析后的表單間的測試邏輯,調(diào)度所需的測試對象和數(shù)據(jù)進行測試;錯誤監(jiān)控模塊,用于監(jiān)控測試調(diào)度執(zhí)行過程中出現(xiàn)的異常情況并確認是否能夠進行處理,如果是,則進行對應(yīng)處理,如果無法處理,則恢復到上一測試節(jié)點重新測試;以及報告整合模塊,用于根據(jù)所述測試調(diào)度模塊的測試結(jié)果,并結(jié)合錯誤監(jiān)控模塊監(jiān)控到的異常情況,自動生成測試報告后分發(fā)至相關(guān)接口。
[0006]優(yōu)選的,所述初始化模塊包括加載單元和用例驅(qū)動單元,所述加載單元用于讀取指定路徑下的配置文件中的信息,所述用例驅(qū)動單元用于根據(jù)配置文件信息讀取所有測試用例信息。
[0007]優(yōu)選的,所述用例分析模塊包括讀取單元和分析單元,所述讀取單元用于加載所述用例驅(qū)動單元讀取的測試用例信息,并讀取測試用例中指定位置的信息,所述分析單元用于根據(jù)所述指定位置的信息,分析測試涉及的表單以及表單間的測試邏輯。[0008]優(yōu)選的,所述測試用例包括ERP表單、操作以及路徑描述的數(shù)據(jù),所述ERP表單表示測試所涉及的表單,所述操作數(shù)據(jù)表示測試具體操作,所述路徑描述記錄表單間的邏輯關(guān)系,所述用例分析模塊根據(jù)ERP表單列分析測試所涉及的表單,以及根據(jù)操作以及路徑描述兩列分析所述表單間的測試邏輯。
[0009]優(yōu)選的,所述表單處理模塊包括測試對象提取單元、測試對象池和表單數(shù)據(jù)存儲區(qū),所述測試對象提取單元用于獲取所述用例分析模塊分析的測試涉及的表單信息,并根據(jù)預(yù)設(shè)的關(guān)鍵字段,在測試涉及的表單中檢索所有符合條件的測試對象,所述測試對象池用于存儲所述所有符合條件的測試對象,所述表單數(shù)據(jù)存儲區(qū)用于存儲每個測試對象的數(shù)據(jù)。
[0010]優(yōu)選的,所述測試調(diào)度模塊包括邏輯處理單元和調(diào)度單元,所述邏輯處理單元用于將測試對象、測試對象的數(shù)據(jù)和所述表單間的測試邏輯封裝成組件,且設(shè)定測試執(zhí)行路徑;所述調(diào)度單元用于在路徑設(shè)定完畢后,從測試對象池和表單數(shù)據(jù)區(qū)提取所需測試對象和測試數(shù)據(jù),并啟動組件測試。
[0011]優(yōu)選的,所述報告整合模塊包括數(shù)據(jù)收集單元、錯誤定位單元和信息分發(fā)單元,所述數(shù)據(jù)收集單元用于收集測試執(zhí)行結(jié)果,所述錯誤定位單元用于根據(jù)測試執(zhí)行結(jié)果,判斷是否需要進行錯誤定位,如需要進行錯誤定位,則定位到對應(yīng)的錯誤節(jié)點,并將錯誤節(jié)點中異常信息整合在報告中,所述信息分發(fā)單元用于與郵件服務(wù)器產(chǎn)生交互,并將測試報告分發(fā)給項目相關(guān)人員。
[0012]優(yōu)選的,所述錯誤監(jiān)控模塊包括錯誤檢測單元和錯誤處理單元,所述錯誤檢測單元用于檢測測試過程中的異常信息,并確認是否能夠進行處理所述異常信息,如果能夠處理,則將異常信息提交給所述錯誤處理單元;如果無法處理,則恢復到上一測試節(jié)點重新測試,所述錯誤處理單元則用于根據(jù)異常信息類型,對異常信息作相應(yīng)的處理。
[0013]本發(fā)明實施例另提供一種ERP軟件自動化測試方法,其包括:讀取配置文件信息,啟動測試流程;根據(jù)所述配置文件信息加載測試用例,并根據(jù)測試用例中的數(shù)據(jù)分析測試所涉及的ERP表單及各表單間的測試邏輯;加載分析后的測試所涉及的ERP表單,并獲取表單中的測試對象和數(shù)據(jù);根據(jù)分析后的表單間的測試邏輯,調(diào)度所需的測試對象和數(shù)據(jù)進行測試;監(jiān)控測試過程中出現(xiàn)的異常情況并確認是否能夠進行處理,如果是,則進行對應(yīng)處理,如果無法處理,則恢復到上一測試節(jié)點重新測試;以及根據(jù)測試結(jié)果,并結(jié)合監(jiān)控到的異常情況,自動生成測試報告后分發(fā)至相關(guān)接口。
[0014]優(yōu)選的,所述根據(jù)測試結(jié)果并結(jié)合監(jiān)控到的異常情況自動生成測試報告后分發(fā)至相關(guān)接口的步驟進一步包括:判斷是否需要進行錯誤定位,如需要進行錯誤定位,則定位到對應(yīng)的錯誤節(jié)點,并將錯誤節(jié)點的異常信息整合在報告中。
[0015]本發(fā)明的上述實施例具有自動化測試的功能,方便測試人員對ERP軟件進行測試,而且測試過程無需因為發(fā)生異常情況而重新測試,因此執(zhí)行速度快,節(jié)省了人力、時間或硬件資源,從而提高測試效率,并且能夠保證軟件質(zhì)量。
【專利附圖】

【附圖說明】
[0016]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0017]圖1為本發(fā)明實施例提供的ERP軟件自動化測試系統(tǒng)的框架示意圖;
圖2為圖1的ERP軟件自動化測試系統(tǒng)的細化框架示意圖;
圖3為本發(fā)明提供的ERP軟件自動化測試方法的流程圖;
圖4為本發(fā)明實施例提供的ERP軟件自動化測試方法處理ERP銷售子系統(tǒng)出庫模塊的流程圖;
圖5為圖4的ERP銷售子系統(tǒng)出庫模塊的一自動化測試用例模板示意圖;
圖6為圖4的ERP銷售子系統(tǒng)出庫模塊的另一自動化測試用例模板示意圖;
圖7為圖4的ERP銷售子系統(tǒng)出庫模塊的自動化測試的配置文件模板示意圖;
圖8為圖4的ERP銷售子系統(tǒng)出庫模塊的測試報告模板示意圖;
圖9為圖4的ERP軟件自 動化測試方法的測試路徑示意圖。
【具體實施方式】
[0018]下面結(jié)合附圖和【具體實施方式】對本發(fā)明的技術(shù)方案作進一步更詳細的描述。顯然,所描述的實施例僅僅是本發(fā)明的一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都應(yīng)屬于本發(fā)明保護的范圍。
[0019]如圖1所示,其為本發(fā)明的ERP軟件自動化測試系統(tǒng)100的總體框架示意圖,所述ERP軟件自動化測試系統(tǒng)100包括初始化模塊101、用例分析模塊102、表單處理模塊103、測試調(diào)度模塊104、錯誤監(jiān)控模塊105以及報告整合模塊106。
[0020]所述初始化模塊101用于讀取配置文件信息,并啟動測試流程。所述配置文件信息記錄著測試用例的路徑信息、系統(tǒng)當前的環(huán)境變量和用戶自定義的變量信息(請參考圖7)。啟動測試流程是本次自動化測試的正式開始。
[0021]所述用例分析模塊102用于根據(jù)所述配置文件信息,加載測試用例,并根據(jù)測試用例中的數(shù)據(jù)分析測試涉及的表單和測試邏輯。本實施例中,所述測試用例是指初始化后,所述用例分析模塊102根據(jù)所述配置文件信息中的路徑信息所獲取到的一個excel文件,其記錄測試活動的相關(guān)信息,例如,表單名稱、表單類型、具體測試操作以及表單間的邏輯關(guān)系可在測試用例中體現(xiàn)(請參閱圖5、6)。測試涉及的表單是指測試用例中記錄的ERP軟件中預(yù)先存儲的一個或多個表單(下稱ERP表單)。表單間的邏輯關(guān)系是指測試涉及的各個表單之間的先后邏輯關(guān)系,例如在ERP軟件上要先填采購訂單,然后才能生成發(fā)貨通知單,那么這兩個表單之間的邏輯關(guān)系在測試用例上的表現(xiàn)形式就為“采購訂單?發(fā)貨通知單”。具體的,在本實施例中,測試用例(即excel表格)中有專門的字段記錄所涉及的表單和表單間的邏輯關(guān)系,如圖5所示,“ERP表單”一列記錄本次測試所涉及的表單,“路徑描述”一列則記錄表單間的邏輯關(guān)系。通過讀取測試用例中指定的列,例如“ERP表單”和“路徑描述”兩列,可分析出測試涉及的表單和表單間的邏輯關(guān)系。而所述測試邏輯是結(jié)合測試用例中的具體測試操作以及表單間的邏輯關(guān)系所獲得的信息。具體的,請參閱圖5,所述用例分析模塊102讀取“操作”和“路徑描述”2列的信息,根據(jù)“操作”一列中的編號確定先后順序,再對“路徑描述”一列中的箭頭標志進行分割,進行組合,形成表單間的測試邏輯:新增銷售訂單?新增發(fā)貨檢驗申請單?審核發(fā)貨檢驗單?新增出庫單?新增發(fā)票。所述用例分析模塊102分析出測試涉及到的ERP表單以及測試邏輯后,將涉及到的ERP表單信息傳給表單處理模塊103,以及將測試邏輯傳給測試調(diào)度模塊104。需要注意的是,所述測試用例的模板文件可由測試人員手工填寫,也可自動加載。所述測試用例可直接存儲于ERP軟件中,或者存儲于外接的存儲設(shè)備中,當需要加載時,分別通過直接讀取和USB讀取方式進行獲取。
[0022]所述表單處理模塊103用于加載所述用例分析模塊102分析出的測試涉及的表單,并封裝表單中的測試對象和數(shù)據(jù)。其中,測試涉及的表單中的測試項都封裝為測試對象,且每個表單的數(shù)據(jù)單獨提取出來。更具體的,測試項是指測試涉及的表單中需要測試的字段。所述表單處理模塊103獲得測試涉及的表單信息后,根據(jù)預(yù)設(shè)的搜索字段,例如圖6中的單據(jù)頭字段和單據(jù)體字段,在測試涉及的表單中進行檢索,遍歷表單中所有測試項后,提取表單中符合條件的測試項和動作,封裝成測試對象,進行編號后進行存儲。如果兩個表單中測試項字段名稱重復,則在字段名前面加表單名以示區(qū)分。所述表單處理模塊103提取完表單數(shù)據(jù)后,結(jié)果供測試調(diào)度模塊104調(diào)用。
[0023]所述測試調(diào)度模塊104用于根據(jù)所述測試邏輯,從表單處理模塊103調(diào)度所需的測試對象和數(shù)據(jù)來執(zhí)行測試。具體的,以圖5為例,所述測試調(diào)度模塊104根據(jù)所述測試邏輯,首先設(shè)定第一步路徑為新增銷售訂單,接著找到封裝的銷售訂單對象,并根據(jù)表單邏輯新增動作,組合成新增銷售訂單組件。同時,設(shè)定下一步路徑為新增發(fā)貨檢驗申請單。設(shè)定完畢后,再尋找發(fā)貨檢驗申請單對象,根據(jù)表單邏輯新增動作,組合成新增發(fā)貨檢驗申請單組件。以此類推,遍歷完成5個業(yè)務(wù)節(jié)點的處理,通過不同組件的跳轉(zhuǎn),形成ERP軟件的業(yè)務(wù)流程,啟動組件的業(yè)務(wù)流程測試。
[0024]所述錯誤監(jiān)控模塊105用于在測試過程中,監(jiān)控測試調(diào)度執(zhí)行過程中出現(xiàn)的各種異常,并確認是否能夠處理異常,如果能夠處理,則首先是捕獲異常,再提交給模塊相應(yīng)單元作進一步的處理,如果 無法處理,則恢復到上一測試節(jié)點,重新執(zhí)行對應(yīng)的測試步驟。可以理解,所述異常是指測試過程中任何能夠阻塞測試的事件。
[0025]在測試結(jié)束后,所述報告整合模塊106根據(jù)所述測試調(diào)度模塊的測試結(jié)果,并結(jié)合錯誤監(jiān)控模塊105監(jiān)控到的異常情況,自動生成測試報告后分發(fā)至相關(guān)接口。具體的,所述報告整合模塊106根據(jù)所述錯誤監(jiān)控模塊105的監(jiān)控結(jié)果,判斷是否發(fā)生異?;蝈e誤。更具體地,如果判斷發(fā)生異?;蝈e誤,則根據(jù)異常信息定位到發(fā)生錯誤的對應(yīng)測試節(jié)點上,并將異常信息整合到測試報告中。如果判斷未發(fā)生異?;蝈e誤,則生成“正?!钡臏y試報告。所述測試報告是在采集數(shù)據(jù)后,根據(jù)預(yù)定義的報告格式完成的。報告的分發(fā)依靠公司的郵件接口和配置文件中的郵件接收人,進行自動發(fā)送。
[0026]如圖2所示,其為圖1的ERP自動化測試系統(tǒng)100的細化框架示意圖。其中,所述初始化模塊101包括加載單元1011以及用例驅(qū)動單元1012,所述用例分析模塊102包括讀取單元1021以及分析單元1022,所述表單處理模塊103包括測試對象提取單元1031、測試對象池1032以及表單數(shù)據(jù)區(qū)1033,所述測試調(diào)度模塊104包括邏輯處理單元1041以及調(diào)度單元1042,所述錯誤監(jiān)控模塊105包括錯誤檢測單元1051以及錯誤處理單元1052,所述報告整合模塊106包括數(shù)據(jù)收集單元1061、錯誤定位單元1062以及信息分發(fā)單元1063。
[0027]所述自動化測試系統(tǒng)100執(zhí)行的測試過程可分為自動化測試準備階段、自動化測試執(zhí)行階段和自動化測試結(jié)束階段。[0028]在自動化測試準備階段,初始化模塊101中的加載單元1011加載配置文件,讀取配置文件中的配置信息。讀取完畢,通知用例驅(qū)動單元1012。用例驅(qū)動單元1012接到通知,根據(jù)配置信息中的路徑讀取所有測試用例信息,并將信息傳給用例分析模塊102。用例分析模塊102中的讀取單元1021加載所有測試用例,并讀取指定單元列內(nèi)的數(shù)據(jù)。在本實施例中,這些數(shù)據(jù)包括兩類,一類是ERP表單的數(shù)據(jù),包含單據(jù)頭和單據(jù)體,另一類是表單動作,包含新增、保存、審核、退出、反寫和自定義。所述分析單元1022根據(jù)測試用例中的數(shù)據(jù)分析出測試涉及的表單和測試邏輯,并進行路徑組合,即獲得如上述的“新增銷售訂單?新增發(fā)貨檢驗申請單?審核發(fā)貨檢驗單?新增出庫單?新增發(fā)票”的信息。分析完畢,分析單元1022將測試涉及的表單信息傳給表單處理模塊103中的測試對象提取單元1031,以及將測試邏輯傳給測試調(diào)度模塊104中的邏輯處理單元1041。測試對象提取單元1031接收到測試涉及的表單信息后,根據(jù)預(yù)設(shè)的搜索字段,在測試涉及的表單中進行檢索,遍歷表單中所有測試項后,提取符合條件的測試項和動作,封裝成測試對象,進行編號后存放到測試對象池1032中。ERP表單(即測試涉及的表單)的單據(jù)頭和單據(jù)體數(shù)據(jù)加上對象編號后,會存放到表單數(shù)據(jù)存儲區(qū)1033。
[0029]在自動化測試執(zhí)行階段,測試用例中涉及的所有ERP表單數(shù)據(jù)經(jīng)表單處理模塊103處理完畢后,邏輯處理單元1041根據(jù)分析單元1022傳入的表單間的邏輯關(guān)系,將每個業(yè)務(wù)節(jié)點上涉及到的測試對象、數(shù)據(jù)和邏輯封裝成組件。組件在整個測試過程中可以重復調(diào)用,通過不同組件的跳轉(zhuǎn),形成ERP軟件的業(yè)務(wù)流程。組裝完畢后,通知調(diào)度單元1042。調(diào)度單元1042到測試對象池1032和表單數(shù)據(jù)區(qū)1033按先后順序提取所需測試對象和測試數(shù)據(jù),啟動組件的業(yè)務(wù)流程測試。在自動化測試進行過程中,錯誤監(jiān)控模塊105進行全程監(jiān)控。錯誤檢測單元1051收集程序和系統(tǒng)的錯誤信息,從而能夠檢測出測試過程中出現(xiàn)的異常信息。此外,錯誤檢測單元1051還用于確認是否能夠處理所述異常信息,如果能夠處理,則將收到的信息分類后,提交給錯誤處理單元1052進一步處理。如果處理不了,即將測試路徑恢復到上一測試節(jié)點,重新執(zhí)行該測試步驟。以此類推,如果恢復失敗,表示測試執(zhí)行遭到阻塞,則進行日志記錄,進行下一次測試迭代。所述錯誤處理單元1052則根據(jù)異常信息的類型,以預(yù)先設(shè)定的模式進行處理。
[0030]在自動化測試結(jié) 束階段,報告整合模塊106中的數(shù)據(jù)收集單元1061收集測試過程中的所有信息后,匯總各個信息的分類,例如,自動測試結(jié)果、測試過程數(shù)據(jù)度量、測試過程中的異常信息等等。錯誤定位單元1062根據(jù)測試執(zhí)行結(jié)果,判斷是否需要進行錯誤定位。具體的,如果發(fā)生異常或錯誤,則根據(jù)異常信息定位到發(fā)生錯誤的對應(yīng)測試節(jié)點上,并將異常信息整合在報告中。最后,生成測試分析報告,信息分發(fā)單元1063將測試分析報告發(fā)送給預(yù)先設(shè)定的項目相關(guān)人員。
[0031 ] 如圖3所示,其為本發(fā)明的ERP軟件自動化測試方法的流程示意圖,所述方法包括以下步驟:
步驟301,填寫自動化測試的測試用例模板和配置文件,并在確認本次ERP軟件自動化測試信息后,啟動測試流程。本實施例中,由測試人員手動填寫自動化測試的配置文件信息和建立測試用例模板。測試流程啟動后,讀取自動化測試配置文件,以獲取本次自動化測試的相關(guān)信息。具體的,所述配置文件包括預(yù)先定義的配置信息,其記錄著測試用例的路徑信息、系統(tǒng)當前的環(huán)境變量和用戶自定義的變量信息(請參考圖7),可通過讀取所述測試用例的路徑信息來獲得測試用例中記錄的相關(guān)聯(lián)信息。本實施例中,所述測試用例是指一個excel文件,其記錄測試活動的相關(guān)信息,例如,表單名稱、類型、具體測試操作以及表單間邏輯關(guān)系可在測試用例中體現(xiàn)(請參閱圖5、6)。此外,所述測試用例可直接存儲于ERP軟件中,或者存儲于外接的存儲設(shè)備中,當需要加載時,分別通過直接讀取和USB讀取方式進行獲取。
[0032]步驟302,自動加載測試用例,并根據(jù)測試用例中的數(shù)據(jù)獲取測試涉及的表單和表單間的測試邏輯。本實施例中,所述測試用例是指初始化后,根據(jù)所述配置文件中的路徑信息所獲取到的一個excel文件,其記錄測試活動的相關(guān)信息,例如,表單名稱、表單類型、具體測試操作以及表單間的邏輯關(guān)系可在測試用例中體現(xiàn)(請參閱圖5、6)。測試涉及的表單是指測試用例中記錄的在ERP軟件中預(yù)先存儲的一個或多個表單(下稱ERP表單)。表單間的邏輯關(guān)系是指測試涉及的各個表單之間的先后邏輯關(guān)系。具體的,在本實施例中,測試用例(即excel表格)中有專門的字段記錄所涉及的表單和表單間的邏輯關(guān)系,如圖5所示,“ERP表單” 一列記錄本次測試所涉及的表單,“路徑描述” 一列則記錄表單間的邏輯關(guān)系。通過讀取測試用例中指定的列,例如“ERP表單”和“路徑描述”兩列,可獲得測試涉及的表單和表單間的邏輯關(guān)系。而所述測試邏輯是結(jié)合測試用例中的具體測試操作以及表單間的邏輯關(guān)系所獲得的信息。具體的,請參閱圖5,讀取“操作”和“路徑描述”2列的信息,根據(jù)“操作” 一列中的編號確定先后順序,再對“路徑描述” 一列中的箭頭標志進行分割,進行組合,形成表單間的測試邏輯:新增銷售訂單?新增發(fā)貨檢驗申請單?審核發(fā)貨檢驗單?新增出庫單?新增發(fā)票。
[0033]步驟303,自動加載測試涉及的表單,對表單進行測試對象封裝和數(shù)據(jù)提取。其中,測試涉及的表單測試項都封裝為測試對象,且每個表單的數(shù)據(jù)單獨提取出來,所述測試項是指測試涉及的表單中需要測試的字段。更具體的,獲得測試涉及的表單信息后,根據(jù)預(yù)設(shè)的搜索字段,例如圖6中 的單據(jù)頭字段和單據(jù)體字段,在測試涉及的表單中進行檢索,遍歷表單中所有測試項后,提取測試涉及的ERP表單中符合條件的測試項和動作,封裝成測試對象,進行編號后進行存儲。如果兩個表單中測試項字段名稱重復,則在字段名前面加表單名以示區(qū)分。此外,ERP表單的單據(jù)頭和單據(jù)體數(shù)據(jù)加上對象編號后,也會另行存儲。
[0034]步驟304,根據(jù)所述測試邏輯,調(diào)度所需的測試對象和數(shù)據(jù)進行逐一節(jié)點測試。在本實施例中,首先根據(jù)各個ERP表單間的邏輯關(guān)系(例如圖5的“路徑描述”一列),將每個表單上涉及到的測試對象、數(shù)據(jù)和邏輯關(guān)系封裝成組件。完成組裝后,根據(jù)所述邏輯關(guān)系,確定每一個測試步驟加載的表單。例如,在圖5的“路徑描述”一列中,邏輯關(guān)系是:銷售訂單?發(fā)貨通知單?出庫單?發(fā)票,那么設(shè)定的路徑就是第一步加載銷售訂單,第二步加載發(fā)貨通知單,第三步加載出庫單,第四步加載發(fā)票單據(jù)。最后,按所述邏輯關(guān)系提取所需表單中的測試對象和測試數(shù)據(jù),啟動組件的業(yè)務(wù)流程測試。在本實施例中,首先設(shè)定第一步路徑為新增銷售訂單,接著找到封裝的銷售訂單對象,并根據(jù)表單邏輯新增動作,組合成新增銷售訂單組件。同時,設(shè)定下一步路徑為新增發(fā)貨檢驗申請單。設(shè)定完畢后,再尋找發(fā)貨檢驗申請單對象,根據(jù)表單邏輯新增動作,組合成新增發(fā)貨檢驗申請單組件。以此類推,遍歷完成5個業(yè)務(wù)節(jié)點的處理,通過不同組件的跳轉(zhuǎn),形成ERP軟件的業(yè)務(wù)流程,啟動組件的業(yè)務(wù)流程測試。其中,組件在整個測試過程中可以重復調(diào)用,通過不同組件的跳轉(zhuǎn),形成ERP軟件的執(zhí)行流程。[0035]步驟305,對自動化測試過程進行監(jiān)控,處理測試過程中發(fā)生的異常,產(chǎn)生日志文件。所述異常是指測試過程中任何能夠阻塞測試的事件。當異常發(fā)生時,首先是捕獲異常,再提交給模塊相應(yīng)單元作進一步的處理。如果處理不了,就將測試路徑恢復到上一測試節(jié)點,重新執(zhí)行該測試步驟。以此類推,如果恢復失敗,表示測試執(zhí)行遭到阻塞,則進行日志記錄,進行下一次測試迭代。
[0036]步驟306,收集自動化測試結(jié)果,對結(jié)果進行錯誤定位,并作初步分析后形成測試報告,通過郵件服務(wù)器發(fā)送給相關(guān)人員。具體的,步驟306具體包括:根據(jù)所述自動化測試結(jié)果,判斷是否發(fā)生異?;蝈e誤,如果判斷發(fā)生異?;蝈e誤,則根據(jù)異常信息定位到發(fā)生錯誤的對應(yīng)測試節(jié)點上,并將異常信息整合到測試報告中,如果判斷未發(fā)生異?;蝈e誤,則生成“正常”的測試報告。所述測試報告是在采集數(shù)據(jù)后,根據(jù)預(yù)定義的報告格式完成制作。報告的分發(fā)依靠公司的郵件接口和配置文件中的郵件接收人,進行自動發(fā)送。
[0037]更具體的,請參閱圖4,其為本發(fā)明提供的ERP軟件自動化測試方法用于處理ERP銷售子系統(tǒng)出庫模塊的流程圖。所述ERP軟件自動化測試方法包括以下步驟: 步驟401,根據(jù)銷售子系統(tǒng)需要測試的出庫模塊填寫測試用例模板文件。本次自動化測試需要填寫主用例工作表和銷售出庫工作表信息,所述銷售出庫工作表為輔助工作表。主用例工作表如圖5所示,包含編號、標識、模塊、功能點、ERP表單、操作和路徑描述。作為輔助工作表的銷售出庫工作表如圖6所示,包含銷售出庫單據(jù)的單據(jù)頭和單據(jù)體,記錄著本次自動化測試數(shù)據(jù)??梢岳斫?,如需要測試的模塊增加,則增加對應(yīng)的輔助工作表,以記錄增加的表單數(shù)據(jù)即可。
[0038]步驟402,更改自動化測試框架下的配置文件。配置文件如圖7所示,包含自動化測試用例路徑、當前系統(tǒng)環(huán)境變量、Email地址和其它變量信息。在本步驟中,主要是修改本次出庫模塊測試用例的路徑信息,確認系統(tǒng)當前的環(huán)境變量和測試人員自定義的郵件地
址等變量信息。
[0039]步驟403,啟動自動化測試腳本,開始出庫模塊的自動化測試。具體的,初始化腳本加載指定路徑下的配置文件,讀取配置文件下的“自動化測試用例路徑” 一列,獲取本次自動化測試所需要執(zhí)行的測試用例,同時檢查當前系統(tǒng)的環(huán)境變量是否正確。然后,根據(jù)初始化腳本傳過來的測試用例信息,打開指定路徑下的測試用例,讀取“ERP表單”、“操作”和“路徑描述” 3列中的信息。本實施例中,首先讀取“ERP表單” 一列中的信息,根據(jù)編號,獲取所涉及到的ERP表單。本實施例中,涉及到5種表單:銷售訂單、發(fā)貨檢驗申請單、發(fā)貨檢驗審核單、出庫單和發(fā)票。接著,讀取“操作”和“路徑描述”2列的信息,根據(jù)“操作”一列中的編號確定先后順序,再對路徑描述一列中的箭頭標志進行分割,進行組合,形成表單間的測試邏輯:新增銷售訂單?新增發(fā)貨檢驗申請單?審核發(fā)貨檢驗單?新增出庫單?新增發(fā)票。需要處理的表單信息傳給表單處理腳本,表單間的測試邏輯傳給測試調(diào)度腳本。表單處理腳本根據(jù)測試用例分析結(jié)果所得到需要進行處理的5種表單信息,到ERP軟件中提取符合條件的測試項,并通過腳本封裝成測試對象,測試對象包含著表單的測試項和對應(yīng)的動作。對象封裝成功后,自動生成對象編號,接著在ERP表單數(shù)據(jù)加上對象編號,指明對應(yīng)關(guān)系,并放到表單數(shù)據(jù)存儲區(qū)域。測試調(diào)度腳本根據(jù)傳入的表單之間的測試邏輯,首先設(shè)定第一步路徑為新增銷售訂單,接著找到封裝的銷售訂單對象,并根據(jù)表單邏輯新增動作,組合成新增銷售訂單組件。同時,設(shè)定下一步路徑為新增發(fā)貨檢驗申請單。設(shè)定完畢后,再去尋找發(fā)貨檢驗申請單對象,根據(jù)表單邏輯新增動作,組合成新增發(fā)貨檢驗申請單組件。以此類推,遍歷完成5個業(yè)務(wù)節(jié)點的處理,通過不同組件的跳轉(zhuǎn),形成ERP軟件的業(yè)務(wù)流程,啟動組件的業(yè)務(wù)流程測試。
[0040]步驟404,監(jiān)控自動化測試過程,并判斷是否發(fā)生異常,如果是,則進一步執(zhí)行步驟405:判斷是否能夠處理異常;如果判斷未發(fā)生異常,則執(zhí)行步驟406:顯示自動化測試正常結(jié)束。如果能夠處理異常,則執(zhí)行步驟407:捕獲異常,再提交給模塊相應(yīng)單元作進一步的處理;如果無法處理,則執(zhí)行步驟408:將測試路徑恢復到上一測試節(jié)點,重新執(zhí)行該測試步驟。具體的,請參閱圖9,在本實施例中,包含了銷售出庫業(yè)務(wù)組件測試中的五個流程節(jié)點:訂單節(jié)點、發(fā)貨檢驗申請節(jié)點、發(fā)貨檢驗節(jié)點、出庫節(jié)點、發(fā)票節(jié)點,在自動化測試過程中,每個組件節(jié)點都設(shè)置一個還原點。腳本實時監(jiān)控執(zhí)行狀態(tài),一旦發(fā)生錯誤即調(diào)用相關(guān)模塊。例如,在出庫節(jié)點測試時ERP軟件意外崩潰重啟,測試受到了阻塞。此時,自動化測試腳本檢測到出庫節(jié)點出錯,并捕獲到了該異常。自動化測試腳本根據(jù)異常類型,與預(yù)先設(shè)定的異常進行匹配。匹配成功并進行日志記錄后,啟動組件還原點,將測試路徑恢復到上一測試節(jié)點發(fā)貨檢驗節(jié)點,重新執(zhí)行該測試步驟,自動化測試流程得以持續(xù)進行。
[0041]步驟409,整合測試報告。本實施例中,無論是監(jiān)控發(fā)生異常還是測試正常結(jié)束,均進入此步驟。具體的,在本步驟中,報告整合腳本首先讀取如圖8所示的自動化測試報告模板。然后,獲取系統(tǒng)當前日期,填寫日期一欄。接著讀取圖5測試用例中的“功能點”和“標識”,分別填寫到“測試業(yè)務(wù)”和“用例號”兩列。最后將每個業(yè)務(wù)節(jié)點的測試結(jié)果填寫到“結(jié)果”一欄。測試報告模板填寫完畢,讀取圖7配置文件中的Email地址信息,通過公司郵件服務(wù)器發(fā)送給測試人員。測試人員收到報告后,作進一步的分析??梢岳斫?,本實施例中所述的填寫,可由系統(tǒng)自行獲取,也可由測試人員手動填寫。
[0042]總的來說,本發(fā)明的ERP軟件自動化測試系統(tǒng)及方法于初始化啟動后,以測試用例作為輸入點,接著將測試要素封裝成組件進行自動化測試,直到測試結(jié)束都不需要測試人員手工干預(yù),節(jié)省了人力和時間。此外,以用例驅(qū)動測試,再通過組件的封裝,根據(jù)ERP軟件不同的業(yè)務(wù)流程的重組,實現(xiàn)組件的重用,提高了測試覆蓋率,加快了測試進度,縮短了測試周期。同時,當錯誤發(fā)生時,通過組件的錯誤定位能快速定位到相關(guān)流程節(jié)點上,迅速解決問題,提升軟件質(zhì)量。
[0043]需要說明的是,通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的硬件平臺的方式來實現(xiàn),當然也可以全部通過硬件來實施?;谶@樣的理解,本發(fā)明的技術(shù)方案對【背景技術(shù)】做出貢獻的全部或者部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例或者實施例的某些部分所述的方法。
[0044]以上所揭露的僅為本發(fā)明實施例中的較佳實施例而已,當然不能以此來限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
【權(quán)利要求】
1.一種ERP軟件自動化測試系統(tǒng),用于對ERP軟件進行自動化測試,所述ERP軟件包括多個ERP表單,所述ERP軟件自動化測試系統(tǒng)包括: 初始化模塊,用于讀取配置文件信息,啟動測試流程; 用例分析模塊,用于根據(jù)所述配置文件信息加載測試用例,并根據(jù)測試用例中的數(shù)據(jù)分析測試所涉及的ERP表單及各表單間的測試邏輯; 表單處理模塊,用于加載所述用例分析模塊分析的測試所涉及的ERP表單,并獲取表單中的測試對象和數(shù)據(jù); 測試調(diào)度模塊,用于根據(jù)所述用例分析模塊分析后的表單間的測試邏輯,調(diào)度所需的測試對象和數(shù)據(jù)進行測試; 錯誤監(jiān)控模塊,用于監(jiān)控測試調(diào)度執(zhí)行過程中出現(xiàn)的異常情況并確認是否能夠進行處理,如果是,則進行對應(yīng)處理,如果無法處理,則恢復到上一測試節(jié)點重新測試;以及 報告整合模塊,用于根據(jù)所述測試調(diào)度模塊的測試結(jié)果,并結(jié)合錯誤監(jiān)控模塊監(jiān)控到的異常情況,自動生成測試報告后分發(fā)至相關(guān)接口。
2.如權(quán)利要求1所述的ERP軟件自動化測試系統(tǒng),其特征在于,所述初始化模塊包括加載單元和用例驅(qū)動單元,所述加載單元用于讀取指定路徑下的配置文件中的信息,所述用例驅(qū)動單元用于根據(jù)配置文件信息讀取所有測試用例信息。
3.如權(quán)利要求2所述的ERP軟件自動化測試系統(tǒng),其特征在于,所述用例分析模塊包括讀取單元和分析單元,所述讀取單元用于加載所述用例驅(qū)動單元讀取的測試用例信息,并讀取測試用例中指定位置的信息,所述分析單元用于根據(jù)所述指定位置的信息,分析測試涉及的表單以及表單間的測試邏輯。
4.如權(quán)利要求1所 述的ERP軟件自動化測試系統(tǒng),其特征在于,所述測試用例包括ERP表單、操作以及路徑描述的數(shù)據(jù),所述ERP表單表示測試所涉及的表單,所述操作數(shù)據(jù)表示測試具體操作,所述路徑描述記錄表單間的邏輯關(guān)系,所述用例分析模塊根據(jù)ERP表單列分析測試所涉及的表單,以及根據(jù)操作以及路徑描述兩列分析所述表單間的測試邏輯。
5.如權(quán)利要求1所述的ERP軟件自動化測試系統(tǒng),其特征在于,所述表單處理模塊包括測試對象提取單元、測試對象池和表單數(shù)據(jù)存儲區(qū),所述測試對象提取單元用于獲取所述用例分析模塊分析的測試涉及的表單信息,并根據(jù)預(yù)設(shè)的關(guān)鍵字段,在測試涉及的表單中檢索所有符合條件的測試對象,所述測試對象池用于存儲所述所有符合條件的測試對象,所述表單數(shù)據(jù)存儲區(qū)用于存儲每個測試對象的數(shù)據(jù)。
6.如權(quán)利要求5所述的ERP軟件自動化測試系統(tǒng),其特征在于,所述測試調(diào)度模塊包括邏輯處理單元和調(diào)度單元,所述邏輯處理單元用于將測試對象、測試對象的數(shù)據(jù)和所述表單間的測試邏輯封裝成組件,且設(shè)定測試執(zhí)行路徑;所述調(diào)度單元用于在路徑設(shè)定完畢后,從測試對象池和表單數(shù)據(jù)區(qū)提取所需測試對象和測試數(shù)據(jù),并啟動組件測試。
7.如權(quán)利要求6所述的ERP軟件自動化測試系統(tǒng),其特征在于,所述報告整合模塊包括數(shù)據(jù)收集單元、錯誤定位單元和信息分發(fā)單元,所述數(shù)據(jù)收集單元用于收集測試執(zhí)行結(jié)果,所述錯誤定位單元用于根據(jù)測試執(zhí)行結(jié)果,判斷是否需要進行錯誤定位,如需要進行錯誤定位,則定位到對應(yīng)的錯誤節(jié)點,并將錯誤節(jié)點中異常信息整合在報告中,所述信息分發(fā)單元用于與郵件服務(wù)器產(chǎn)生交互,并將測試報告分發(fā)給項目相關(guān)人員。
8.如權(quán)利要求1所述的ERP軟件自動化測試系統(tǒng),其特征在于,所述錯誤監(jiān)控模塊包括錯誤檢測單元和錯誤處理單元,所述錯誤檢測單元用于檢測測試過程中的異常信息,并確認是否能夠進行處理所述異常信息,如果能夠處理,則將異常信息提交給所述錯誤處理單元;如果無法處理,則恢復到上一測試節(jié)點重新測試,所述錯誤處理單元則用于根據(jù)異常信息類型,對異常信息作相應(yīng)的處理。
9.一種ERP軟件自動化測試方法,其包括: 讀取配置文件信息,啟動測試流程; 根據(jù)所述配置文件信息加載測試用例,并根據(jù)測試用例中的數(shù)據(jù)分析測試所涉及的ERP表單及各表單間的測試邏輯; 加載分析后的測試所涉及的ERP表單,并獲取表單中的測試對象和數(shù)據(jù); 根據(jù)分析后的表單間的測試邏輯,調(diào)度所需的測試對象和數(shù)據(jù)進行測試; 監(jiān)控測試過程中出現(xiàn)的異常情況并確認是否能夠進行處理,如果是,則進行對應(yīng)處理,如果無法處理,則恢復到上一測試節(jié)點重新測試;以及 根據(jù)測試結(jié)果,并結(jié)合監(jiān)控到的異常情況,自動生成測試報告后分發(fā)至相關(guān)接口。
10.如權(quán)利要求9所述的ERP軟件自動化測試方法,其特征在于,所述根據(jù)測試結(jié)果,并結(jié)合監(jiān)控到的異常情況,自動生成測試報告后分發(fā)至相關(guān)接口的步驟進一步包括: 判斷是否需要進行錯誤定位,如需要進行錯誤定位,則定位到對應(yīng)的錯誤節(jié)點,并將錯誤節(jié)點的異常信息整合在報告中。
【文檔編號】G06F11/36GK103631713SQ201310537410
【公開日】2014年3月12日 申請日期:2013年11月4日 優(yōu)先權(quán)日:2013年11月4日
【發(fā)明者】曾宇濤, 宋丹 申請人:中安消技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
获嘉县| 壶关县| 邛崃市| 海林市| 巨野县| 攀枝花市| 贞丰县| 沅陵县| 隆化县| 山东省| 襄汾县| 瑞安市| 镶黄旗| 梁河县| 尚志市| 井冈山市| 肃宁县| 海门市| 电白县| 德清县| 桑日县| 长寿区| 个旧市| 美姑县| 眉山市| 封丘县| 嵊泗县| 云林县| 江安县| 手游| 自贡市| 沙雅县| 抚远县| 天门市| 巴林右旗| 镇远县| 湖南省| 中超| 合阳县| 汝城县| 嘉善县|