自動(dòng)化測(cè)試范文
時(shí)間:2023-04-04 15:45:23
導(dǎo)語:如何才能寫好一篇自動(dòng)化測(cè)試,這就需要搜集整理更多的資料和文獻(xiàn),歡迎閱讀由公務(wù)員之家整理的十篇范文,供你借鑒。
篇1
【關(guān)鍵詞】控件ID 映射關(guān)系 自動(dòng)化測(cè)試
在自動(dòng)化測(cè)試領(lǐng)域中,傳統(tǒng)的自動(dòng)化測(cè)試腳本的開發(fā)一般有兩種方法。第一種方法是通過手工運(yùn)行一次測(cè)試,同時(shí)使用自動(dòng)化測(cè)試工具的錄制功能,把所進(jìn)行的操作記錄下來,生成測(cè)試腳本。這種技術(shù)生成的腳本回放成功率比較低,后期維護(hù)也比較困難。第二種方法是編寫測(cè)試框架,對(duì)測(cè)試需要的基礎(chǔ)操作提供接口供調(diào)用,測(cè)試人員根據(jù)用例操作需求,手工編寫調(diào)用接口的自動(dòng)化測(cè)試腳本,這種方法對(duì)測(cè)試人員的代碼水平要求很高。
目前自動(dòng)化測(cè)試中,測(cè)試小組成員編寫完用例以后,還需要腳本開發(fā)人員單獨(dú)編寫一條針對(duì)此用例的自動(dòng)化測(cè)試腳本,然后使用自動(dòng)化測(cè)試工具運(yùn)行腳本進(jìn)行測(cè)試。當(dāng)測(cè)試用例變更后,還需要重新編寫這條測(cè)試腳本,資源耗費(fèi)比較大。測(cè)試用例和測(cè)試腳本之間的維護(hù)比較復(fù)雜。
1 實(shí)施過程
1.1 項(xiàng)目介紹
針對(duì)現(xiàn)有技術(shù)中的缺陷,本想法要解決的技術(shù)問題是:如何將測(cè)試用例自動(dòng)地轉(zhuǎn)化為自動(dòng)化測(cè)試腳本,以減少自動(dòng)化測(cè)試腳本的代碼量、資源消耗及測(cè)試用例和測(cè)試腳本之間的維護(hù)。
為解決上述技術(shù)問題,我和小組人員不斷的摸索以及通過實(shí)際工作中多次測(cè)試和聯(lián)調(diào),探索出一種只要被測(cè)產(chǎn)品中沒有產(chǎn)生新的控件類型,就不需要修改自動(dòng)化測(cè)試腳本的解決辦法。通過在實(shí)際項(xiàng)目中多次試驗(yàn),本控件類型在測(cè)試用例中可以任意制定被測(cè)產(chǎn)品的流程,不會(huì)局限某個(gè)系統(tǒng)、某個(gè)產(chǎn)品。
根據(jù)多次實(shí)驗(yàn)結(jié)果得出一種自動(dòng)化測(cè)試方法,包括如下步驟:
步驟1:定義控件屬性與預(yù)置測(cè)試腳本代碼之間的對(duì)應(yīng)關(guān)系。本環(huán)節(jié)是通過設(shè)置的相應(yīng)的對(duì)應(yīng)關(guān)系,在前期就降低控件的可變化性。
步驟2:讀入測(cè)試用例的測(cè)試數(shù)據(jù),其中,所述測(cè)試數(shù)據(jù)包括控件屬性。
該數(shù)據(jù)從項(xiàng)目實(shí)際運(yùn)營過程中獲取,保證能夠在測(cè)試過程中發(fā)現(xiàn)更多的問題,確保一旦正式后在實(shí)際運(yùn)行過程中避免出現(xiàn)類似錯(cuò)誤。
步驟3:針對(duì)讀入的控制屬性,查找到對(duì)應(yīng)的預(yù)置測(cè)試腳本代碼;大多數(shù)自動(dòng)化測(cè)試并沒有這一步驟,通過讀入控件屬性,可以降低代碼的重復(fù)性,是本設(shè)計(jì)特有的環(huán)節(jié)。
步驟4:根據(jù)預(yù)置測(cè)試腳本代碼形成自動(dòng)化測(cè)試腳本代碼;
步驟5:將預(yù)置測(cè)試腳本代碼添加到編寫的自動(dòng)化測(cè)試代碼框架中,形成自動(dòng)化測(cè)試腳本代碼,執(zhí)行自動(dòng)化測(cè)試腳本代碼,其中,自動(dòng)化測(cè)試腳本代碼用于模擬手動(dòng)執(zhí)行測(cè)試用例中各個(gè)控件類型的動(dòng)作。
以上二分部主要由軟件自動(dòng)完成,無需手動(dòng)進(jìn)行,這也就是自動(dòng)化測(cè)試的魅力所在,可以在很大程度上降低人力手動(dòng)操作的時(shí)間,騰出更多時(shí)間去完成其他事情,增加工作效率。
2 附圖說明
2.1 測(cè)試流程
為了將思想的其它特征、目的和優(yōu)點(diǎn)更明顯展示出來:通過閱讀參照?qǐng)D1附圖將會(huì)更直觀。
2.2 解決辦法
下面結(jié)合具體實(shí)施例對(duì)本方案進(jìn)行詳細(xì)說明。以下實(shí)施案例將有助于本領(lǐng)域的技術(shù)人員進(jìn)一步理解本人的思想,但不以任何形式限制本思想。應(yīng)當(dāng)指出的是,對(duì)本領(lǐng)域的普通技術(shù)人員來說,在不脫離本方案構(gòu)思的前提下,還可以做出若干變形和改進(jìn)。
每個(gè)項(xiàng)目都需要人員的配合。需要需求人員、產(chǎn)品開發(fā)人員和自動(dòng)化測(cè)試腳本代碼開發(fā)人員共同配合,產(chǎn)生控件ID與被測(cè)系統(tǒng)映射表、控件類型與代碼映射表,例如表1和表2所示,其中,控件ID與被測(cè)系統(tǒng)映射表記錄了控件名稱、測(cè)試用例中控件ID、被測(cè)系統(tǒng)中的控件ID之間的映射關(guān)系,控件類型與代碼映射表記錄了控件類型、測(cè)試用例中控件類型、被測(cè)產(chǎn)品中控件類型、測(cè)試腳本中控件類型的映射關(guān)系。
本方案的方法和系統(tǒng)可以連接測(cè)試用例管理工具,讀取測(cè)試用例,通過解析模塊解析測(cè)試用例信息,生成腳本可讀的信息,然后根據(jù)測(cè)試用例中的控件ID在控件ID與被測(cè)系統(tǒng)映射表中查找對(duì)應(yīng)被測(cè)模塊,最后確定被測(cè)模塊;我的主要想法還是根據(jù)測(cè)試用例中的控件類型在控件類型與代碼映射表中查找對(duì)應(yīng)的測(cè)試腳本代碼,執(zhí)行自動(dòng)化測(cè)試腳本來最終產(chǎn)生測(cè)試結(jié)果。具體步驟如圖1所示,包括:
步驟1:我們要先讀取用戶編寫的測(cè)試用例,例如可以連接測(cè)試用例管理工具,從存儲(chǔ)有用戶編寫測(cè)試用例的測(cè)試用例管理工具中讀取,測(cè)試用例中的控件類型和操作命令、自動(dòng)化測(cè)試腳本中的控件類型和操作命令、被測(cè)試系統(tǒng)中控件類型和操作命令三者一致,測(cè)試用例中的控件ID與被測(cè)系統(tǒng)的控件ID一致。
步驟2:解析測(cè)試用例信息,生成腳本可讀的信息。
步驟3:根據(jù)測(cè)試用例中的控件ID在控件ID與被測(cè)系統(tǒng)映射表中查找對(duì)應(yīng)被測(cè)模塊。具體地,根據(jù)測(cè)試用例中的控件ID,在控件ID與被測(cè)系統(tǒng)映射表中,首先查找到對(duì)應(yīng)的被測(cè)系統(tǒng)中的控件ID,然后根據(jù)該被測(cè)系統(tǒng)中的控件ID再查找到對(duì)應(yīng)的被測(cè)模塊,其中,所述被測(cè)模塊是被測(cè)系統(tǒng)的某個(gè)測(cè)試單元,例如,一個(gè)文本框、一個(gè)多選框、一個(gè)單選框等。
本組成員在項(xiàng)目中反復(fù)實(shí)踐發(fā)現(xiàn)了一致性的關(guān)鍵點(diǎn)。目前很多自動(dòng)化測(cè)試都是由于忽略了一致性才導(dǎo)致腳本可用性降低從而人為的增加了測(cè)試的工作量,說是實(shí)現(xiàn)了自動(dòng)化測(cè)試,反而卻是增加成本。
步驟4:根據(jù)測(cè)試用例中的控件類型在控件類型與代碼映射表中查找對(duì)應(yīng)的自動(dòng)化測(cè)試腳本代碼。具體為,根據(jù)測(cè)試用例中的控件類型,在控件類型與代碼映射表中,首先查找到對(duì)應(yīng)的測(cè)試腳本中控件類型,然后根據(jù)該測(cè)試腳本中控件類型再查找到對(duì)應(yīng)的自動(dòng)化測(cè)試腳本代碼。
步驟5:執(zhí)行步驟4的控件類型對(duì)應(yīng)的自動(dòng)化測(cè)試腳本代碼,該自動(dòng)化測(cè)試腳本代碼用于模擬手動(dòng)執(zhí)行通過步驟3查找到的被測(cè)模塊的控件類型的動(dòng)作。
步驟6:輸出自動(dòng)化測(cè)試腳本代碼產(chǎn)生的實(shí)際結(jié)果。
步驟7:比較自動(dòng)化測(cè)試腳本代碼產(chǎn)生的實(shí)際結(jié)果與測(cè)試用例中的預(yù)期結(jié)果是否一致,如果一致說明測(cè)試通過;如果不一致說明測(cè)試不通,并且指出不通過的原因
使用本方案的方法,即使當(dāng)測(cè)試用例變更后,測(cè)試人員只需按照關(guān)鍵字規(guī)范,手工修改一次測(cè)試用例即可。
下面對(duì)本方案的一個(gè)優(yōu)選具體實(shí)施方式進(jìn)行描述,在本具體實(shí)施方式中,包括以下步驟:
Step1:需求人員、產(chǎn)品開發(fā)人員和自動(dòng)化測(cè)試腳本代碼開發(fā)人員共同定義好被測(cè)產(chǎn)品中控件類型與控件的ID,產(chǎn)生相應(yīng)的映射表,標(biāo)準(zhǔn)控件的使用標(biāo)準(zhǔn)定義。
共同定義是非常重要的,針對(duì)不同項(xiàng)目,前期應(yīng)把控件類型和id定義成標(biāo)準(zhǔn),并在開發(fā)過程中使用統(tǒng)一標(biāo)準(zhǔn)。
Step2:產(chǎn)品開發(fā)人員和自動(dòng)化測(cè)試腳本代碼開發(fā)人員根據(jù)映射表為被測(cè)產(chǎn)品的每個(gè)控件設(shè)置控件類型、控件ID。
Step3:定義測(cè)試用例內(nèi)容以及格式;測(cè)試用例內(nèi)容包含:控件類型、控件ID等;測(cè)試用例的格式如:(系統(tǒng)模塊名稱,控件類型,控件ID,輸入內(nèi)容,操作命令,預(yù)期輸出,時(shí)間輸出,測(cè)試結(jié)果)。
Step4:執(zhí)行自動(dòng)化測(cè)試腳本代碼,包括如下子步驟:
Step4.1:讀取用戶編寫的測(cè)試用例,所述測(cè)試用例中的控件類型和操作命令、自動(dòng)化測(cè)試腳本中控件類型和操作命令、被測(cè)試系統(tǒng)中控件類型和操作命令三者一致,測(cè)試用例中的控件ID與被測(cè)系統(tǒng)的控件ID一致。例如,可以首先連接存儲(chǔ)有用戶編寫的測(cè)試用例的測(cè)試用例管理工具,然后從測(cè)試用例管理工具中讀取測(cè)試用例。
其中,Step4是自動(dòng)化測(cè)試一個(gè)控件過程,在自動(dòng)化測(cè)試腳本代碼中,分別實(shí)現(xiàn)模擬手動(dòng)執(zhí)行每個(gè)控件類型的動(dòng)作,并且使每一個(gè)控件類型的動(dòng)作成為一個(gè)獨(dú)立的模塊,根據(jù)控件類型可以查找到對(duì)應(yīng)的測(cè)試腳本代碼。腳本代碼可以重復(fù)利用,只要被測(cè)產(chǎn)品中沒有產(chǎn)生新的控件類型,就不需要修改自動(dòng)化測(cè)試腳本。測(cè)試用例中可以任意制定被測(cè)產(chǎn)品的流程,不會(huì)局限某個(gè)系統(tǒng)、某個(gè)產(chǎn)品。
其實(shí)優(yōu)選具體實(shí)施方式和之前介紹的沒什么區(qū)別,這里要說的是不管哪種方案要強(qiáng)調(diào)的是測(cè)試用例中的控件類型和操作命令、自動(dòng)化測(cè)試腳本中的控件類型和操作命令、被測(cè)試系統(tǒng)中控件類型和操作命令三者一致,這個(gè)是本文的重點(diǎn),也是提出本方法的關(guān)鍵。
3 結(jié)論
篇2
關(guān)鍵詞 軟件測(cè)試 軟件自動(dòng)化測(cè)試 測(cè)試用例
1軟件測(cè)試的相關(guān)概念
軟件測(cè)試是指在規(guī)定的條件下對(duì)程序進(jìn)行操作,以發(fā)現(xiàn)程序錯(cuò)誤,衡量軟件質(zhì)量,并對(duì)其是否能滿足設(shè)計(jì)要求進(jìn)行評(píng)估的過程。
軟件自動(dòng)化測(cè)試是把以人為驅(qū)動(dòng)的測(cè)試行為轉(zhuǎn)化為機(jī)器執(zhí)行的一種過程。通常,在設(shè)計(jì)了測(cè)試用例并通過評(píng)審之后,由測(cè)試人員根據(jù)測(cè)試用例中描述的規(guī)程一步步執(zhí)行測(cè)試,得到實(shí)際結(jié)果與期望結(jié)果的比較。在此過程中,為了節(jié)省人力、時(shí)間或硬件資源,提高測(cè)試效率,便引入了自動(dòng)化測(cè)試的概念。
2軟件測(cè)試的步驟及前提條件
2.1軟件測(cè)試的步驟
軟件測(cè)試分為五步,依次為單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試、系統(tǒng)測(cè)試和驗(yàn)收測(cè)試。
2.2自動(dòng)化測(cè)試的前提條件
實(shí)施自動(dòng)化測(cè)試之前需要對(duì)軟件開發(fā)過程進(jìn)行分析,以觀察其是否適合使用自動(dòng)化測(cè)試。通常需要同時(shí)滿足以下條件:
(1)需求變動(dòng)不頻繁。測(cè)試腳本的穩(wěn)定性決定了自動(dòng)化測(cè)試的維護(hù)成本。
(2)項(xiàng)目周期足夠長。自動(dòng)化測(cè)試需求的確定、自動(dòng)化測(cè)試框架的設(shè)計(jì)、測(cè)試腳本的編寫與調(diào)試均需要相當(dāng)長的時(shí)間來完成,這樣的過程本身就是一個(gè)測(cè)試軟件的開發(fā)過程,需要較長的時(shí)間來完成。
(3)自動(dòng)化測(cè)試腳本可重復(fù)使用。如果費(fèi)盡心思開發(fā)了一套近乎完美的自動(dòng)化測(cè)試腳本,但是腳本的重復(fù)使用率很低,致使其間所耗費(fèi)的成本大于所創(chuàng)造的經(jīng)濟(jì)價(jià)值,自動(dòng)化測(cè)試便成為了測(cè)試人員的練手之作,而并非是真正可產(chǎn)生效益的測(cè)試手段了。
另外,在手工測(cè)試無法完成,需要投入大量時(shí)間與人力時(shí)也需要考慮引入自動(dòng)化測(cè)試。比如性能測(cè)試、配置測(cè)試、大數(shù)據(jù)量輸入測(cè)試等。
3自動(dòng)化測(cè)試的工具
3.1 QTP
QTP是quicktest Professional的簡稱,是一種自動(dòng)測(cè)試工具。使用QTP的目的是想用它來執(zhí)行重復(fù)的手動(dòng)測(cè)試,主要是用于回歸測(cè)試和測(cè)試同一軟件的新版本。因此在測(cè)試前要考慮好如何對(duì)應(yīng)用程序進(jìn)行測(cè)試,例如要測(cè)試那些功能、操作步驟、輸入數(shù)據(jù)和期望的輸出數(shù)據(jù)等。
QuickTest針對(duì)的是GUI應(yīng)用程序,包括傳統(tǒng)的Windows應(yīng)用程序,以越來越流行的Web應(yīng)用。它可以覆蓋絕大多數(shù)的軟件開發(fā)技術(shù),簡單高效,并具備測(cè)試用例可重用的特點(diǎn)。其中包括:創(chuàng)建測(cè)試、插入檢查點(diǎn)、檢驗(yàn)數(shù)據(jù)、增強(qiáng)測(cè)試、運(yùn)行測(cè)試、分析結(jié)果和維護(hù)測(cè)試等方面。
3.2 WinRunner
Mercury Interactive公司的WinRunner是一種企業(yè)級(jí)的功能測(cè)試工具,用于檢測(cè)應(yīng)用程序是否能夠達(dá)到預(yù)期的功能及正常運(yùn)行。通過自動(dòng)錄制、檢測(cè)和回放用戶的應(yīng)用操作,WinRunner能夠有效地幫助測(cè)試人員對(duì)復(fù)雜的企業(yè)級(jí)應(yīng)用的不同版進(jìn)行測(cè)試,提高測(cè)試人員的工作效率和質(zhì)量,確??缙脚_(tái)的、復(fù)雜的企業(yè)級(jí)應(yīng)用無故障及長期穩(wěn)定運(yùn)行。
企業(yè)級(jí)應(yīng)用可能包括Web應(yīng)用系統(tǒng),ERP系統(tǒng),CRM系統(tǒng)等等。這些系統(tǒng)在之前,升級(jí)之后都要經(jīng)過測(cè)試,確保所有功能都能正常運(yùn)行,沒有任何錯(cuò)誤。如何有效地測(cè)試不斷升級(jí)更新且不同環(huán)境的應(yīng)用系統(tǒng),是每個(gè)公司都會(huì)面臨的問題。
3.3 Rational Robot
是業(yè)界最頂尖的功能測(cè)試工具,它甚至可以在測(cè)試人員學(xué)習(xí)高級(jí)腳本技術(shù)之前幫助其進(jìn)行成功的測(cè)試。它集成在測(cè)試人員的桌面IBM Rational Test Manager上,在這里測(cè)試人員可以計(jì)劃、組織、執(zhí)行、管理和報(bào)告所有測(cè)試活動(dòng),包括手動(dòng)測(cè)試報(bào)告。這種測(cè)試和管理的雙重功能是自動(dòng)化測(cè)試的理想開始。
3.4 AdventNet QEngine
AdventNet QEngine是一個(gè)應(yīng)用廣泛且獨(dú)立于平臺(tái)的自動(dòng)化軟件測(cè)試工具,可用于Web功能測(cè)試、web性能測(cè)試、Java應(yīng)用功能測(cè)試、Java API測(cè)試、SOAP測(cè)試、回歸測(cè)試和Java應(yīng)用性能測(cè)試。支持對(duì)于使用HTML、JSP、ASP、.NET、PHP、JavaScript/VBScript、XML、SOAP、WSDL、e-commerce、傳統(tǒng)客戶端/服務(wù)器等開發(fā)的應(yīng)用程序進(jìn)行測(cè)試。此工具以Java開發(fā),因此便于移植和提供多平臺(tái)支持。
3.5 SilkTest
是業(yè)界領(lǐng)先的、用于對(duì)企業(yè)級(jí)應(yīng)用進(jìn)行功能測(cè)試的產(chǎn)品,可用于測(cè)試Web、Java或是傳統(tǒng)的C/S結(jié)構(gòu)。SilkTest提供了許多功能,使用戶能夠高效率地進(jìn)行軟件自動(dòng)化測(cè)試。這些功能包括:測(cè)試的計(jì)劃和管理;直接的數(shù)據(jù)庫訪問及校驗(yàn);靈活、強(qiáng)大的4Test腳本語言,內(nèi)置的恢復(fù)系統(tǒng)(Recovery System);以及具有使用同一套腳本進(jìn)行跨平臺(tái)、跨瀏覽器和技術(shù)進(jìn)行測(cè)試的能力。
3.6 QA Run
QARun的測(cè)試實(shí)現(xiàn)方式是通過鼠標(biāo)移動(dòng)、鍵盤點(diǎn)擊操作被測(cè)應(yīng)用,即而得到相應(yīng)的測(cè)試腳本,對(duì)該腳本可以進(jìn)行編輯和調(diào)試。在記錄的過程中可針對(duì)被測(cè)應(yīng)用中所包含的功能點(diǎn)進(jìn)行基線值的建立,換句話說就是在插入檢查點(diǎn)的同時(shí)建立期望值。在這里檢查點(diǎn)是目標(biāo)系統(tǒng)的一個(gè)特殊方面在一特定點(diǎn)的期望狀態(tài)。通常,檢查點(diǎn)在QARun提示目標(biāo)系統(tǒng)執(zhí)行一系列事件之后被執(zhí)行。檢查點(diǎn)用于確定實(shí)際結(jié)果與期望結(jié)果是否相同
3.7 Test Partner
是一自動(dòng)化的功能測(cè)試工具,它專為測(cè)試基于微軟、Java和Web技術(shù)的復(fù)雜應(yīng)用而設(shè)計(jì)。它使測(cè)試人員和開發(fā)人員都可以使用可視的腳本編制和自動(dòng)向?qū)砩煽芍貜?fù)的測(cè)試,用戶可以調(diào)用VBA的所有功能,并進(jìn)行任何水平層次和細(xì)節(jié)的測(cè)試。TestPartner的腳本開發(fā)采用通用的、分層的方式來進(jìn)行。沒有編程知識(shí)的測(cè)試人員也可以通過TestPartner的可視化導(dǎo)航器來快速創(chuàng)建測(cè)試并執(zhí)行。通過可視的導(dǎo)航器錄制并回放測(cè)試,每一個(gè)測(cè)試都將被展示為樹狀結(jié)構(gòu),以清楚地顯現(xiàn)測(cè)試通過應(yīng)用的路徑。
3.8 Telelogic TAU
TAU第二代包含三個(gè)最新的、最強(qiáng)大的技術(shù)用來加速大規(guī)模軟件開發(fā)和測(cè)試:統(tǒng)一建模語言(UML)及它的許多最新修訂版本中的特性,UML2.0;功能強(qiáng)大的測(cè)試語言TTCN-3和新的構(gòu)造系統(tǒng)的方法:Model Driven Architecture(模型驅(qū)動(dòng)構(gòu)架)。
4自動(dòng)化測(cè)試的過程
4.1自動(dòng)化測(cè)試需求分析
當(dāng)測(cè)試項(xiàng)目滿足了自動(dòng)化的前提條件,并確定在該項(xiàng)目中需要使用自動(dòng)化測(cè)試時(shí),我們便開始進(jìn)行自動(dòng)化測(cè)試需求分析。此過程需要確定自動(dòng)化測(cè)試的范圍以及相應(yīng)的測(cè)試用例、測(cè)試數(shù)據(jù),并形成詳細(xì)的文檔,以便于自動(dòng)化測(cè)試框架的建立。
4.2自動(dòng)化測(cè)試框架的搭建
所謂自動(dòng)化測(cè)試框架便是像軟件架構(gòu)一般,定義了在使用該套腳本時(shí)需要調(diào)用哪些文件、結(jié)構(gòu),調(diào)用的過程,以及文件結(jié)構(gòu)如何劃分。
而根據(jù)自動(dòng)化測(cè)試用例,我們很容易能夠定位出自動(dòng)化測(cè)試框架的典型要素:
4.2.1公用的對(duì)象
不同的測(cè)試用例會(huì)有一些相同的對(duì)象被重復(fù)使用,比如窗口、按鈕、頁面等。這些公用的對(duì)象可被抽取出來,在編寫腳本時(shí)隨時(shí)調(diào)用。當(dāng)這些對(duì)象的屬性因?yàn)樾枨蟮淖兏淖儠r(shí),只需要修改該對(duì)象屬性即可,而無需修改所有相關(guān)的測(cè)試腳本。
4.2.2公用的環(huán)境
各測(cè)試用例也會(huì)用到相同的測(cè)試環(huán)境,將該測(cè)試環(huán)境獨(dú)立封裝,在各個(gè)測(cè)試用例中靈活調(diào)用,也能增強(qiáng)腳本的可維護(hù)性。
4.2.3公用的方法
當(dāng)測(cè)試工具沒有需要的方法時(shí),而該方法又會(huì)被經(jīng)常使用,我們便需要自己編寫該方法,以方便腳本的調(diào)用。
4.2.4測(cè)試數(shù)據(jù)
一個(gè)測(cè)試用例需要執(zhí)行很多個(gè)測(cè)試數(shù)據(jù),我們便可將測(cè)試數(shù)據(jù)放在一個(gè)獨(dú)立的文件中,由測(cè)試腳本執(zhí)行到該用例時(shí)讀取數(shù)據(jù)文件,從而達(dá)到數(shù)據(jù)覆蓋的目的。
5軟件自動(dòng)化測(cè)試的優(yōu)缺點(diǎn)
5.1軟件自動(dòng)化測(cè)試的優(yōu)點(diǎn)
測(cè)試活動(dòng)自動(dòng)化在許多情況下可提供其最大價(jià)值,如對(duì)軟件進(jìn)行的功能性測(cè)試,是測(cè)試系統(tǒng)在做什么,這些測(cè)試可以明確知道應(yīng)該在什么情況下輸入什么,會(huì)有什么樣的輸出。通過自動(dòng)化測(cè)試,可以使某些測(cè)試任務(wù)提高執(zhí)行效率,除此之外,還有以下優(yōu)點(diǎn):
(1)對(duì)程序的回歸測(cè)試更方便。軟件測(cè)試實(shí)行自動(dòng)化進(jìn)程是因?yàn)闇y(cè)試工作的需要,更準(zhǔn)確地說是回歸測(cè)試和系統(tǒng)測(cè)試的需要。由于回歸測(cè)試的動(dòng)作和用例是完全設(shè)計(jì)好的,測(cè)試期望的結(jié)果也是完全可以預(yù)料的,將回歸測(cè)試自動(dòng)運(yùn)行,可以極大提高測(cè)試效率,縮短回歸測(cè)試時(shí)間。
(2)可以執(zhí)行一些手工測(cè)試?yán)щy或不可能進(jìn)行的測(cè)試。比如,對(duì)于大量用戶的測(cè)試,不可能同時(shí)讓足夠多的測(cè)試人員同時(shí)進(jìn)行測(cè)試,但是卻可以通過自動(dòng)化測(cè)試模擬同時(shí)有許多用戶,從而達(dá)到測(cè)試的目的。
(3)更好地利用資源。將繁瑣的任務(wù)自動(dòng)化,可以提高準(zhǔn)確性和測(cè)試人員的積極性,將測(cè)試技術(shù)人員解脫出來投入更多精力設(shè)計(jì)更好的測(cè)試用例。有些測(cè)試不適合于自動(dòng)測(cè)試,僅適合于手工測(cè)試,將可自動(dòng)測(cè)試的測(cè)試自動(dòng)化后,可以讓測(cè)試人員專注于手工測(cè)試部分,提高手工測(cè)試的效率。
(4)測(cè)試具有一致性和可重復(fù)性。由于測(cè)試是自動(dòng)執(zhí)行的,每次測(cè)試的結(jié)果和執(zhí)行的內(nèi)容的一致性是可以得到保障的,從而達(dá)到測(cè)試的可重復(fù)的效果。
(5)測(cè)試的復(fù)用性。由于自動(dòng)測(cè)試通常采用腳本技術(shù),這樣就有可能只需要做少量的甚至不做修改,實(shí)現(xiàn)在不同的測(cè)試過程中使用相同的用例。
(6)此外,手工不能做的事情,自動(dòng)化測(cè)試能做,如負(fù)載、性能測(cè)試等。
5.2軟件自動(dòng)化測(cè)試的缺點(diǎn)
在軟件測(cè)試自動(dòng)化的實(shí)施過程中會(huì)遇到許多誤區(qū),比較普遍的有如下幾種:
(1)不正確的觀念或不現(xiàn)實(shí)的期望。一般來說,人們對(duì)新技術(shù)的解決方案常常深信不疑,認(rèn)為可以解決面臨的所有問題,對(duì)測(cè)試工具也不例外。事實(shí)上,如果期望不現(xiàn)實(shí),無論工具如何,都滿足不了期望。
(2)希望測(cè)試發(fā)現(xiàn)大量新缺陷。測(cè)試運(yùn)行第一次時(shí)最有可能發(fā)現(xiàn)新缺陷。如果測(cè)試已經(jīng)運(yùn)行,再次運(yùn)行相同的測(cè)試發(fā)現(xiàn)新缺陷的概率就小得多。
(3)安全性錯(cuò)覺。如果自動(dòng)化測(cè)試沒有發(fā)現(xiàn)任何缺陷,并不意味著軟件沒有缺陷,可能測(cè)試設(shè)計(jì)本身就有缺陷。并且,測(cè)試覆蓋率也不會(huì)達(dá)到百分之百。
(4)自動(dòng)化測(cè)試的維護(hù)性。當(dāng)軟件修改后,通常也需要修改部分測(cè)試,這樣必然導(dǎo)致對(duì)自動(dòng)化測(cè)試的修改,所以在自動(dòng)化測(cè)試的設(shè)計(jì)和實(shí)現(xiàn)時(shí),要防止自動(dòng)化測(cè)試帶來的好處被高維護(hù)成本所淹沒。
(5)測(cè)試自動(dòng)化可能會(huì)制約軟件開發(fā)。由于自動(dòng)測(cè)試比手動(dòng)測(cè)試更脆弱,所以維護(hù)會(huì)受到限制,從而制約軟件的開發(fā)。
6自動(dòng)化測(cè)試的意義
自動(dòng)化測(cè)試引入的原因是就把軟件測(cè)試人員從枯燥乏味的機(jī)械性手工測(cè)試勞動(dòng)中解放出來,以自動(dòng)化測(cè)試工具取而代之,使測(cè)試人員的精力真正花在提高軟件產(chǎn)品質(zhì)量本身。
總之,軟件自動(dòng)化測(cè)試還不能解決所有的測(cè)試問題,因此,在進(jìn)行自動(dòng)化測(cè)試前,首先要建立一個(gè)對(duì)軟件測(cè)試自動(dòng)化的認(rèn)識(shí)觀。軟件測(cè)試工具能提高測(cè)試效率、覆蓋率和可靠性等,但軟件測(cè)試的自動(dòng)化過程是一個(gè)漸進(jìn)的過程,并不需要一開始就對(duì)所有的測(cè)試實(shí)施自動(dòng)化,也通常也是不現(xiàn)實(shí)的。自動(dòng)化測(cè)試雖然具有很多點(diǎn),但它只是測(cè)試工作的一部分,是對(duì)手工測(cè)試的一種補(bǔ)充。因此,如何合理地規(guī)范自動(dòng)化測(cè)試,選擇適當(dāng)?shù)臏y(cè)試自動(dòng)化工具,是測(cè)試管理人員必須解決的問題。
參考文獻(xiàn)
[1] 賀平.軟件測(cè)試教程[M].北京:電子工業(yè)出版社,2005.
篇3
關(guān)鍵詞:存儲(chǔ)過程;自動(dòng)化測(cè)試;測(cè)試用例;Junit框架;XML
中圖分類號(hào): TP311文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2009)36-10252-02
Research on Automated Testing of Stored Procedure
MA Zhu-gen
(Department of Computer Science and Technology, Huaihua University, Huaihua 418008, China)
Abstract: Stored procedure test is an extremely tedious work.Some database products provide some tools to be able to make the statistics of the execution time of a stored procedure, the number of records and other information, but these tools can not carry on batch and repeated testing. Moreover,the test result is not intuitive. This paper describes the implementation scheme of stored procedure automation test under the junit framework.The code-reuse technique based automatic testing framework of Junitrealizes the regression testing of procedure. The test cases are described and organized using XML to realize the separation between code and data in order to improve efficiency of test, and the test result using XML provides developers with an intuitive notation.
Key words:stored procedure; software automation testing; test case; junit framework; XML
軟件測(cè)試是保證軟件質(zhì)量的重要手段,軟件測(cè)試在整個(gè)項(xiàng)目開發(fā)中所占的比重也越來越大。隨著軟件規(guī)模的擴(kuò)大和軟件復(fù)雜性的提高,軟件測(cè)試技術(shù)不斷發(fā)展,自動(dòng)化測(cè)試技術(shù)得到廣泛應(yīng)用,并逐漸成為軟件測(cè)試發(fā)展的方向。單元測(cè)試是軟件開發(fā)過程中要進(jìn)行的最基本的測(cè)試活動(dòng),是確保其他測(cè)試能夠順利進(jìn)行的基礎(chǔ)。隨著增量開發(fā)模式和重構(gòu)技術(shù)的發(fā)展,軟件自動(dòng)化測(cè)試工具JUnit也隨之產(chǎn)生。目前Junit已經(jīng)成為Java程序單元測(cè)試框架的標(biāo)準(zhǔn),已有多種對(duì)其進(jìn)行擴(kuò)展的自動(dòng)化測(cè)試工具[1]。
存儲(chǔ)過程被廣泛應(yīng)用在各種與數(shù)據(jù)庫相關(guān)的應(yīng)用系統(tǒng)中。在開發(fā)階段,對(duì)存儲(chǔ)過程進(jìn)行測(cè)試是必不可少的工作。通常的測(cè)試過程是由測(cè)試人員通過命令窗口執(zhí)行命令,再將命令窗口中的結(jié)果信息拷貝下來,保存到一個(gè)文件里,在以后再進(jìn)行分析或者比較。測(cè)試工作也可以使用類似Rapid SQL等圖形化的工具來輔助做一些工作,但能完成的測(cè)試工作量較少。這種大部分依靠手工進(jìn)行的存儲(chǔ)過程的單元測(cè)試存在很多缺點(diǎn),如測(cè)試效率低,無法重用,無法進(jìn)行自動(dòng)化的回歸測(cè)試,沒有直觀的測(cè)試結(jié)果,需要程序員手工整理測(cè)試結(jié)果并生成測(cè)試報(bào)告。針對(duì)這些問題,本文在Eclipse中利用Junit測(cè)試框架來實(shí)現(xiàn)存儲(chǔ)過程測(cè)試的自動(dòng)化。
1 Juit的框架結(jié)構(gòu)
Junit是Erich Gamma和Kent Beck編寫的一個(gè)回歸測(cè)試框架,它是一個(gè)Java程序自動(dòng)測(cè)試的框架[2],用在軟件測(cè)試的單元測(cè)試階段,即Java對(duì)象類的功能測(cè)試。JUnit共有七個(gè)包,核心的包就是junit.framework和junit.runner。Framework包中包含了Junit測(cè)試類所需的所有基類,它是整個(gè)Junit的基礎(chǔ)框架[3],負(fù)責(zé)整個(gè)測(cè)試對(duì)象的構(gòu)架,Runner則負(fù)責(zé)測(cè)試驅(qū)動(dòng)。JUnit框架中主要有以下幾個(gè)對(duì)象類[4-5]:
1) Assert類,它提供在編寫測(cè)試時(shí)要用到的所有assert方法。當(dāng)條件成立時(shí)assert方法保持沉默,但若條件不成立就拋出異常。Assert類是TestCase的父類。
2) TestCase類
客戶測(cè)試類所要繼承的類,負(fù)責(zé)測(cè)試時(shí)對(duì)客戶類進(jìn)行初始化,以及測(cè)試方法調(diào)用。類中的主要方法有:setUp()用于如變量賦值等測(cè)試的結(jié)果處理,tearDown()用于如文件關(guān)閉等測(cè)試的結(jié)束處理,run()測(cè)試實(shí)例的執(zhí)行,并把測(cè)試結(jié)果放入測(cè)試結(jié)果對(duì)象TestResult中。
3) TestResult類
負(fù)責(zé)收集TestCase所執(zhí)行的結(jié)果。一般來說,用戶不需要對(duì)TestResult進(jìn)行操作,測(cè)試結(jié)果由系統(tǒng)提供的測(cè)試工具自動(dòng)輸出。
4) TestSuite類
TestSuite對(duì)象是測(cè)試實(shí)例的集合,負(fù)責(zé)包裝和運(yùn)行所有的TestCase。
2 存儲(chǔ)過程測(cè)試代碼的自動(dòng)生成
Junit測(cè)試的實(shí)現(xiàn)流程就是繼承TestCase類,然后重載它的一些重要方法,如setUp()、tearDown(),最后將這些對(duì)象組裝到一個(gè)Testsuite對(duì)象中,交由TestRunner來運(yùn)行。為了利用 JUnit 帶來的高效率,首先需要改變被測(cè)存儲(chǔ)過程的調(diào)用方式,即從手工調(diào)用改為使用 JDBC 來調(diào)用,把一個(gè)個(gè)存儲(chǔ)過程的調(diào)用寫成Java 代碼,以后需要進(jìn)行回歸測(cè)試時(shí),只需要運(yùn)行這些 Java測(cè)試代碼就可以了。但是直接使用 JUnit,也會(huì)是一個(gè)煩瑣的過程,因?yàn)楸仨氃诿慷螠y(cè)試代碼中編寫連接數(shù)據(jù)庫的代碼和調(diào)用存儲(chǔ)過程時(shí)的一大堆參數(shù)設(shè)置的代碼。對(duì)于存儲(chǔ)過程測(cè)試來說,這些代碼就顯得非常累贅了,于是設(shè)想把這些操作封裝為一個(gè)公用的類,只需要在測(cè)試代碼中提供數(shù)據(jù)庫連接信息、存儲(chǔ)過程名字和參數(shù)值就可以了,其他的工作由這個(gè)公用的類來處理。因此在實(shí)現(xiàn)存儲(chǔ)過程測(cè)試代碼的自動(dòng)生成過程中,首先必須要解決如何獲得存儲(chǔ)過程名和存儲(chǔ)過程參數(shù)以及在生成的測(cè)試代碼中如何運(yùn)行存儲(chǔ)過程,下面分別進(jìn)行討論。
2.1 存儲(chǔ)過程名和參數(shù)的獲取
在存儲(chǔ)過程測(cè)試代碼生成過程中,第一個(gè)問題是要針對(duì)哪些存儲(chǔ)過程生成測(cè)試代碼。獲取存儲(chǔ)過程名可以有兩種方式,其一是由用戶手動(dòng)指定,其二是將儲(chǔ)過程名稱保存在文件中,由系統(tǒng)自動(dòng)從文件中分析出存儲(chǔ)過程名稱。這樣的文件可以是一個(gè)定義了 Java 常量的 .java 文件,也可以是一個(gè) .properties 文件。文件中可用"="來定義存儲(chǔ)過程,系統(tǒng)將自動(dòng)把"="右邊的部分識(shí)別為存儲(chǔ)過程的名稱。
要為存儲(chǔ)過程自動(dòng)生成測(cè)試代碼,有一個(gè)前提條件是被測(cè)試的存儲(chǔ)過程已經(jīng)在數(shù)據(jù)庫中創(chuàng)建。作為數(shù)據(jù)庫的對(duì)象,存儲(chǔ)過程的名稱、參數(shù)等信息也都有相應(yīng)的數(shù)據(jù)字典表存放。只要知道存儲(chǔ)過程的名字,可以查詢數(shù)據(jù)字典來獲取存儲(chǔ)過程的參數(shù)信息,如參數(shù)名稱、數(shù)據(jù)類型、長度、出入?yún)㈩愋偷取R虼?在測(cè)試代碼生成過程中可以根據(jù)存儲(chǔ)過程的名稱查詢數(shù)據(jù)庫的系統(tǒng)表來獲取參數(shù)信息,例如DB2 的 SYSCAT.ROUTINEPARMS表,Oracle 的 USER_ARGUMENTS 表或者SQLServer的SYSCOLUMNS 表等。
2.2 測(cè)試代碼中存儲(chǔ)過程的運(yùn)行
在已經(jīng)生成的測(cè)試代碼中,如果將大批的數(shù)據(jù)庫操作寫在測(cè)試代碼中顯然是不合適的,這樣會(huì)造成代碼的混亂和維護(hù)困難。因此考慮封裝一個(gè)類,用它專門來運(yùn)行存儲(chǔ)過程,它提供了以下主要方法:
1) SPProcesss (DBInfoObject dbConfig), 構(gòu)造函數(shù),根據(jù)傳入的數(shù)據(jù)庫配置信息,建立數(shù)據(jù)庫連接,初始化運(yùn)行環(huán)境;2) getSPParmList(String routineSchema , String routineName) 根據(jù)存儲(chǔ)過程模式和存儲(chǔ)過程名獲取參數(shù)列表;3) runStoredProcedure(StoredProcedureInfo spInfo) 運(yùn)行存儲(chǔ)過程,存儲(chǔ)過程信息包含在名為 StoredProcedureInfo 的類中。4) String (getDurationTime) 獲取存儲(chǔ)過程運(yùn)行時(shí)間;5) object getReturnedObject (int parmIndex)獲取存儲(chǔ)過程輸出參數(shù)的值。
其中的 StoredProcedureInfo是記錄存儲(chǔ)過程信息的類,包括存儲(chǔ)過程名、存儲(chǔ)過程參數(shù)列表等。因此,只需要首先創(chuàng)建存儲(chǔ)過程信息,然后調(diào)用 runStoredProcedure 方法即可運(yùn)行存儲(chǔ)過程。而這部分代碼也是自動(dòng)生成的,程序員真正需要做的就是修改調(diào)用參數(shù)的值。
3 改進(jìn)的Junit框架
采用Junit作為單元測(cè)試工具有許多優(yōu)點(diǎn),但也存在著不足。在實(shí)際的單元測(cè)試中,發(fā)現(xiàn)JUnit產(chǎn)生的測(cè)試代碼量是龐大的。為了提高測(cè)試代碼的復(fù)用,文獻(xiàn)[6]提出了一種改進(jìn)的自動(dòng)化單元測(cè)試框架。該框架設(shè)計(jì)的核心是實(shí)現(xiàn)測(cè)試用例與測(cè)試代碼的分離,運(yùn)用XML文件作為測(cè)試數(shù)據(jù)存儲(chǔ)的容器,把每個(gè)測(cè)試用例中的數(shù)據(jù)裝入到對(duì)應(yīng)的JavaBean中,最后構(gòu)建一個(gè)JavaBean對(duì)象為元素的ArraList來存儲(chǔ)所有的測(cè)試用例。測(cè)試執(zhí)行時(shí),測(cè)試代碼只需要從ArrayList里面取得測(cè)試用例的數(shù)據(jù),測(cè)試代碼僅僅完成驗(yàn)證任務(wù)。這樣,如果測(cè)試用例增加了,只需修改相應(yīng)的XML文件,而不必再修改測(cè)試代碼,就可完成相應(yīng)的測(cè)試。
借鑒文獻(xiàn)[6]的方法,本文將測(cè)試用例和測(cè)試結(jié)果都存儲(chǔ)為 XML 文檔,使用方法writeToFile(String fileName, String time,ArrayList testResultList)將測(cè)試結(jié)果保存在XML文件中,測(cè)試結(jié)果可以包括存儲(chǔ)過程運(yùn)行的時(shí)間、返回的記錄數(shù)、調(diào)用的參數(shù)列表或者出錯(cuò)信息等。選擇把測(cè)試結(jié)果保存為 XML的一個(gè)重要原因是通過簡單的 XML編程即可實(shí)現(xiàn)對(duì)歷次的測(cè)試結(jié)果的比較分析。其實(shí)現(xiàn)方法就是將測(cè)試結(jié)果的XML文件命名為 TestCaseName_年_月_日_時(shí)_分_秒.xml,每次運(yùn)行測(cè)試?yán)?都生成一個(gè)具有時(shí)間戳的測(cè)試結(jié)果文件,例如:
testSP_2009_10_18_17_27_00.xml
testSP_2009_10_18_17_30_00.xml
testSP_2009_10_18_17_32_00.xml
通過比較這三個(gè)文件中同一個(gè)存儲(chǔ)過程的運(yùn)行耗時(shí)、返回記錄數(shù)等指標(biāo)就能知道這次的測(cè)試結(jié)果比上次是否有所改進(jìn),或者系統(tǒng)在不同時(shí)間點(diǎn)的性能變化情況。
有了JUnit 測(cè)試代碼之后,在 Eclipse 中,左鍵雙擊將要運(yùn)行的 Java 文件,選擇 Run As->JUnit Test 就可以在工作環(huán)境中運(yùn)行測(cè)試文件了。運(yùn)行完畢后,會(huì)生成一個(gè)XML文件,再配合以XSL樣式文件,就可以在瀏覽器中看到美觀的測(cè)試報(bào)告了。
4 結(jié)束語
Junit和Eclipse兩種軟件的源代碼都能從網(wǎng)上免費(fèi)獲得,利用Junit基于XML存儲(chǔ)測(cè)試數(shù)據(jù)和測(cè)試結(jié)果的新測(cè)試框架真正提高了測(cè)試效率,簡化了測(cè)試步驟,從根本上提高了測(cè)試代碼的重用性。利用JUnit實(shí)現(xiàn)了以往存儲(chǔ)過程測(cè)試中很難進(jìn)行的回歸測(cè)試,利用XML技術(shù)實(shí)現(xiàn)了測(cè)試數(shù)據(jù)和測(cè)試代碼分離,提高了測(cè)試效率,為開發(fā)人員提供了直觀的測(cè)試結(jié)果。
現(xiàn)有的測(cè)試框架可以擴(kuò)展到Cactus(Apache Software開發(fā)的用來對(duì)服務(wù)器上的Java代碼進(jìn)行測(cè)試的框架)框架上,實(shí)現(xiàn)從瀏覽器進(jìn)行存儲(chǔ)過程測(cè)試用例的調(diào)用執(zhí)行,可以克服因?yàn)殚_發(fā)和生產(chǎn)環(huán)境之間可能存在的網(wǎng)絡(luò)、安全等因素而影響測(cè)試準(zhǔn)確性的問題。
參考文獻(xiàn):
[1] 余波,王樹林,張大方.基于Junit自動(dòng)生成類測(cè)試案例框架的實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2006,42(1):89-91.
[2] 王東剛.軟件測(cè)試與JUnit實(shí)踐[M].北京:人民郵電出版社,2004.
[3] 孔亮亮,殷兆麟.Java類測(cè)試工具Junit的分析與擴(kuò)展[J].計(jì)算機(jī)工程與設(shè)計(jì),2005,26(12):3413-3415.
[4] 何成萬,余秋惠.用JUnit實(shí)現(xiàn)Java程序自動(dòng)測(cè)試[J].計(jì)算機(jī)應(yīng)用,2002,22(3):93-94.
篇4
關(guān)鍵詞:自動(dòng)化測(cè)試;測(cè)試儀器;整體化測(cè)試平臺(tái)框架
中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-2374 (2010)22-0024-02
1自動(dòng)化測(cè)試簡介
自動(dòng)化測(cè)試的出現(xiàn)可以大大減少測(cè)試開銷,同時(shí)大幅提高有限時(shí)間內(nèi)的測(cè)試覆蓋率。成熟的自動(dòng)化測(cè)試機(jī)制,是可重復(fù)的、極少的人工資源投入的,可以做到“即使最小的改動(dòng)也可以以最小的代價(jià)進(jìn)行全面的測(cè)試”。
但是,在自動(dòng)化測(cè)試實(shí)施與推廣過程中,常常會(huì)因?yàn)樽詣?dòng)化測(cè)試手段與工具的多樣化與不統(tǒng)一化對(duì)自動(dòng)化測(cè)試件設(shè)計(jì)/開發(fā)效率的影響等,導(dǎo)致自動(dòng)化測(cè)試無法有效地推廣開來。
本文通過對(duì)數(shù)據(jù)通信領(lǐng)域的自動(dòng)化測(cè)試平臺(tái)的探討,尋找到一種更好的搭建自動(dòng)化測(cè)試平臺(tái)的方法,提高自動(dòng)化測(cè)試效率。本文提到的實(shí)現(xiàn)方法,是以數(shù)據(jù)通信領(lǐng)域產(chǎn)品的自動(dòng)化測(cè)試為例進(jìn)行闡述與實(shí)際實(shí)現(xiàn)的,其他領(lǐng)域的軟件自動(dòng)化測(cè)試可以依據(jù)自身的特點(diǎn)與情況對(duì)此進(jìn)行一些修正與改造。
2自動(dòng)化測(cè)試實(shí)現(xiàn)的常見問題
在通常的自動(dòng)化測(cè)試實(shí)現(xiàn)中存在著一些常見的差異性:
自動(dòng)化測(cè)試所使用的測(cè)試儀器或工具不同,如:使用PC作為測(cè)試工具,或者使用數(shù)通領(lǐng)域通用的測(cè)試儀器(如:思博倫公司的SmartBits或IXIA公司的IXIA測(cè)試儀)作為測(cè)試工具。
測(cè)試環(huán)境(或拓?fù)?不同,如:有的自動(dòng)化測(cè)試環(huán)境為單臺(tái)被測(cè)設(shè)備,有的需要多臺(tái)輔助測(cè)試設(shè)備,所實(shí)現(xiàn)的自動(dòng)化測(cè)試方法也相應(yīng)有所不同。
2.1基于PC的自動(dòng)化測(cè)試
由于業(yè)界有許多基于PC的開源工具或者工具包的支撐,因此在PC上編寫各種測(cè)試工具與測(cè)試軟件是一件相對(duì)方便且資源豐富的方法?;赑C的自動(dòng)化測(cè)試,主要完成一致性/功能測(cè)試與部分性能測(cè)試。但由于PC功能較為單一,無法很好地模擬網(wǎng)絡(luò)的組網(wǎng)方式,因此常見的解決方法是通過PC對(duì)實(shí)際的組網(wǎng)進(jìn)行測(cè)試,可以進(jìn)行實(shí)際測(cè)試效果。
該測(cè)試方式的優(yōu)點(diǎn)是較為直觀,自動(dòng)化測(cè)試實(shí)現(xiàn)簡單易行。但由于不同測(cè)試用例的組網(wǎng)環(huán)境不同,切換用例需要手動(dòng)改變組網(wǎng),自動(dòng)化無法連續(xù)進(jìn)行,因而完成一系列測(cè)試需要相當(dāng)長的時(shí)間,而且回歸和重現(xiàn)較為困難。另外,錯(cuò)誤故障定位困難,由于測(cè)試時(shí)使用了不同的輔助設(shè)備,出現(xiàn)故障時(shí),具體哪一臺(tái)設(shè)備出現(xiàn)故障難以確定。
2.2基于測(cè)試儀器的自動(dòng)化測(cè)試
在數(shù)通測(cè)試領(lǐng)域,所使用的測(cè)試儀器一般都提供了強(qiáng)有力的自動(dòng)化測(cè)試接口支撐,因此可以基于這些接口開發(fā)適用于被測(cè)設(shè)備(系統(tǒng))的自動(dòng)化測(cè)試軟件。
該測(cè)試的優(yōu)點(diǎn)是能夠更好地進(jìn)行路由仿真和性能測(cè)試,如OSPF(開放式最短路徑優(yōu)先)協(xié)議的收斂時(shí)間測(cè)試可以模擬任何組網(wǎng),組網(wǎng)結(jié)構(gòu)可以可視化地改變,并以協(xié)議報(bào)文的形式反饋到被測(cè)設(shè)備。
其缺點(diǎn)在于無法深入到具體協(xié)議的內(nèi)部實(shí)現(xiàn)交互過程的測(cè)試,大多數(shù)的軟件bug都集中于協(xié)議交互過程,導(dǎo)致測(cè)試覆蓋率不高,需要一致性測(cè)試作為補(bǔ)充。
2.3自動(dòng)化測(cè)試的管理
隨著自動(dòng)化測(cè)試規(guī)模的不斷擴(kuò)大,帶來的自動(dòng)化測(cè)試腳本管理、維護(hù)困難也會(huì)越來越突出。如何管理自動(dòng)化測(cè)試,也成為一個(gè)大家愈發(fā)重視的問題
3整體化自動(dòng)化測(cè)試平臺(tái)的設(shè)計(jì)
3.1測(cè)試環(huán)境的整體化
自動(dòng)化測(cè)試的組網(wǎng)環(huán)境的簡化,可通過PC的網(wǎng)絡(luò)接口模擬實(shí)際的路由和交換設(shè)備,使用一個(gè)單獨(dú)鏈路作為被測(cè)設(shè)備配置鏈路,專門配置被測(cè)系統(tǒng)。測(cè)試鏈路用于測(cè)試報(bào)文收發(fā),被測(cè)設(shè)備配置和報(bào)文收發(fā)和編解碼通過腳本控制
配置鏈路:測(cè)試PC通過配置鏈路對(duì)被測(cè)設(shè)備進(jìn)行控制,這樣的配置鏈路可以是帶內(nèi)(如:PC的控制口),也可是帶外(如:Telnet/HTTP等方式)。
測(cè)試鏈路:通過PC的網(wǎng)卡與被測(cè)設(shè)備通訊,在PC上運(yùn)行各種模擬數(shù)據(jù)通信設(shè)備或協(xié)議的軟件,來達(dá)成減少測(cè)試環(huán)境中的測(cè)試設(shè)備的目的,所需模擬的測(cè)試設(shè)備多的時(shí)候可以增加PC的網(wǎng)絡(luò)接口。
這里提到的模擬數(shù)據(jù)通信設(shè)備的軟件,可以是一些來自于已有的商用或開源軟件,也可以是自行開發(fā)的一些測(cè)試軟件。這些工具與特定應(yīng)用相關(guān),可以在實(shí)踐過程不斷地?cái)U(kuò)充。
測(cè)試環(huán)境的整體化,對(duì)于一些不可避免的需要組網(wǎng)環(huán)境的測(cè)試,目前業(yè)界已經(jīng)有一些比較常用的拓?fù)淝袚Q方法,如使用帶拓?fù)淝袚Q功能的網(wǎng)絡(luò)互連設(shè)備,通過對(duì)這樣的拓?fù)淝袚Q設(shè)備的自動(dòng)化控制、操作來實(shí)現(xiàn)不同邏輯拓?fù)涞那袚Q功能,本文不做進(jìn)一步的細(xì)節(jié)闡述。
3.2測(cè)試工具的整體化
PC測(cè)試可以細(xì)化編解碼和能夠進(jìn)行一致性測(cè)試,具有較強(qiáng)的測(cè)試覆蓋率,測(cè)試儀器測(cè)試具有能夠進(jìn)行性能測(cè)試、物理網(wǎng)絡(luò)仿真的優(yōu)勢(shì)。二者結(jié)合后,可以達(dá)到通過PC實(shí)現(xiàn)協(xié)議交互過程,通過測(cè)試儀器在這些交互過程中進(jìn)行所需的測(cè)試行為注入。
運(yùn)用測(cè)試儀器提供的擴(kuò)展命令接口,PC通過腳本控制測(cè)試儀器端口協(xié)議報(bào)文的流量發(fā)送,批量統(tǒng)計(jì)。同時(shí)可通過PC控制網(wǎng)卡適配器報(bào)文的收發(fā),進(jìn)行功能測(cè)試等。物理拓?fù)浯罱▓D如圖1所示:
如圖1所示,測(cè)試PC充當(dāng)了兩個(gè)角色:
被測(cè)設(shè)備控制者:PC通過控制鏈路對(duì)被測(cè)設(shè)備進(jìn)行配置、操作等控制。
測(cè)試儀器操作者:測(cè)試PC同時(shí)通過測(cè)試儀器提供的自動(dòng)化測(cè)試接口,實(shí)現(xiàn)對(duì)測(cè)試儀器的自動(dòng)化控制。
測(cè)試鏈路中存在2種測(cè)試方式:
測(cè)試PC對(duì)測(cè)試設(shè)備的測(cè)試鏈路:通過在PC上運(yùn)行各種自動(dòng)化軟件,來實(shí)現(xiàn)對(duì)被測(cè)設(shè)備的測(cè)試,如報(bào)文收發(fā)、協(xié)議模擬等。
測(cè)試儀器對(duì)測(cè)試設(shè)備的測(cè)試鏈路:自動(dòng)化測(cè)試程序通過調(diào)用測(cè)試儀器提供的測(cè)試接口,實(shí)現(xiàn)對(duì)被測(cè)設(shè)備的各種測(cè)試操作,也包括報(bào)文收發(fā)、協(xié)議模擬等。
通過對(duì)兩者的有機(jī)結(jié)合,可以將測(cè)試PC對(duì)測(cè)試設(shè)備的測(cè)試鏈路與測(cè)試儀器對(duì)測(cè)試設(shè)備的測(cè)試鏈路進(jìn)行統(tǒng)一控制,從而實(shí)現(xiàn)二者的交互。
3.3自動(dòng)化測(cè)試管理的整體化
構(gòu)造整體化的測(cè)試平臺(tái),除了自動(dòng)化測(cè)試本身外,還兼具測(cè)試用例管理、測(cè)試用例編輯、測(cè)試用例執(zhí)行、測(cè)試結(jié)果分析與測(cè)試結(jié)果統(tǒng)計(jì)反饋等功能。將整個(gè)自動(dòng)化測(cè)試實(shí)現(xiàn)、使用、管理的過程統(tǒng)一在一個(gè)平臺(tái)上實(shí)現(xiàn)。
3.4整體化測(cè)試平臺(tái)框架
本章節(jié)討論整個(gè)整體化測(cè)試平臺(tái)如何進(jìn)行構(gòu)建,形成整體統(tǒng)一的測(cè)試平臺(tái)框架。
3.4.1框架構(gòu)成整體化測(cè)試平臺(tái)框架包含如下功能支持:自動(dòng)化測(cè)試腳本編輯環(huán)境。腳本編輯界面,包括各種基本的編輯功能,語法美化、關(guān)鍵字識(shí)別、關(guān)鍵字自動(dòng)提示等輔助功能。
(1)測(cè)試腳本調(diào)試環(huán)境。自動(dòng)化測(cè)試腳本的調(diào)試器,可以通過集成當(dāng)前通用的調(diào)試環(huán)境與工具來達(dá)成。
(2)測(cè)試管理界面。測(cè)試工程建立和管理:建立測(cè)試工程項(xiàng)目,生成相關(guān)的工程組織文件,并可添加/移除已編輯好的測(cè)試腳本和測(cè)試配置文件。測(cè)試參數(shù)設(shè)置和參數(shù)腳本生成:配置測(cè)試過程所需的參數(shù),并生成相應(yīng)的配置腳本文件。當(dāng)測(cè)試環(huán)境改變時(shí),測(cè)試人員只需更新相關(guān)參數(shù)。測(cè)試?yán)龍?zhí)行規(guī)則設(shè)置:設(shè)置測(cè)試?yán)龍?zhí)行的規(guī)則,如在何種條件下終止測(cè)試執(zhí)行過程,測(cè)試過程希望察看的信息,測(cè)試用例按何種順序執(zhí)行等。測(cè)試用例腳本,用例描述,拓?fù)涞挠成潢P(guān)系維護(hù):測(cè)試人員可以根據(jù)用例列表,查看用例描述,物理和邏輯組網(wǎng)圖。測(cè)試結(jié)果的記錄和日志生成:對(duì)于測(cè)試失敗的用例,記錄錯(cuò)誤的日志。測(cè)試結(jié)果處理:測(cè)試結(jié)果的查詢,并提供同問題記錄系統(tǒng)的接口,使得測(cè)試結(jié)果能夠及時(shí)上報(bào);同時(shí),也可視需求決定是否提供E-mail、短信等實(shí)時(shí)通知功能。
(3)測(cè)試執(zhí)行操作界面。提供測(cè)試控制的界面,測(cè)試開始,暫停,繼續(xù),停止等。
測(cè)試過程監(jiān)視:在窗口界面顯示測(cè)試?yán)龍?zhí)行的結(jié)果和統(tǒng)計(jì),指定類型的協(xié)議報(bào)文的收發(fā)過程和編解碼等信息。對(duì)各種信息劃分等級(jí),測(cè)試人員可以在測(cè)試執(zhí)行過程屏蔽/顯示某一級(jí)別的信息。支持測(cè)試人員定義多個(gè)窗口顯示不同類型的信息。
(4)公用支持庫的支撐。提供自行定義的一套自動(dòng)化測(cè)試公用庫,其基礎(chǔ)構(gòu)成包括:被測(cè)設(shè)備的控制庫:用于控制不同的被測(cè)設(shè)備,將相同的操作歸類,提供統(tǒng)一接口。報(bào)文收發(fā)的通用庫,這里的報(bào)文收發(fā)可以通過PC網(wǎng)卡實(shí)現(xiàn),也可通過測(cè)試儀器實(shí)現(xiàn),目的是為不同的測(cè)試手段提供統(tǒng)一的接口。函數(shù)報(bào)文緩沖操作接口:提供一組申請(qǐng)、釋放和訪問內(nèi)存緩沖區(qū)的命令,用于支持協(xié)議報(bào)文的編解碼,以及協(xié)議報(bào)文編解碼命令。利用報(bào)文緩沖區(qū)管理命令實(shí)現(xiàn)特定協(xié)議編解碼的過程。擴(kuò)展接口規(guī)范的定義和擴(kuò)展開發(fā)庫的提供:為后續(xù)新的協(xié)議支持或新的操作支持,提供兼容性以及統(tǒng)一的命名規(guī)則要求。
3.4.2框架實(shí)現(xiàn)簡述本文給出了具體框架的搭建模型和為實(shí)現(xiàn)相應(yīng)的功能需要完成的內(nèi)容,具體的實(shí)現(xiàn)平臺(tái)、方式可依據(jù)所需自動(dòng)化測(cè)試環(huán)境的不同而變化,譬如:平臺(tái)運(yùn)行的操作系統(tǒng)、實(shí)現(xiàn)平臺(tái)所使用的編程語言等等。筆者在實(shí)踐過程中,是在Windows操作系統(tǒng)下的使用C#進(jìn)行工具實(shí)現(xiàn),完成了對(duì)測(cè)試PC、思博倫公司的SmartBits測(cè)試儀器,以及被測(cè)設(shè)備的自動(dòng)化測(cè)試。
在實(shí)際實(shí)現(xiàn)過程中,可以依據(jù)當(dāng)前系統(tǒng)的自動(dòng)化測(cè)試程度與水平,通過逐步疊加的方式來逐步實(shí)現(xiàn)框架中的不同功能。譬如:其中提到的自動(dòng)化腳本編輯環(huán)境、測(cè)試執(zhí)行失敗記錄的分析、測(cè)試結(jié)果的統(tǒng)計(jì)等功能,可以隨著自動(dòng)化測(cè)試資源投入的增大,對(duì)自動(dòng)化需求的增多,而逐步增加開發(fā),并不一定需要一步到位地實(shí)現(xiàn)所有功能。
本文從數(shù)據(jù)通信領(lǐng)域自動(dòng)化測(cè)試實(shí)現(xiàn)常見的一些問題入手,通過構(gòu)建一個(gè)整體化的,不依賴于自動(dòng)化測(cè)試實(shí)現(xiàn)方法、實(shí)現(xiàn)手段的自動(dòng)化測(cè)試平臺(tái)與工具,以期達(dá)到解決這些常見的問題,提高自動(dòng)化測(cè)試實(shí)現(xiàn)效率,改善自動(dòng)化測(cè)試管理方式的目的。
參考文獻(xiàn)
篇5
關(guān)鍵詞:軟件 測(cè)試 自動(dòng)化 技術(shù)
中圖分類號(hào):TP311.5 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2016)06-0234-01
軟件測(cè)試技術(shù)從傳統(tǒng)的手工測(cè)試逐步發(fā)展為現(xiàn)在的自動(dòng)化測(cè)試技術(shù)。手工測(cè)試往往需要技術(shù)人員付出大量的精力和體力,是一項(xiàng)工作量極大的過程。如今隨著社會(huì)的高速發(fā)展,信息技術(shù)的突飛猛進(jìn),軟件領(lǐng)域的競爭趨于白熱化,軟件正在向著復(fù)雜、尖端、多元化方向發(fā)展。大量的軟件程序開發(fā)出來,僅依靠效率低下的手工測(cè)試已經(jīng)遠(yuǎn)遠(yuǎn)不能達(dá)到人們的需求。為了適應(yīng)市場,自動(dòng)化測(cè)試被開發(fā)出來,自動(dòng)化測(cè)試的誕生極大的提高了工作效率,是測(cè)試用例的生成軟件測(cè)試是軟件質(zhì)量保證的重要手段,也是目前軟件測(cè)試的發(fā)展方向。
1 軟件測(cè)試自動(dòng)化基本概述
從上世紀(jì)六十年代開始人們就對(duì)軟件測(cè)試就行了研究,至今己有50余年的歷史。測(cè)試顧名思義就是對(duì)所開發(fā)的軟件產(chǎn)品進(jìn)行檢查、評(píng)審和確認(rèn)等過程,是對(duì)軟件產(chǎn)品質(zhì)量所進(jìn)行的自檢和自評(píng)。
(1)軟件測(cè)試的概念。軟件測(cè)試是軟件開發(fā)的過程中重要的一環(huán),其工作一般是事先安排好工作計(jì)劃,然后較為全面系統(tǒng)的進(jìn)行測(cè)試工作。是對(duì)軟件產(chǎn)品進(jìn)行的自檢。該活動(dòng)伴隨著軟件開發(fā)的每一步進(jìn)行。通過軟件測(cè)試,可以檢測(cè)出軟件在運(yùn)行過程中存在或者潛伏的各種錯(cuò)誤或者缺陷,從而為開發(fā)者提供數(shù)據(jù)依據(jù)。
(2)軟件測(cè)試的種類。軟件測(cè)試的分類方法有很多,比如按軟件開發(fā)過程可分為單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試及驗(yàn)收測(cè)試;按軟件動(dòng)作可分為升級(jí)變更的測(cè)試、重現(xiàn)故障測(cè)試、己有功能的測(cè)試、回歸測(cè)試、兼容性測(cè)試及恢復(fù)測(cè)試、安裝/卸載的測(cè)試等等;按測(cè)試方法,又可以分為黑箱測(cè)試及白箱測(cè)試;按用不用借助軟件,可以分為手動(dòng)測(cè)試和自動(dòng)化測(cè)試。
(3)典型的軟件測(cè)試問題。由于軟件系統(tǒng)的復(fù)雜性和不可預(yù)測(cè)性,在軟件測(cè)試過程中可能會(huì)出現(xiàn)一些問題,主要問題可歸結(jié)為以下幾個(gè)方面:項(xiàng)目存在風(fēng)險(xiǎn)性,在項(xiàng)目晚期才能真正降低;項(xiàng)目進(jìn)度不易預(yù)測(cè),加之項(xiàng)目負(fù)責(zé)人對(duì)所開發(fā)軟件實(shí)際狀況的了解程度不夠,造成管理上的問題。開發(fā)經(jīng)費(fèi)較高,如果在測(cè)試過程中錯(cuò)誤沒被監(jiān)測(cè)出來,后期的軟件錯(cuò)誤修復(fù)費(fèi)用會(huì)極高,同時(shí)也會(huì)造成整個(gè)項(xiàng)目的延遲,可能會(huì)導(dǎo)致開發(fā)項(xiàng)目成本的大幅度增加,據(jù)統(tǒng)計(jì),近些年由軟件開發(fā)失誤所造成的經(jīng)濟(jì)損失每年高達(dá)幾百億美元。
(4)自動(dòng)化測(cè)試。測(cè)試自動(dòng)化作為一種測(cè)試技術(shù),通過設(shè)定的機(jī)制,可以自動(dòng)對(duì)被測(cè)系統(tǒng)進(jìn)行測(cè)試。測(cè)試自動(dòng)化以較低的費(fèi)用、徹底的測(cè)試、較高的產(chǎn)品質(zhì)量作為目標(biāo)。實(shí)現(xiàn)軟件測(cè)試自動(dòng)化的趨勢(shì)己經(jīng)不可逆轉(zhuǎn)了。自動(dòng)化測(cè)試主要采用自動(dòng)化工具提供的測(cè)試腳本對(duì)目標(biāo)應(yīng)用程序進(jìn)行測(cè)試。自動(dòng)化測(cè)試具有速度快、測(cè)試效率高、可靠性強(qiáng)、測(cè)試覆蓋率高通用性強(qiáng)、風(fēng)險(xiǎn)低信任度高、完成手工測(cè)試不能或難以完成的測(cè)試等特點(diǎn)。雖然自動(dòng)化測(cè)試具有很多優(yōu)點(diǎn),但是其不是萬能的,也有其自身的局限性。
2 軟件測(cè)試自動(dòng)化關(guān)鍵技術(shù)
(1)測(cè)試用例自動(dòng)生成技術(shù)。測(cè)試用例的自動(dòng)生成是實(shí)現(xiàn)自動(dòng)化的關(guān)鍵所在,靠人為以及手工的方式產(chǎn)生測(cè)試用例是較傳統(tǒng)的方式,花費(fèi)時(shí)間較長且質(zhì)量不高,會(huì)有人為因素造成一定的錯(cuò)誤,而自動(dòng)生成的測(cè)試用例就可以避免此問題的生成。目前有面向路徑的測(cè)試用例及面向功能的測(cè)試用例兩種技術(shù)。面向路徑的技術(shù)是針對(duì)程序的內(nèi)部結(jié)構(gòu)的,需要對(duì)程序的邏輯路徑達(dá)到一定程度的覆蓋,是基于覆蓋的測(cè)試用例生成技術(shù),通過覆蓋程序中所有路徑,找到程序的中隱秘的錯(cuò)誤。面向路徑的方法主要有動(dòng)態(tài)法、靜態(tài)法、隨機(jī)法及動(dòng)態(tài)法。面向功能技術(shù)是以規(guī)格說明書作為支持,并根據(jù)說明書的需求生成相應(yīng)的測(cè)試用例。面向功能技術(shù)可分為基于模型的、基于代數(shù)的以及基于有限狀態(tài)機(jī)的等。測(cè)試用例自動(dòng)生成相關(guān)算法主要有遺傳算法、蟻群算法及粒子群算法。目前混合蛙跳算法在測(cè)試用例自動(dòng)算法中也開始使用,此方法是一種全新群體智能算法,結(jié)合了模因算法和粒子算法兩者的優(yōu)點(diǎn)。
(2)捕獲/回放。自動(dòng)化測(cè)試使用的主要手段之一是捕獲/回放。技術(shù)人員通過對(duì)腳本進(jìn)行捕捉回放,完成腳本的錄制工作。其主要記錄內(nèi)容為所開發(fā)軟件的系統(tǒng)結(jié)構(gòu)組件,以及所開發(fā)軟件對(duì)測(cè)試的具體操作步驟。測(cè)試結(jié)果一般是以文本格式存放。捕獲/回放一般有三種特定級(jí)別,即操作系統(tǒng)級(jí)別、硬件級(jí)別和進(jìn)程級(jí)別。
(3)自動(dòng)化測(cè)試模型選取。自動(dòng)化測(cè)試模型一般可以分為三種,即合并式、獨(dú)立式及顧問式。其模型主要是為了在組織中實(shí)行自動(dòng)化測(cè)試服務(wù)。合并式模型:主要工作有設(shè)計(jì)、開發(fā)、執(zhí)行以及提交等。測(cè)試自動(dòng)化工程師會(huì)參與到手工測(cè)試人員的每一項(xiàng)工作中,輔助其完成測(cè)試工作。獨(dú)立式模型:一個(gè)核心的測(cè)試自動(dòng)化組負(fù)責(zé)進(jìn)行自動(dòng)化測(cè)試項(xiàng)目生命周期中的所有活動(dòng)。這個(gè)小組要完成從自動(dòng)化測(cè)試套件開始設(shè)計(jì)到間的所有任務(wù)。在顧問式模型中,負(fù)責(zé)給手工測(cè)試工程師培訓(xùn)關(guān)于測(cè)試工具,測(cè)試方法的知識(shí)并為執(zhí)行和鞏固活動(dòng)提供基礎(chǔ)設(shè)施。
無論選取哪個(gè)模型,其最終的目的都是為了增加工作效率,提高軟件檢測(cè)過程的自動(dòng)化水平。專門的測(cè)試自動(dòng)化工程師被分配到每個(gè)測(cè)試項(xiàng)目中和手工測(cè)試人員一起工作,共同分擔(dān)著測(cè)試自動(dòng)化項(xiàng)目的相關(guān)活動(dòng)。在整個(gè)測(cè)試流程中,自動(dòng)化測(cè)試工程師與手工測(cè)試工程師對(duì)需要進(jìn)行自動(dòng)化的測(cè)試用例進(jìn)行研究討論,對(duì)原有的手工測(cè)試用例進(jìn)行拆分使其符合自動(dòng)化測(cè)試的需求。
3 結(jié)語
軟件測(cè)試是為了發(fā)現(xiàn)軟件錯(cuò)誤以及潛在缺陷的過程,是保障軟件質(zhì)量的關(guān)鍵技術(shù)之一。軟件自動(dòng)化測(cè)試是軟件測(cè)試的一個(gè)重要組成部分,它可以完成許多手工測(cè)試無法實(shí)現(xiàn)或者難以實(shí)現(xiàn)的測(cè)試。對(duì)軟件測(cè)試自動(dòng)化關(guān)鍵技術(shù)的分析具有很重要的意義。
參考文獻(xiàn)
[1]傅兵.軟件測(cè)試技術(shù)現(xiàn)狀與發(fā)展趨勢(shì)研究[J].電腦編程技巧與維護(hù),2016(02).
[2]林平榮.高校軟件測(cè)試自動(dòng)化教學(xué)平臺(tái)的搭建[J].電腦知識(shí)與技術(shù),2010(28).
篇6
【關(guān)鍵詞】軟件 自動(dòng)化 應(yīng)用研究 測(cè)試
一款軟件從開發(fā)到,除了軟件設(shè)計(jì)編程之外,軟件測(cè)試也是不可或缺的一項(xiàng)中心環(huán)節(jié)。軟件測(cè)試在以往都是軟件開發(fā)人員自己檢測(cè),但程序員卻無法將充足的時(shí)間用來測(cè)試,所以后來發(fā)展為軟件開發(fā)與測(cè)試兩者獨(dú)立,測(cè)試部分由測(cè)試部門負(fù)責(zé)。但這個(gè)過程人力物力消耗大,時(shí)間長,所以軟件自動(dòng)化檢測(cè)技術(shù)也就應(yīng)運(yùn)而生。
1 軟件自動(dòng)化測(cè)試
1.1 軟件自動(dòng)化測(cè)試的概念
軟件的自動(dòng)化測(cè)試是一種新的軟件測(cè)試技術(shù),根據(jù)需要,可以將測(cè)試系統(tǒng)的運(yùn)行環(huán)境進(jìn)行調(diào)整,然后按照測(cè)試要求與目的設(shè)置相關(guān)程序功能,然后由系統(tǒng)按照設(shè)置好的程序?qū)π枰M(jìn)行測(cè)試的軟件測(cè)試。其運(yùn)用主要地方為:軟件開發(fā)完成后的測(cè)試以及維護(hù)測(cè)試。
1.2 軟件自動(dòng)化測(cè)試的目標(biāo)
通過軟件自動(dòng)化測(cè)試技術(shù)進(jìn)行新軟件測(cè)試,可以達(dá)到:用最少的經(jīng)費(fèi),取得更完整徹底的測(cè)試結(jié)果,從而根據(jù)測(cè)試結(jié)果進(jìn)行軟件的再修改,以此來提高軟件的質(zhì)量。
1.3 軟件自動(dòng)化測(cè)試的特點(diǎn)
較傳統(tǒng)的人工測(cè)試而言,軟件自動(dòng)化測(cè)試具有如下特點(diǎn):
1.3.1 在軟件版本升級(jí)后,進(jìn)行再測(cè)試
其實(shí)這一點(diǎn)是這項(xiàng)檢測(cè)技術(shù)最基本也是最核心的任務(wù)。當(dāng)一個(gè)軟件需要進(jìn)行版本升級(jí)時(shí),為了測(cè)試新版本軟件的性能,那么人工軟件測(cè)試與自動(dòng)化軟件測(cè)試就無可比擬。版本更新周期短,不具有開發(fā)階段周期長這一特質(zhì)。所以,利用軟件自動(dòng)化測(cè)試技術(shù),在省卻大量測(cè)試時(shí)間的同時(shí),還可以加快新版本測(cè)試進(jìn)度,降低版本升級(jí)的費(fèi)用。
1.3.2 可持續(xù)測(cè)試
軟件自動(dòng)化測(cè)試技術(shù)的另一大特點(diǎn)就是其可持續(xù)測(cè)試性,自動(dòng)化測(cè)試只要機(jī)器運(yùn)行,就可以一直測(cè)試下去,而手工測(cè)試卻無法具備測(cè)試持續(xù)性。這是人力測(cè)試無法解決的劣勢(shì)。
1.3.3 多任務(wù)性
人力有窮時(shí),對(duì)于簡單軟件系統(tǒng),人工測(cè)試還能勝任,但遇到諸如多元網(wǎng)絡(luò)傳輸系統(tǒng),依靠人力對(duì)系統(tǒng)測(cè)試,是行不通的。但自動(dòng)化軟件測(cè)試技術(shù)卻可以勝任,其可以同時(shí)對(duì)這些網(wǎng)元進(jìn)行仿真模擬測(cè)試。所以,自動(dòng)化測(cè)試具有多任務(wù)性。
1.3.4 人力資源利用率高
通過自動(dòng)化軟件檢測(cè)技術(shù),可以將更多地人力資源解放出來,讓有限的人力資源不再陷入繁瑣的測(cè)試當(dāng)中。利用自動(dòng)化檢測(cè)軟件可以讓工作人員只需要思考測(cè)試的目的,設(shè)計(jì)更好地測(cè)試方案,控制好測(cè)試軟件即可。
1.3.5 測(cè)試進(jìn)程具有穩(wěn)定性
利用軟件自動(dòng)化測(cè)試技術(shù),可以將測(cè)試的環(huán)境保持穩(wěn)定一致,可以規(guī)避人力測(cè)試因外界因素影響測(cè)試過程,導(dǎo)致測(cè)試結(jié)果不準(zhǔn)確這一問題。
1.3.6 測(cè)試過程與結(jié)果可做范例
軟件經(jīng)過自動(dòng)化測(cè)試之后,測(cè)試軟件就會(huì)將測(cè)試信息記錄下來,作為范例,當(dāng)遇到相似測(cè)試項(xiàng)目時(shí),這些信息也可以作參考或直接使用。這也是人力測(cè)試所不具備的。
1.4 軟件自動(dòng)化測(cè)試所需技術(shù)
一款自動(dòng)化測(cè)試軟件,其需要具備這幾樣必須條件:被測(cè)軟件信息輸入部、測(cè)試結(jié)果輸出部分以及多次測(cè)試結(jié)果對(duì)比部分。具備這三大部分,測(cè)試軟件才能實(shí)現(xiàn)自動(dòng)化測(cè)試。
1.5 軟件自動(dòng)化測(cè)試的不足
軟件自動(dòng)化測(cè)試,其優(yōu)點(diǎn)甚多,但并非萬能。自動(dòng)化測(cè)試任然存在一些不足之處,這些都是自動(dòng)化測(cè)試技術(shù)所無法具備的:
1.5.1 無法完全替代人工測(cè)試與測(cè)試工程師
有許多測(cè)試任務(wù)是自動(dòng)化測(cè)試軟件無法完成的。這時(shí)候就需要用到人力測(cè)試以及測(cè)試工程師了。對(duì)于簡單的軟件測(cè)試,依靠人力測(cè)試即可解決,而不需要檢測(cè)軟件參與,檢測(cè)軟件每次測(cè)試,都需進(jìn)行系統(tǒng)調(diào)試,對(duì)于簡單的測(cè)試,其調(diào)試時(shí)間與人力測(cè)試時(shí)間相當(dāng),這類情況檢測(cè)軟件的使用就不合時(shí)宜。還有一些類型也是軟件測(cè)試所無法替代的,例如:被測(cè)軟件運(yùn)行不穩(wěn)定,這時(shí)就需要人力進(jìn)行測(cè)試,這樣方便調(diào)節(jié)。還有有一些需要人機(jī)交互的測(cè)試,測(cè)試軟件是一種設(shè)定好的程序,對(duì)于需要實(shí)時(shí)進(jìn)行人機(jī)交互的測(cè)試來說,其自動(dòng)化測(cè)試無法做到隨機(jī)應(yīng)變。所以,自動(dòng)化軟件測(cè)試是不能完全替代人工測(cè)試的。
1.5.2 軟件新版本的再測(cè)試沒人工發(fā)現(xiàn)bug多
自動(dòng)化測(cè)試軟件的一大好處就是可重復(fù)測(cè)試,但當(dāng)使用以往測(cè)試數(shù)據(jù)來測(cè)試同軟件的新版本之時(shí),自動(dòng)化軟件檢測(cè)所發(fā)現(xiàn)的bug往往會(huì)低于人工測(cè)試所發(fā)現(xiàn)的bug。
1.5.3 自動(dòng)化軟件檢測(cè)對(duì)軟件開發(fā)存在一定制約
由于自動(dòng)化軟件測(cè)試程序相對(duì)固定,當(dāng)一些被測(cè)軟件有重大更新時(shí),往往由于測(cè)試程序無法與新版本做到兼容,從而導(dǎo)致測(cè)試軟件崩潰。而自動(dòng)化測(cè)試軟件的再設(shè)計(jì)與維護(hù)成本會(huì)比人工測(cè)試高,且自動(dòng)化測(cè)試比人工測(cè)試影響要高,所以會(huì)對(duì)開發(fā)人員造成影響,綜合以上因素,會(huì)對(duì)一些被測(cè)軟件的重大更新部分造成修改限制。
所以,合理安排軟件自動(dòng)化測(cè)試與人工軟件測(cè)試,將會(huì)更利于開發(fā)人員降低開發(fā)成本,減少測(cè)試時(shí)間,獲取高效益。
2 適合軟件自動(dòng)化測(cè)試技術(shù)的領(lǐng)域與輔助測(cè)試工具
2.1 適用范圍
目前的軟件自動(dòng)化測(cè)試適用于:單元/組件測(cè)試、BVT(版本測(cè)試)、集成測(cè)試、系統(tǒng)測(cè)試、回歸測(cè)試以及性能測(cè)試。
2.2 軟件自動(dòng)化測(cè)試與人工測(cè)試使用環(huán)境總結(jié)
軟件自動(dòng)化測(cè)試:該被測(cè)軟件項(xiàng)目無嚴(yán)格時(shí)間限制,有良好測(cè)試計(jì)劃與測(cè)試目的,測(cè)試內(nèi)容涉及多平臺(tái),涉及被測(cè)軟件運(yùn)行所需硬件,被測(cè)軟件可以使用自動(dòng)化軟件進(jìn)行測(cè)試等這些情況下都可以使用軟件自動(dòng)化測(cè)試。
人工軟件測(cè)試:沒有嚴(yán)格測(cè)試時(shí)間限制,沒有明確的測(cè)試目的與計(jì)劃,開發(fā)人員或軟件測(cè)試人員當(dāng)中不會(huì)操作軟件自動(dòng)化測(cè)試的,剛加入開發(fā)的新成員,沒有相關(guān)硬件等等這些情況就不是自動(dòng)化軟件測(cè)試所能達(dá)到的。
2.3 軟件自動(dòng)化測(cè)試所需工具
在軟件自動(dòng)化測(cè)試進(jìn)程中,還需要一些工具輔助軟件測(cè)試,目前按照使用環(huán)境可以分為:
2.3.1 管理型工具
管理型測(cè)試工具主要是對(duì)軟件測(cè)試的計(jì)劃、用到的測(cè)試用例、測(cè)試所需以及測(cè)試進(jìn)程進(jìn)行綜合管理,同時(shí)還能通過這些管理型工具發(fā)現(xiàn)自動(dòng)化測(cè)試所存在的漏洞,并就這些測(cè)試漏洞進(jìn)行管理跟蹤。而軟件的開發(fā)者和軟件測(cè)試人員能夠通過管理工具對(duì)被測(cè)軟件信息進(jìn)行交流。
2.3.2 沙盒工具
所謂沙盒測(cè)試工具,就是在獨(dú)立環(huán)境下,對(duì)被測(cè)軟件內(nèi)部代碼進(jìn)行邏輯流程測(cè)試;而在測(cè)試中可以發(fā)現(xiàn)被測(cè)軟件的漏洞,并且能夠?qū)⑦@些缺陷定位,最高可定位至代碼級(jí)。
2.3.3 用來分析被測(cè)軟件在靜態(tài)環(huán)境下的工具
靜態(tài)軟件分析工具可以對(duì)被測(cè)軟件代碼直接掃描,在不需編譯的情況下進(jìn)行測(cè)試分析。靜態(tài)軟件測(cè)試分析工具主要使用在:(1)代碼;對(duì)被測(cè)軟件進(jìn)行語法掃描分析,找出代碼編寫錯(cuò)誤的地方。(2)對(duì)被測(cè)軟件靜態(tài)情況下分析其結(jié)構(gòu),靜態(tài)測(cè)試工具會(huì)根據(jù)被測(cè)軟件代碼結(jié)構(gòu)復(fù)雜程度,對(duì)軟件代碼的設(shè)計(jì)與模塊調(diào)用生成記錄圖表。
2.3.4 被測(cè)軟件動(dòng)態(tài)環(huán)境運(yùn)行分析工具
相對(duì)靜態(tài)軟件分析測(cè)試工具而言,動(dòng)態(tài)分析工具的工作方式是利用釘釘子的方法,在被測(cè)軟件代碼中插入一段檢測(cè)代碼,這段代碼會(huì)在被測(cè)軟件運(yùn)行時(shí),對(duì)軟件數(shù)據(jù)與資源調(diào)用率進(jìn)行統(tǒng)計(jì)分析。
2.3.5 功能測(cè)試分析工具
功能測(cè)試分析工具也可以稱之為黑盒工具,其工作流程是通過自動(dòng)記錄被測(cè)軟件數(shù)據(jù)、檢測(cè)以及回溯客戶操作。通過對(duì)被測(cè)軟件測(cè)試前所預(yù)測(cè)結(jié)果進(jìn)行對(duì)比,從而幫助開發(fā)人員與測(cè)試人員對(duì)不同版本的軟件進(jìn)行功能測(cè)試分析,提高工作人員工作效率。黑盒工具其主要目的是:通過測(cè)試分析被測(cè)軟件程序能否達(dá)到預(yù)期設(shè)計(jì)目標(biāo)以及穩(wěn)定運(yùn)行。
2.3.6 軟件性能測(cè)試分析工具
性能測(cè)試分析工具的目標(biāo)是:分析測(cè)試被測(cè)應(yīng)用軟件的可擴(kuò)展性能。在測(cè)試過程中,通過性能測(cè)試分析工具可以幫助測(cè)試人員檢測(cè)軟件運(yùn)行性能以及查找運(yùn)行時(shí)所出問題。并且就檢測(cè)出的問題進(jìn)行自動(dòng)性能優(yōu)化,保證應(yīng)用軟件能夠正常進(jìn)行測(cè)試運(yùn)行。
2.3.7 輔助工具
這一類的測(cè)試工具其本身并不具備測(cè)試所需條件,輔助工具存在的目的就是將軟件測(cè)試過程中所搜集的數(shù)據(jù)信息生成記錄,為測(cè)試人員提供參考依據(jù)。
根據(jù)軟件測(cè)試過程所需工具,正確使用這些測(cè)試分析工具可以幫助測(cè)試人員更快,更高效完成軟件測(cè)試任務(wù),縮短軟件周期。
3 合理設(shè)計(jì)軟件自動(dòng)化的測(cè)試
3.1 設(shè)計(jì)中應(yīng)當(dāng)規(guī)避的情況
合理的自動(dòng)化測(cè)試設(shè)計(jì),可以提高工作效率,所以,在設(shè)計(jì)自動(dòng)化測(cè)試時(shí),應(yīng)注意規(guī)避以下幾種情況:時(shí)間限制,沒有明確的測(cè)試目標(biāo),測(cè)試經(jīng)驗(yàn)不夠多,測(cè)試人員流動(dòng)性高,對(duì)測(cè)試失去耐心和太偏重技術(shù)等。
3.2 測(cè)試軟件設(shè)計(jì)注意事項(xiàng)
在設(shè)計(jì)自動(dòng)化測(cè)試軟件時(shí),有幾點(diǎn)需要重點(diǎn)設(shè)計(jì):
3.2.1 測(cè)試軟件的可維護(hù)性
過高的設(shè)備維護(hù)成本將會(huì)大大降低自動(dòng)化測(cè)試軟件的實(shí)際應(yīng)用性,所以,在設(shè)計(jì)自動(dòng)化測(cè)試軟件的時(shí)候,軟件的可維護(hù)性是其中一大重點(diǎn)考慮對(duì)象。目前的自動(dòng)測(cè)試軟件領(lǐng)域競爭激烈,而要想獲得高的市場占有率,那么具有低維護(hù)成本的測(cè)試軟件將占有極大優(yōu)勢(shì)。維護(hù)包括測(cè)試軟件的日常維護(hù)以及測(cè)試軟件的版本更新,其中版本更新維護(hù)是維護(hù)重點(diǎn)。隨著軟件開發(fā)的深入,軟件自動(dòng)化測(cè)試需要緊跟開發(fā)者的步伐,當(dāng)測(cè)試軟件無法滿足測(cè)試需要時(shí),那么自動(dòng)化軟件將會(huì)逐漸丟棄淘汰。所以,保持更新步伐是需要重點(diǎn)考慮的。
3.2.2 可測(cè)性
可測(cè)性就是自動(dòng)化測(cè)試對(duì)被測(cè)軟件的測(cè)試是否有效。所以,為了保證軟件的可測(cè)性,設(shè)計(jì)時(shí)應(yīng)當(dāng)使用擁有:CLI、API與GUI接口的測(cè)試軟件。
4 自動(dòng)化測(cè)試與人工測(cè)試對(duì)比
自動(dòng)化測(cè)試與人工軟件測(cè)試,其區(qū)別只是測(cè)試方式不同而已。從以上文章分析可以知曉自動(dòng)化軟件測(cè)試其優(yōu)點(diǎn)突出,但不足之處也是顯而易見。
自動(dòng)化測(cè)試其根本性目的是將以往人工測(cè)試的過程精簡化、程序化和標(biāo)準(zhǔn)化。在一定程度上可以代替人工進(jìn)行軟件測(cè)試。自動(dòng)化測(cè)試的優(yōu)點(diǎn)在于:自動(dòng)化軟件測(cè)試可以按照軟件測(cè)試需要進(jìn)行相應(yīng)程序修改,然后利用符合測(cè)試需求的測(cè)試程序進(jìn)行測(cè)試,在這過程中,相對(duì)簡單的測(cè)試部分可以依靠人工測(cè)試,對(duì)于那些有重復(fù)性,測(cè)試過程嚴(yán)謹(jǐn)?shù)臏y(cè)試部分則可以利用自動(dòng)化測(cè)試,達(dá)到測(cè)試目的。綜上,可以對(duì)軟件自動(dòng)化測(cè)試與人工測(cè)試進(jìn)行一個(gè)對(duì)比,首先是人工測(cè)試:
人工測(cè)試是一開始就使用的測(cè)試方式,人工測(cè)試需要測(cè)試人員有豐富的測(cè)試經(jīng)驗(yàn)。對(duì)于相對(duì)簡單的測(cè)試目標(biāo)具有速度快,效率高的特點(diǎn)。尤其是在相關(guān)的人機(jī)交互測(cè)試這類靈活度較高,測(cè)試過程不可控的測(cè)試目標(biāo),人工測(cè)試具有快速反應(yīng),測(cè)試靈活等特點(diǎn)。相應(yīng)的,人工測(cè)試也存在很大的弊端,人工測(cè)試人員受精力與時(shí)間限制,對(duì)于那些時(shí)間短、測(cè)試過程程序化與復(fù)雜化的測(cè)試目標(biāo),人工測(cè)試就需要耗費(fèi)大量時(shí)間與人力資源來完成。這也導(dǎo)致了測(cè)試成本提高,效率低下。
軟件自動(dòng)化測(cè)試與人工測(cè)試相比,自動(dòng)化測(cè)試是按照測(cè)試程序?qū)Ρ粶y(cè)目標(biāo)進(jìn)行測(cè)試。所以對(duì)于那些重復(fù)性測(cè)試具有高效,測(cè)試過程嚴(yán)謹(jǐn)?shù)奶攸c(diǎn)。其所具備的強(qiáng)大數(shù)據(jù)處理能力對(duì)于那些測(cè)試過程中需要進(jìn)行大量數(shù)據(jù)處理運(yùn)算的測(cè)試任務(wù)具有高效的完成性。但其缺點(diǎn)也是明顯的,對(duì)于那些需要進(jìn)行實(shí)時(shí)交互的測(cè)試目標(biāo)來說,自動(dòng)化測(cè)試的固定測(cè)試程序是無法勝任的。
綜上分析可以看出,人工測(cè)試與自動(dòng)化測(cè)試之間有著明顯優(yōu)缺點(diǎn),但兩者也具有良好的互補(bǔ)性,所以合理搭配這兩種測(cè)試方式,將會(huì)極大提高測(cè)試任務(wù)的完成效率,有效降低測(cè)試成本與人工測(cè)試資源。
5 結(jié)束語
本文從軟件自動(dòng)化測(cè)試的意義到應(yīng)用進(jìn)行了簡單討論分析,從各方面對(duì)比來看,軟件自動(dòng)化測(cè)試在軟件測(cè)試行業(yè)中占有重要地位,在未來的發(fā)展中,應(yīng)當(dāng)加大對(duì)自動(dòng)化測(cè)試的研究力度。讓自動(dòng)化測(cè)試?yán)^續(xù)發(fā)揮更大的作用。
參考文獻(xiàn)
[1]應(yīng)杭.軟件自動(dòng)化測(cè)試技術(shù)及應(yīng)用研究[D]
[2]劉艷霞.軟件自動(dòng)化測(cè)試技術(shù)應(yīng)用研究[J]軟件導(dǎo)刊.2007,5:36-38
[3]蔡志賢.軟件自動(dòng)化測(cè)試的研究與實(shí)踐[D]
[4]陳曉.軟件自動(dòng)化測(cè)試的分析與實(shí)踐[J]計(jì)算機(jī)科學(xué).2008.35(4):282-322
[5]季淑引.軟件自動(dòng)化測(cè)試工具的應(yīng)用研究[J]科技向?qū)?2012.20:59
[6]陳哲.軟件自動(dòng)化測(cè)試系統(tǒng)的研究與實(shí)現(xiàn)[D]
作者簡介
張維利(1978-),男,山東省人。碩士學(xué)歷。主要研究方向?yàn)樾畔⑾到y(tǒng)軟件測(cè)試、軟件可靠性等。
篇7
本文分析了虛擬儀器的特點(diǎn),將模塊化設(shè)計(jì)思想引入到虛擬儀器的設(shè)計(jì)中,把分散、獨(dú)立的傳統(tǒng)儀器整合起來,設(shè)計(jì)出了滿足現(xiàn)有產(chǎn)品需求的液晶顯示器主板自動(dòng)化測(cè)試系統(tǒng)。
【關(guān)鍵詞】液晶顯示器 自動(dòng)化測(cè)試 虛擬儀器 儀器控制
隨著現(xiàn)代科學(xué)技術(shù)和現(xiàn)代工業(yè)生產(chǎn)的發(fā)展,對(duì)電子類產(chǎn)品測(cè)量和儀器技術(shù)的要求越來越高,測(cè)試對(duì)象和測(cè)試內(nèi)容日益復(fù)雜,測(cè)試工作量與日俱增,對(duì)測(cè)試速度和測(cè)試精度的要求也不斷提高,這使得傳統(tǒng)的人工測(cè)試已經(jīng)不適應(yīng)甚至不能滿足實(shí)際測(cè)試的需求。因此,自動(dòng)化測(cè)試技術(shù)成為了測(cè)控領(lǐng)域的重要發(fā)展方向之一。
1 國內(nèi)外市場狀況
自動(dòng)化測(cè)試系統(tǒng)的研制工作最早可追溯到20世紀(jì)50年代,美國為解決軍方在軍用電子設(shè)備維護(hù)中遇到的問題而開展了SETE計(jì)劃?,F(xiàn)代測(cè)試內(nèi)容日益復(fù)雜, 測(cè)試工作量激增,而且要求完成測(cè)試的時(shí)間越來越短,人工測(cè)試很難滿足這些要求,自動(dòng)化測(cè)試技術(shù)因而得到迅速發(fā)展。較完善的自動(dòng)化測(cè)試設(shè)備是 60 年代采用電子計(jì)算機(jī)以后才問世的。
自動(dòng)化測(cè)試設(shè)備的發(fā)展經(jīng)歷了三個(gè)階段:
(1)采用專用測(cè)試系統(tǒng):這種測(cè)試主要用于小型化的工業(yè)測(cè)試,但不管是在接口上還是總線上,都沒有任何標(biāo)準(zhǔn)可言,因此也談不上通用性。
(2)臺(tái)式儀器積木型測(cè)試系統(tǒng):采用標(biāo)準(zhǔn)化通用接口母線(GPIB)連接有關(guān)設(shè)備,系統(tǒng)中各組成部分均配標(biāo)準(zhǔn)化接口功能,用統(tǒng)一的無源母線電纜連接起來。不需要自行設(shè)計(jì)接口,可靈活地更改、增刪測(cè)試內(nèi)容。計(jì)算機(jī)主要承擔(dān)系統(tǒng)的控制、計(jì)算和數(shù)據(jù)處理任務(wù),基本上是模擬人工測(cè)試的過程,尚不能充分發(fā)揮計(jì)算機(jī)的功能。
(3)智能化測(cè)試系統(tǒng):將計(jì)算機(jī)與測(cè)試設(shè)備融為一體,用計(jì)算機(jī)軟件代替?zhèn)鹘y(tǒng)設(shè)備中某些硬件的功能,能用計(jì)算機(jī)產(chǎn)生激勵(lì),完成測(cè)試功能,生成測(cè)試程序。
2 研究內(nèi)容
基于以上探索,本文將深入研究以下幾個(gè)問題:
2.1 測(cè)試系統(tǒng)總體模型設(shè)計(jì)
將虛擬儀器與傳統(tǒng)儀器的特點(diǎn)做對(duì)比,找出虛擬儀器在液晶顯示器主板測(cè)試方面的優(yōu)勢(shì),把模塊化設(shè)計(jì)思想引入到虛擬儀器的開發(fā)中,綜合分析現(xiàn)有的硬件測(cè)試表單,設(shè)計(jì)、抽象出一種能滿足現(xiàn)有測(cè)試要求的設(shè)計(jì)模型。
2.2 多功能測(cè)試系統(tǒng)平臺(tái)搭建
在研究傳統(tǒng)儀器功能和操作基礎(chǔ)上,將分散的、獨(dú)立的、具有單一功能的傳統(tǒng)儀器,用獨(dú)立總線技術(shù)與計(jì)算機(jī)通訊接口建立連接,使單個(gè)儀器成為整個(gè)總線上的一個(gè)結(jié)點(diǎn),從而搭建成一個(gè)符合目前液晶顯示器主板測(cè)試要求的多功能自動(dòng)化測(cè)試系統(tǒng)。
2.3 系統(tǒng)總體調(diào)試和改進(jìn)
在完成液晶顯示器主板測(cè)試系統(tǒng)平臺(tái)搭建后,在LabVIEW平臺(tái)上對(duì)整合后的虛擬儀器軟件系統(tǒng)進(jìn)行測(cè)試,發(fā)現(xiàn)并修改其中的錯(cuò)誤,直到其能正常無誤地運(yùn)行。最后,再將自動(dòng)化測(cè)試的結(jié)果與傳統(tǒng)儀器測(cè)試結(jié)果進(jìn)行比對(duì),進(jìn)而對(duì)測(cè)試系統(tǒng)進(jìn)行修正和改進(jìn)。
2.4 測(cè)試數(shù)據(jù)智能處理
儀器直接采集到的測(cè)試數(shù)據(jù),常常由于外界干擾造成數(shù)據(jù)不準(zhǔn)確,或是單次抓到的數(shù)據(jù)不具有代表性,而造成得到的數(shù)據(jù)無效,不能滿足實(shí)際產(chǎn)品需要。為了過濾這些無效的測(cè)試數(shù)據(jù),需要用其它手段對(duì)測(cè)試的數(shù)據(jù)進(jìn)行智能處理,生成有效數(shù)據(jù),再將測(cè)試的數(shù)據(jù)處理并寫入電子表格文件,生成測(cè)試報(bào)告。
3 技術(shù)路線
本課題的基本思路為:根據(jù)目前液晶顯示器主板測(cè)試要求和現(xiàn)有的測(cè)試表單,擬定系統(tǒng)需求方案書,抽象出系統(tǒng)總體模型。再選擇合適的總線和PC機(jī),搭建硬件通訊平臺(tái),實(shí)現(xiàn)對(duì)儀器的控制,然后設(shè)計(jì)自動(dòng)化測(cè)試軟體前臺(tái)界面和后臺(tái)代碼。最后,將硬件平臺(tái)與軟件系統(tǒng)整合并調(diào)試,從而完成整個(gè)自動(dòng)化測(cè)試系統(tǒng)的設(shè)計(jì)。
本課題可分為三大模塊,分別是TDS-3054示波器及Chroma 2325信號(hào)發(fā)生器控制模塊、液晶顯示器主板自動(dòng)化測(cè)試模塊和測(cè)試數(shù)據(jù)智能處理模塊。系統(tǒng)總體框圖如圖1所示。
4 結(jié)論
通過把虛擬儀器與傳統(tǒng)儀器進(jìn)行優(yōu)缺點(diǎn)對(duì)比,將模塊化設(shè)計(jì)思想引入到虛擬儀器的設(shè)計(jì)中,把分散的、獨(dú)立的傳統(tǒng)儀器整合起來,設(shè)計(jì)并抽象出了滿足現(xiàn)有產(chǎn)品需求的液晶顯示器主板測(cè)試系統(tǒng)模型。利用LabVIEW圖形化編程軟件,在分析并總結(jié)現(xiàn)有產(chǎn)品測(cè)試表單的基礎(chǔ)上,開發(fā)出了符合要求的液晶顯示器主板測(cè)試平臺(tái),包括自動(dòng)化測(cè)試模塊和電子表格報(bào)告生成模塊。
參考文獻(xiàn)
[1]趙潔,張璐,李桃.論虛擬儀器LabVIEW的發(fā)展及應(yīng)用[J].山西電子技術(shù),2011(04):87.
[2]舒梯翔.自動(dòng)化測(cè)試技術(shù)的發(fā)展探討[J]. 宇航計(jì)測(cè)技術(shù),2001,21(3):46-59.
[3]Chen,S.,et al.,Application of virtual instrument technology in temperature control.Journal of Electronic Measurement and Instrument,2004(02): p.1205-1207.25.
[4]傅大梅.液晶顯示驅(qū)動(dòng)方法的探討[J].南京工業(yè)職業(yè)技術(shù)學(xué)報(bào),2003,3(3):27-30.
[5]趙高毅.通用串行總線在虛擬儀器技術(shù)中的應(yīng)用研究[J].遵義師范學(xué)院學(xué)報(bào),2008(0l).
篇8
1提高電氣自動(dòng)化控制設(shè)備可靠性的重要性
目前,隨著社會(huì)的不斷的發(fā)展,工業(yè)生產(chǎn)和人民生活對(duì)電氣產(chǎn)品的可靠性都提出了很高的要求。當(dāng)然,在當(dāng)前日益激烈的市場競爭中,可靠性較高的電氣產(chǎn)品在市場中所占的份額會(huì)有所增加。同時(shí),電氣自動(dòng)化設(shè)備的可靠性較高也會(huì)使得生產(chǎn)出的產(chǎn)品的質(zhì)量較高。事實(shí)上,只有質(zhì)量較好的產(chǎn)品才能在激烈的市場競爭中立于不敗之地。
2電氣自動(dòng)化控制設(shè)備可靠性問題的分析
一般來講,電氣自動(dòng)化控制設(shè)備中存在的一些可靠性的問題都是源于組成電氣控制設(shè)備的相關(guān)的元器件自身的質(zhì)量有關(guān)。近年來,隨著電氣自動(dòng)化的不斷的發(fā)展,元器件生產(chǎn)廠家的數(shù)量也在急劇增長,但是出現(xiàn)在市場上的元器件的質(zhì)量是參差不齊的。因此,在制造電氣自動(dòng)化設(shè)備的過程中,一定要嚴(yán)把元器件的質(zhì)量關(guān)。因?yàn)椋?dāng)前很多的企業(yè)中都存在著很多的管理問題。同時(shí),市場上的惡性競爭也非常激烈,這就使得元器件不能得到企業(yè)的高度重視。因此一些元器件的參數(shù)指標(biāo)的下降和壽命的縮短都對(duì)電氣控制設(shè)備帶來了極大的影響[1]。另外,當(dāng)前電氣設(shè)備可靠性的問題與當(dāng)前電氣設(shè)備使用的環(huán)境和維護(hù)的情況都有很大的關(guān)系。電氣設(shè)備的工作環(huán)境通常都是非常復(fù)雜的,同時(shí)多變的工作環(huán)境對(duì)電氣設(shè)備的影響也是有所不同的。目前,很重要的幾個(gè)因素就是氣候變化和電磁干擾。這樣會(huì)使得元器件的參數(shù)得到改變、損壞,進(jìn)而使得設(shè)備的可靠性受到影響。
3電氣自動(dòng)化控制設(shè)備可靠性的測(cè)試方法
上面我們對(duì)電氣自動(dòng)化設(shè)備可靠性中存在的問題進(jìn)行了分析,因此對(duì)電氣自動(dòng)化控制設(shè)備的可靠性進(jìn)行測(cè)試就顯得非常重要。下面筆者就當(dāng)前比較科學(xué)的電氣設(shè)備測(cè)試方法進(jìn)行闡述:
3.1保證試驗(yàn)法
保證試驗(yàn)法是一種非常常見的電氣設(shè)備可靠性檢測(cè)方法。它指的是在生產(chǎn)產(chǎn)品出廠之前,對(duì)其的一些參數(shù)指標(biāo)進(jìn)行測(cè)試,從而使得電氣設(shè)備能夠正常的使用。電氣自動(dòng)化控制設(shè)備是由很多的器件組成的,因此電氣設(shè)備所出現(xiàn)的故障的種類也是非常多樣的。因此,可以根據(jù)電氣設(shè)備所生產(chǎn)出的產(chǎn)品中存在的不同的問題對(duì)其自身所出現(xiàn)的故障進(jìn)行分析,從而來進(jìn)行檢修和維護(hù)[2]。因此,企業(yè)可以通過保證試驗(yàn)法來對(duì)電氣設(shè)備的可靠性進(jìn)行檢測(cè),從而能夠及時(shí)的發(fā)現(xiàn)其中所存在的問題。
3.2現(xiàn)場測(cè)試法
相對(duì)于前兩種測(cè)試方法,現(xiàn)場測(cè)試的方法的實(shí)用性是非常強(qiáng)的。這種方式是將電氣控制設(shè)備放置于一個(gè)真實(shí)的現(xiàn)場環(huán)境,來進(jìn)行可靠性的測(cè)試。這種方式所得到的數(shù)據(jù)是非??茖W(xué)有效的。通常是可以作為電氣控制設(shè)備可靠性測(cè)試的重要的參考依據(jù)。但是,這種測(cè)試方法對(duì)試驗(yàn)條件或者周圍環(huán)境的要求比較高,對(duì)設(shè)備的質(zhì)量的要求也比較高。因而,現(xiàn)場測(cè)試法的實(shí)現(xiàn)條件也是相對(duì)困難的。
3.3試驗(yàn)室測(cè)試法
試驗(yàn)室測(cè)試法主要指的是在可控制的環(huán)境中進(jìn)行全方位的模擬測(cè)試。這種方式是將需要測(cè)試的設(shè)備放置于模擬環(huán)境中,這樣可以在模擬的環(huán)境中施加各種環(huán)境的壓力,并進(jìn)行數(shù)據(jù)的測(cè)試。這樣就可以獲得一定的科學(xué)的數(shù)據(jù)記錄,并將數(shù)據(jù)在一定的系統(tǒng)中錄入,從而對(duì)數(shù)據(jù)進(jìn)行科學(xué)、準(zhǔn)確的分析,進(jìn)而得到一套比較合理、可靠的參數(shù)體系。這種測(cè)試方法的可控性較強(qiáng),可參考價(jià)值也比較高。但是試驗(yàn)與實(shí)際環(huán)境還是存在著一定的差距的,因此試驗(yàn)成本較高[3]。
4可靠性測(cè)試的建議
在對(duì)電氣設(shè)備可靠性進(jìn)行測(cè)試的過程中會(huì)出現(xiàn)很多的問題,因而在這里我們就這些問題提出一些建議。即相關(guān)的工作者需要選擇質(zhì)量較高的電氣元器件,同時(shí)還需要掌握一定的技術(shù),從而使得電氣設(shè)備的工作環(huán)境比較適宜。另外,為保證器件的可靠性,需要在其應(yīng)用于設(shè)備之前,逐個(gè)進(jìn)行可靠性的測(cè)試。同時(shí),器件的選擇也需要從優(yōu)。除此之外,當(dāng)前在電氣設(shè)備中存在的可靠性偏低的問題大都是由環(huán)境溫度所導(dǎo)致的[4]。通常在電氣設(shè)備運(yùn)行的過程中,會(huì)散出大量的熱量,從而使得環(huán)境的問題提升,進(jìn)而使得設(shè)備工作的適宜環(huán)境溫度超標(biāo),并導(dǎo)致器件的損壞。因此,在電氣設(shè)備工作的過程中,一定要控制好周圍環(huán)境,或者在設(shè)備上安裝散熱器,從而保證電氣設(shè)備的正常的運(yùn)行。
5結(jié)語
篇9
關(guān)鍵詞:OA系統(tǒng);軟件測(cè)試;測(cè)試方法;壓力測(cè)試
中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)25-6025-06
Research on Test Methods of Office Automation System
LI Zhu, JIANG Pan, LI Zhen-wei, DENG Hai-kang
(Office Automation Systems Management Office,Chongqing Jiaotong University, Chongqing 400074, China)
Abstract: With the popularization of computer, office automation system (OA system) development, obtained the widespread application in the organs, enterprises and institutions and other industries. However, due to high demand, the development of the office automation system function, the design and programming of OA system becomes more and more complex. The complexity of OA system design and make OA system testing more cumbersome and inefficient, so, how to achieve rapid, effective test of OA system has become an urgent problem to solve. Based on the OA system of Chongqing Jiao tong University as an example, the use of functional testing, conducted a comprehensive test of the system for 5 kinds of test methods for testing, security testing, reliability testing and stress testing, and achieved good results.
Key words: Office automation system; software test; test method; Stress test
1 概述
隨著計(jì)算機(jī)及網(wǎng)絡(luò)的迅速發(fā)展,人們?yōu)樘岣咿k公效率,減少經(jīng)費(fèi)開支,開始尋求一種網(wǎng)上辦公方式,辦公自動(dòng)化系統(tǒng)在此背景下應(yīng)運(yùn)而生。重慶交通大學(xué)辦公自動(dòng)化系統(tǒng)的開發(fā)成功為學(xué)校實(shí)現(xiàn)雙校區(qū)協(xié)同運(yùn)行、節(jié)約辦公成本、提高辦公效率做出了巨大貢獻(xiàn)。
然而,由于軟件系統(tǒng)規(guī)模和復(fù)雜程度的增加,使得OA系統(tǒng)規(guī)模巨大,編程復(fù)雜,為實(shí)現(xiàn)對(duì)辦公自動(dòng)化系統(tǒng)改進(jìn),快速有效的OA系統(tǒng)軟件測(cè)試就成為重中之重。該文以重慶交通大學(xué)OA系統(tǒng)為例,通過功能測(cè)試、安全性測(cè)試、易用性測(cè)試、可靠性測(cè)試和壓力測(cè)試5種方法實(shí)現(xiàn)對(duì)該系統(tǒng)的測(cè)試,測(cè)試結(jié)果表明,以上測(cè)試快速、有效,能夠?yàn)镺A系統(tǒng)的進(jìn)一步改進(jìn)提供依據(jù)。
2 OA系統(tǒng)概述
2.1 OA系統(tǒng)的概念及作用
辦公自動(dòng)化系統(tǒng)是利用技術(shù)的手段提高辦公的效率,進(jìn)而實(shí)現(xiàn)辦公自動(dòng)化處理的系統(tǒng)。它采用Internet/Intranet技術(shù),基于工作流的概念,使用戶方便快捷地共享信息,高效地協(xié)同工作;改變過去復(fù)雜、低效的手工辦公方式,實(shí)現(xiàn)迅速、全方位的信息采集、信息處理,為單位的管理和決策提供科學(xué)的依據(jù)。
2.2 重慶交通大學(xué)辦公自動(dòng)化系統(tǒng)簡介
重慶交通大學(xué)辦公自動(dòng)化系統(tǒng)(以下簡稱OA系統(tǒng))是覆蓋校屬各單位的辦公信息管理系統(tǒng)。該系統(tǒng)是學(xué)校信息化建設(shè)與管理工作的重要組成部分,是實(shí)現(xiàn)網(wǎng)上辦公和信息資源共享,提高工作效率和管理水平的必要手段。
2.2.1 系統(tǒng)結(jié)構(gòu)及組成
學(xué)校OA系統(tǒng)采用B/S結(jié)構(gòu)。所有辦公數(shù)據(jù),如公文、通知公告等信息均存放在服務(wù)器上。用戶通過瀏覽器登錄系統(tǒng),進(jìn)行相關(guān)事務(wù)的辦理,公文的運(yùn)轉(zhuǎn),文件、通知的查閱等操作。學(xué)校OA系統(tǒng)包括:待辦事務(wù)、日常辦公、網(wǎng)上審批、通知管理、信息、個(gè)人助理和系統(tǒng)維護(hù)七個(gè)部分。
2.2.2 黨政發(fā)文和校內(nèi)來文運(yùn)轉(zhuǎn)流程
黨政發(fā)文是學(xué)校黨委發(fā)文、行政發(fā)文和黨政辦公室發(fā)文的合稱,三種發(fā)文方式運(yùn)轉(zhuǎn)流程大體一致,一個(gè)正常的黨政發(fā)文運(yùn)轉(zhuǎn)流程見圖1。
校內(nèi)來文是指校內(nèi)運(yùn)轉(zhuǎn)的各種請(qǐng)示、報(bào)告等。校內(nèi)請(qǐng)示用于學(xué)校各職能部門、學(xué)院、直屬單位等二級(jí)單位向?qū)W校請(qǐng)示解決有關(guān)問題;校內(nèi)報(bào)告用于以上單位向?qū)W校告知有關(guān)事項(xiàng)、事件。校內(nèi)來文中請(qǐng)示一般要給出批復(fù)意見,報(bào)告要給出回復(fù)意見,具體流程見圖2。
3 軟件測(cè)試方法
3.1 軟件測(cè)試概述
3.1.1 軟件測(cè)試的定義及目的
軟件測(cè)試是在規(guī)定的條件下對(duì)程序進(jìn)行操作,以發(fā)現(xiàn)程序錯(cuò)誤,衡量軟件質(zhì)量,并對(duì)其是否能滿足設(shè)計(jì)要求進(jìn)行評(píng)估的過程,是使用人工或者自動(dòng)手段來運(yùn)行或測(cè)試某個(gè)系統(tǒng)的過程,其目的在于檢驗(yàn)它是否滿足規(guī)定的需求或弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別。
3.1.2 軟件測(cè)試的原則
軟件測(cè)試的原則主要包含七個(gè)方面:1) 盡可能早的測(cè)試;2) 軟件測(cè)試應(yīng)由第三方進(jìn)行測(cè)試;3) 測(cè)試時(shí)要考慮全面,要盡量做到測(cè)試的全覆蓋,并要考慮一些嚴(yán)格狀況;4) 要特別注意測(cè)試中的群集現(xiàn)象;5) 當(dāng)測(cè)試發(fā)現(xiàn)錯(cuò)誤時(shí),需要進(jìn)一步進(jìn)行確認(rèn);6) 為以后系統(tǒng)維護(hù)方便,要妥善保管測(cè)試資料;7) 測(cè)試要具有指導(dǎo)性,制定嚴(yán)格的測(cè)試計(jì)劃,同時(shí)要保證測(cè)試的時(shí)間。
3.1.3 軟件測(cè)試的目標(biāo)
軟件測(cè)試的目標(biāo)包括:(1) 發(fā)現(xiàn)一些可以通過測(cè)試避免的開發(fā)風(fēng)險(xiǎn)。2) 實(shí)施測(cè)試來降低所發(fā)現(xiàn)的風(fēng)險(xiǎn)。3) 確定測(cè)試何時(shí)可以結(jié)束。4) 在開發(fā)項(xiàng)目的過程中將測(cè)試看作是一個(gè)標(biāo)準(zhǔn)項(xiàng)目。
3.2 OA系統(tǒng)的測(cè)試方案及要求
3.2.1 OA系統(tǒng)測(cè)試方案設(shè)計(jì)
下面我們就針對(duì) OA系統(tǒng)的特點(diǎn)從五個(gè)方面開展測(cè)試方案設(shè)計(jì):功能測(cè)試、易用性測(cè)試[1]、安全性測(cè)試、可靠性測(cè)試和壓力測(cè)試。
3.2.2 OA系統(tǒng)測(cè)試要求
1) 只有企事業(yè)單位自身應(yīng)用人員最熟悉辦公需求,因此專業(yè)設(shè)計(jì)人員在做測(cè)試設(shè)計(jì)之前需要充分和最終使用人員做好交流,以便真正能代表客戶驗(yàn)收;其次,最好由本單位使用人員來進(jìn)行測(cè)試執(zhí)行,專業(yè)的測(cè)試人員在旁觀察。
2) 辦公 OA 系統(tǒng)自動(dòng)化測(cè)試需要盡早考慮,需要在軟件需求分析階段就考慮好自動(dòng)化測(cè)試需求??紤]到辦公 OA系統(tǒng)各工作流相對(duì)獨(dú)立,建議采用敏捷開發(fā)和測(cè)試流程,每迭代交付一個(gè)工作流。
4 重慶交通大學(xué)OA系統(tǒng)測(cè)試研究
4.1 功能測(cè)試
功能測(cè)試也叫黑盒測(cè)試,它不需要考慮整個(gè)軟件的內(nèi)部結(jié)構(gòu)及代碼,而是只需考慮軟件的各個(gè)功能。
4.1.1 單功能驗(yàn)證
以重慶交通大學(xué)OA系統(tǒng)系統(tǒng)登錄為例,編寫測(cè)試用例。如要進(jìn)入該系統(tǒng),需輸入用戶名和密碼,只有當(dāng)用戶名和密碼都正確時(shí),才可登錄;當(dāng)用戶名或密碼之一出現(xiàn)錯(cuò)誤時(shí),禁止用戶登錄[2]。
4.1.3 功能間交互驗(yàn)證
功能間交互驗(yàn)證是指當(dāng)單功能點(diǎn)出現(xiàn)交互操作時(shí),實(shí)現(xiàn)對(duì)系統(tǒng)功能的驗(yàn)證。
4.2 易用性測(cè)試
重慶交通大學(xué)OA系統(tǒng)使用人員為校領(lǐng)導(dǎo)、各部門中層領(lǐng)導(dǎo)干部和各單位辦公室主任,因此,易用性測(cè)試主要在以上人員間開展。
4.2.1 校領(lǐng)導(dǎo)賬戶易用性測(cè)試
由于校領(lǐng)導(dǎo)平時(shí)工作繁忙,且要求較高,因此,校領(lǐng)導(dǎo)測(cè)試需要安排開發(fā)公司人員及辦公室人員陪同測(cè)試,由開發(fā)公司人員講解示范,校領(lǐng)導(dǎo)親手操作,黨政辦人員配合。當(dāng)場提出修改意見,由黨政辦人員和開發(fā)公司人員記錄,然后修改。直到校領(lǐng)導(dǎo)滿意為止[4]。
4.2.2 處級(jí)領(lǐng)導(dǎo)干部賬戶易用性測(cè)試
處級(jí)領(lǐng)導(dǎo)干部賬戶易用性測(cè)試主要由校黨政辦人員進(jìn)行當(dāng)面指導(dǎo),由處級(jí)領(lǐng)導(dǎo)干部親自操作,然后將使用感受及修改建議記錄,再送開發(fā)公司進(jìn)行修改。
4.2.3 各部門OA秘書賬戶易用性測(cè)試
該部分主要測(cè)試由校黨政辦組織聯(lián)系開發(fā)公司人員對(duì)各部門OA秘書進(jìn)行集中培訓(xùn),培訓(xùn)過程中接受部門OA秘書提出的建議;由于培訓(xùn)人員較多,且不能親手操作,因此,在培訓(xùn)后,再由黨政辦人員對(duì)有疑問人員進(jìn)行再次講解。查找易用性問題及建議,收集后送開發(fā)公司修改完善。
4.3 安全性測(cè)試
鑒于OA系統(tǒng)中運(yùn)轉(zhuǎn)的公文都具有較高的安全性要求,因此如何保證OA系統(tǒng)安全就成為一個(gè)關(guān)鍵。安全性保證主要有兩個(gè)方面:網(wǎng)絡(luò)安全和賬戶安全,我校OA系統(tǒng)安全主要通過以下方法來保證:
4.3.1 網(wǎng)絡(luò)安全測(cè)試
網(wǎng)絡(luò)安全測(cè)試方法主要采用:(1)TCP和UDP連接測(cè)試:netstat (2)網(wǎng)絡(luò)鄰居信息探測(cè)工具:nbtstat (3)網(wǎng)絡(luò)主機(jī)掃描:HostScan (4)漏洞檢測(cè):X-Scan (5)端口監(jiān)控工具:Port Reporter五種方法進(jìn)行測(cè)試。
經(jīng)測(cè)試,我校OA系統(tǒng)網(wǎng)絡(luò)存在部分端口未屏蔽,存在安全隱患;其他方面的問題基本可以避免,系統(tǒng)采用了以下三種方法網(wǎng)絡(luò)安全防范手段:
1) 設(shè)置IP地址限定。鑒于OA系統(tǒng)用戶基本都是在上班時(shí)間進(jìn)行OA系統(tǒng)訪問,因此,可以設(shè)置IP地址限定,非限定IP地址無法進(jìn)行訪問,保證系統(tǒng)用戶均為設(shè)定用戶。
2) 加裝軟件防火墻。鑒于ESET NOD32防病毒軟件和360安全衛(wèi)士在OA系統(tǒng)防護(hù)方面和木馬查殺方面的優(yōu)秀表現(xiàn),因此使用該軟件自帶防火墻和360防火墻相配合方式,對(duì)出入站通信規(guī)則進(jìn)行設(shè)定,避免了非法數(shù)據(jù)的進(jìn)入。
3) 邀請(qǐng)網(wǎng)絡(luò)安全專家對(duì)學(xué)校OA系統(tǒng)服務(wù)器網(wǎng)絡(luò)進(jìn)行檢測(cè),查找安全漏洞,修改組策略,保證系統(tǒng)網(wǎng)絡(luò)安全。
4.3.2 賬戶安全測(cè)試
賬戶安全測(cè)試主要采用病毒植入、盜號(hào)木馬、遠(yuǎn)程控制等方式進(jìn)行破壞性測(cè)試,測(cè)試結(jié)果表明:除非系統(tǒng)內(nèi)部人員刻意破壞,否則基本可以保證賬戶安全。我校OA系統(tǒng)采用了如下方法:
1) 由于系統(tǒng)使用初期所有人員的密碼均為統(tǒng)一初始密碼,因此督促系統(tǒng)所有使用人員對(duì)密碼進(jìn)行修改。且下發(fā)文件要求所有使用人員妥善保管用戶名及密碼并不定時(shí)修改,以避免用戶名和密碼遺失。
2) 在系統(tǒng)管理員賬戶中,對(duì)用戶登錄使用情況進(jìn)行監(jiān)控,若出現(xiàn)下班時(shí)間登錄或者頻繁操作者,則聯(lián)系相關(guān)人員進(jìn)行確認(rèn),保證安全。
3) 邀請(qǐng)計(jì)算機(jī)安全專家對(duì)系統(tǒng)賬戶安全進(jìn)行檢測(cè),出具安全報(bào)告,保證用戶賬戶的安全穩(wěn)定。
4.4 可靠性測(cè)試
4.4.1 工作流中斷
在系統(tǒng)使用過程中,經(jīng)常出現(xiàn)工作流中斷場景,為保證各種流程的正常流轉(zhuǎn),避免流程錯(cuò)誤或中斷,在充分調(diào)研的基礎(chǔ)上,重慶交通大學(xué)OA系統(tǒng)采用E2Q Studio設(shè)計(jì)器,對(duì)流程進(jìn)行跟蹤,隨時(shí)可根據(jù)需要對(duì)流程進(jìn)行更改,保證了工作流的順利運(yùn)轉(zhuǎn)。
4.4.2 硬件異常
硬件異常主要表現(xiàn)為網(wǎng)絡(luò)中斷、服務(wù)器斷電等,如何服務(wù)器在硬件異常時(shí),保證系統(tǒng)及時(shí)恢復(fù)。
1) 當(dāng)出現(xiàn)網(wǎng)絡(luò)中斷時(shí),采用編程方式,在服務(wù)器使用ping命令檢測(cè)網(wǎng)絡(luò),當(dāng)網(wǎng)絡(luò)出現(xiàn)中斷時(shí),服務(wù)器自動(dòng)重啟,保證系統(tǒng)運(yùn)轉(zhuǎn)正常
2) 當(dāng)出現(xiàn)服務(wù)器斷電時(shí),及時(shí)檢測(cè)斷電點(diǎn),請(qǐng)后勤能源科及時(shí)修復(fù)。
4.4.3 數(shù)據(jù)可靠性測(cè)試
經(jīng)測(cè)試,該系統(tǒng)為保證數(shù)據(jù)可靠性,采用了以下兩種機(jī)制:1) 定時(shí)數(shù)據(jù)備份機(jī)制,在系統(tǒng)中編程實(shí)現(xiàn)Oracle數(shù)據(jù)自動(dòng)備份機(jī)制,每一個(gè)小時(shí)數(shù)據(jù)自動(dòng)備份一次,保證系統(tǒng)數(shù)據(jù)隨時(shí)在最新狀態(tài)。2) 異地備份機(jī)制,數(shù)據(jù)備份后,將數(shù)據(jù)傳送到系統(tǒng)管理員計(jì)算機(jī),進(jìn)行異地備份,中午和晚上各一次,當(dāng)OA系統(tǒng)服務(wù)器出現(xiàn)崩潰或數(shù)據(jù)丟失時(shí),也可保證系統(tǒng)恢復(fù)后,數(shù)據(jù)在最新狀態(tài)。
4.5 壓力測(cè)試
本次采用MI公司的專業(yè)壓力測(cè)試工具LoadRunner 11,采用錄制\回放的方法,即首先錄制系統(tǒng)用戶并發(fā)登錄,然后采用多線程的方式模擬大量客戶端向服務(wù)器方發(fā)送登錄請(qǐng)求,達(dá)到壓力測(cè)試的目的。
4.5.1 測(cè)試場景
表3
4.5.2 測(cè)試環(huán)境
服務(wù)器是一臺(tái)曙光服務(wù)器,安裝的軟件包括Tomcat 6.0 ,JAVA,Oracle 10g,使用2個(gè)筆記本模擬客戶端發(fā)出請(qǐng)求。
5 結(jié)束語
本文首先介紹OA系統(tǒng)的基本概念,然后對(duì)重慶交通大學(xué)OA系統(tǒng)進(jìn)行了簡要論述,分析了OA系統(tǒng)測(cè)試方案及要求,然后根據(jù)上述方案,然后通過功能測(cè)試、易用性測(cè)試、安全性測(cè)試、可靠性測(cè)試和壓力測(cè)試5種測(cè)試方法對(duì)重慶交通大學(xué)OA系統(tǒng)進(jìn)行了測(cè)試,實(shí)踐表明,以上測(cè)試結(jié)果快速有效,是OA系統(tǒng)測(cè)試提出的一種探索。然后限于OA系統(tǒng)規(guī)模巨大、編程復(fù)雜,因此,測(cè)試難免有一定的局限性,不可能形成一種通用測(cè)試方法。
參考文獻(xiàn):
[1] 余麗萍,熊偉.淺析辦公自動(dòng)化系統(tǒng)(OA)的測(cè)試[J].信息化建設(shè),2012(5).
[2] 范志琰.某公司OA系統(tǒng)的設(shè)計(jì)與測(cè)試[D]. 北京:北京郵電大學(xué).2011
篇10
>> 基于Web的自動(dòng)化測(cè)試框架研究 基于Selenium 的Web自動(dòng)化測(cè)試框架 Web自動(dòng)化測(cè)試框架的研究 PhantomJS在Web自動(dòng)化測(cè)試中的應(yīng)用 通過Selenium實(shí)現(xiàn)Web自動(dòng)化測(cè)試的研究 基于Flex的自動(dòng)化測(cè)試框架 軟件測(cè)試技術(shù)與自動(dòng)化測(cè)試框架模型的研究與應(yīng)用 基于RFT的企業(yè)自動(dòng)化測(cè)試框架的構(gòu)建和應(yīng)用 結(jié)合Robot框架的Web Driver自動(dòng)化測(cè)試解決方案 基于Java反射的APP自動(dòng)化混合測(cè)試框架的研究與實(shí)現(xiàn) 自動(dòng)化測(cè)試框架:自己的框架 基于WEB結(jié)構(gòu)自動(dòng)化的嵌入式測(cè)試平臺(tái)設(shè)計(jì) 基于JAVA的測(cè)試自動(dòng)化設(shè)計(jì)應(yīng)用 基于Smart的頁面自動(dòng)化測(cè)試的研究 基于Python的軟件測(cè)試自動(dòng)化平臺(tái)研究 基于AutoVue的自動(dòng)化測(cè)試框架設(shè)計(jì)與實(shí)現(xiàn) 基于關(guān)鍵字的自動(dòng)化軟件測(cè)試框架設(shè)計(jì) 基于U盤升級(jí)在自動(dòng)化測(cè)試系統(tǒng)中的研究及應(yīng)用 基于業(yè)務(wù)流程的SG―ERP自動(dòng)化測(cè)試技術(shù)研究與應(yīng)用 基于Appium的手機(jī)應(yīng)用程序自動(dòng)化測(cè)試研究 常見問題解答 當(dāng)前所在位置:
[4]STAX Services User’s Guide,IBN Inc.
http:///current/staxug.pdf
[5]http:///
[6]Vincent Massol著,鮑志云譯.JUnit in Action[M].電子工業(yè)出版社,2004,11
[7]Giovanni Denaro,Andrea Polini,and Wolfgang Emmerich Performance Testing of Distributed Component Architectures.
/articles/2004
[8]Mark Fewster,Dorothy Graham.軟件測(cè)試自動(dòng)化技術(shù)[M].北京:機(jī)械工業(yè)出版社
[9]Daniel Hofman."Boundary Values ang Automated Component Testing"Softw.Test Verif Relia b.9.3-26(1999)
熱門標(biāo)簽
自動(dòng)化技術(shù)論文 自動(dòng)化控制論文 自動(dòng)化論文 自動(dòng)識(shí)別 自動(dòng)化 自動(dòng)控制 自動(dòng)檢測(cè)論文 自動(dòng)化科技 自動(dòng)報(bào)警 自動(dòng)化設(shè)備 女醫(yī)教育 女學(xué)生 女職員 女中學(xué)生
相關(guān)文章
1列車自動(dòng)監(jiān)控系統(tǒng)主備中心設(shè)計(jì)分析
2推進(jìn)鄉(xiāng)鎮(zhèn)農(nóng)業(yè)機(jī)械自動(dòng)化發(fā)展探討
3鐵路卷鋼托架自動(dòng)化吊具設(shè)計(jì)探討
4自動(dòng)化機(jī)械制造數(shù)控技術(shù)探討