專利名稱:Web應(yīng)用軟件的交互界面測試系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及軟件測試技術(shù),尤其涉及Web應(yīng)用軟件的交互界面測試系統(tǒng)。
背景技術(shù):
隨著Internet的普及,計(jì)算機(jī)及網(wǎng)絡(luò)技術(shù)的日益發(fā)展,網(wǎng)站作為一種信息的載 體,已經(jīng)滲透到各個領(lǐng)域,在業(yè)務(wù)管理、電子政務(wù)、電子商務(wù)得到了廣泛應(yīng)用。越來越多的公 司采取了網(wǎng)上電子系統(tǒng)來代替?zhèn)鹘y(tǒng)的紙質(zhì)文檔表格等。無論是企業(yè)還是個人用戶都可以不 受空間、時間的限制,通過互聯(lián)網(wǎng),就可以進(jìn)行業(yè)務(wù)管理和信息服務(wù)。網(wǎng)絡(luò)系統(tǒng)的出現(xiàn),既便 于用戶更方便快速地了解信息,提交信息,又方便了公司管理及掌握信息。目前,基于互聯(lián) 網(wǎng)的網(wǎng)站應(yīng)用已經(jīng)成為企業(yè)、政府和各種機(jī)構(gòu)進(jìn)行服務(wù)延伸和提高服務(wù)質(zhì)量的重要手段。 互聯(lián)網(wǎng)技術(shù)(Internet/Intranet)也在企業(yè)和政府內(nèi)部管理信息系統(tǒng)中廣泛應(yīng)用,如企業(yè) ERP管理系統(tǒng)、辦公自動化系統(tǒng)(OA)以及各種業(yè)務(wù)管理系統(tǒng),提供了企業(yè)內(nèi)部的網(wǎng)站系統(tǒng) 服務(wù)。因此,什么樣的系統(tǒng)能夠滿足不同用戶的需求,怎么能夠保證應(yīng)用系統(tǒng)的質(zhì)量,為 了滿足這樣的需求,網(wǎng)絡(luò)應(yīng)用系統(tǒng)測試也就變得極為重要了。網(wǎng)絡(luò)應(yīng)用系統(tǒng)測試是對一個 系統(tǒng)進(jìn)行分析以及質(zhì)量檢測。作為保障網(wǎng)站質(zhì)量和提高服務(wù)水平的手段和工具,對網(wǎng)絡(luò)的 應(yīng)用程序進(jìn)行測試,從而將任何系統(tǒng)錯誤、故障或安全隱患的發(fā)生降至最低。軟件測試計(jì)劃是做好軟件測試工作的前提。所以在進(jìn)行實(shí)際測試之前,應(yīng)制定良 好的,切實(shí)可行的測試計(jì)劃,并嚴(yán)格執(zhí)行,特別要確定測試策略和測試目標(biāo)。用于進(jìn)行網(wǎng)絡(luò)應(yīng)用測試的一系列測試代碼稱為測試用例,測試用例的設(shè)計(jì)好壞決 定了測試的效率。好的測試用例能夠更多地發(fā)現(xiàn)錯誤,提高程序的可靠性。測試用例除了 檢查程序是否做了它應(yīng)該做的事,還要看程序是否做了它不該做的事。不僅應(yīng)選用合理的 輸入數(shù)據(jù),對于非法的輸入也要設(shè)計(jì)測試用例進(jìn)行測試。測試用例應(yīng)由測試輸入數(shù)據(jù)和與之對應(yīng)的預(yù)期輸出結(jié)果這兩部分組成。測試以前 應(yīng)當(dāng)根據(jù)測試的要求選擇在測試過程中使用的測試用例(Testcase)。測試用例主要用來檢 驗(yàn)程序員編制的程序,因此不但需要測試的輸入數(shù)據(jù),而且需要針對這些輸入數(shù)據(jù)的預(yù)期 輸出結(jié)果。如果對測試輸入數(shù)據(jù)沒有給出預(yù)期的程序輸出結(jié)果,那么就缺少了檢驗(yàn)實(shí)測結(jié) 果的基準(zhǔn),就有可能把一個似是而非的錯誤結(jié)果當(dāng)成正確結(jié)果。在設(shè)計(jì)測試用例時,應(yīng)當(dāng)包括合理的輸入條件和不合理的輸入條件。合理的輸入 條件是指能驗(yàn)證程序正確的輸入條件,而不合理的輸入條件是指異常的,臨界的,可能引起 問題異變的輸入條件。在測試程序時,人們常常傾向于過多地考慮合法的和期望的輸入條 件,以檢查程序是否做了它應(yīng)該做的事情,而忽視了不合法的和預(yù)想不到的輸入條件。事實(shí) 上,軟件在投入運(yùn)行以后,用戶的使用往往不遵循事先的約定,使用了 一些意外的輸入,如 用戶在鍵盤上按錯了鍵或打入了非法的命令。如果開發(fā)的軟件遇到這種情況時不能做出適 當(dāng)?shù)姆磻?yīng),給出相應(yīng)的信息,那么就容易產(chǎn)生故障,輕則給出錯誤的結(jié)果,重則導(dǎo)致軟件失 效。因此,軟件系統(tǒng)處理非法命令的能力也必須在測試時受到檢驗(yàn)。用不合理的輸入條件測試程序時,往往比用合理的輸入條件進(jìn)行測試能發(fā)現(xiàn)更多的錯誤。測試用例的設(shè)計(jì)思想可以基于以下的幾種基本測試方法1)黑盒測試法(black-box testing)黑盒測試,也稱功能測試或數(shù)據(jù)驅(qū)動測試,它不管程序內(nèi)部結(jié)構(gòu)是什么樣的,只從 用戶出發(fā),根據(jù)產(chǎn)品應(yīng)該實(shí)現(xiàn)的實(shí)際功能和已經(jīng)定義厚愛的產(chǎn)品規(guī)格,來驗(yàn)證產(chǎn)品所應(yīng)該 具有的功能是否實(shí)現(xiàn),每個功能是否都能正常使用,是否滿足用戶的要求。在測試時,把程序看做一個不能打開的黑盒子,在完全不考慮程序內(nèi)部結(jié)構(gòu)和內(nèi) 部特性的情況下,測試針對程序接口和用戶界面進(jìn)行測試,只檢查程序功能是否按照需求 規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)而產(chǎn)生正確的輸出信息,并 且保持外部信息(如數(shù)據(jù)庫或文件)的完整性。黑盒測試主要用于發(fā)現(xiàn)以下情況>是否有不正確或遺漏了的功能。>在接口上,能否正確地接受輸入數(shù)據(jù),能否正常的輸出信息。>訪問外部信息是否有錯。>性能上是否滿足要求。>界面是否錯誤,是否不美觀。>初始化和終止錯誤。黑盒測試方法主要用于軟件確認(rèn)測試。其具體方法有等價類劃分,邊界值分析,錯 誤推測法,因果圖等。黑盒測試方法著眼于程序外部結(jié)構(gòu),不考慮內(nèi)部邏輯結(jié)構(gòu),針對軟件界面和軟件 功能進(jìn)行測試。在用黑盒測試時,必須在所有可能的輸入條件和輸出條件中確定測試數(shù)據(jù)。2)回歸測試(regression testing)為保證軟件中新的變化(修改)不會對原有功能的正常使用有影響而進(jìn)行的測 試。也就是說,已經(jīng)滿足用戶需求的功能不應(yīng)該出現(xiàn)任何問題。每當(dāng)軟件缺陷被修改之后, 或者對原有功能進(jìn)行一些調(diào)整和加強(qiáng),或者是在原有版本上增加新功能的時候,都會采用 回歸測試方法,特別是到了開發(fā)周期的最后階段。3)恢復(fù)測試(recovery testing)在系統(tǒng)崩潰,硬件故障,或者其他災(zāi)難發(fā)生之后重新恢復(fù)系統(tǒng)和數(shù)據(jù)的能力測試。4)安全測試測試系統(tǒng)在應(yīng)付非授權(quán)的內(nèi)部、外部訪問,故意損壞時系統(tǒng)防護(hù)能力。5)兼容性測試(compatibility testing)測試在特殊的硬件/軟件/操作系統(tǒng)/網(wǎng)絡(luò)環(huán)境下的軟件表現(xiàn)。6)性能測試(performance testing)也稱為壓力測試(stress testing),用來檢查系統(tǒng)在大負(fù)荷條件下的運(yùn)行情況。 在非正常的巨大負(fù)荷下,某些動作和輸入大量重復(fù),輸入大數(shù),對數(shù)據(jù)庫進(jìn)行非常復(fù)雜的查 詢等(如測試一個網(wǎng)站在不同負(fù)荷情況下的狀況),以確定在什么情況下系統(tǒng)響應(yīng)速度下 降或是出現(xiàn)故障。
發(fā)明內(nèi)容
本發(fā)明提出一種Web應(yīng)用軟件的交互界面測試系統(tǒng),包括交互界面功能組件、用 戶權(quán)限設(shè)置組件、測試用例生成組件。交互界面功能組件,包括邊界值測試模塊,產(chǎn)生合法輸入的邊界值以及非法輸入 值;重置模塊,將交互界面的內(nèi)容恢復(fù)到初始值;移除模塊,移除指定的內(nèi)容;上傳模塊,上 傳指定格式的文件至該交互界面;操作模塊,將對于交互界面的修改保存或者取消對于交 互界面的修改;屬性模塊,設(shè)置交互界面的屬性為只讀或者讀寫中的一種;呈現(xiàn)模塊,呈現(xiàn) 所述交互界面以及指定的內(nèi)容;用戶權(quán)限設(shè)置組件包括管理員級權(quán)限設(shè)置模塊,設(shè)置管理員級別的用戶權(quán)限; 操作員級權(quán)限設(shè)置模塊,設(shè)置高級操作員級別的用戶權(quán)限或者低級操作員級別的用戶權(quán)限 的其中之一;訪客級權(quán)限設(shè)置模塊,設(shè)置高級訪客級別的用戶權(quán)限或者低級訪客級別的用 戶權(quán)限的其中之一;測試用例生成組件選擇用戶權(quán)限設(shè)置組件中的一個模塊,結(jié)合交互界面功能組件 中的一個或多個模塊,產(chǎn)生測試用例。該測試用例生成組件還包括擴(kuò)展接口,通過擴(kuò)展接口導(dǎo)入擴(kuò)展的測試模塊,擴(kuò)展 的測試模塊也用于產(chǎn)生測試用例。通過本發(fā)明的Web應(yīng)用軟件的交互界面測試系統(tǒng),提供了一種既能夠充分考慮到 測試完整性,又具有靈活擴(kuò)展能力的Web應(yīng)用軟件的測試技術(shù)。
圖1揭示了根據(jù)本發(fā)明的Web應(yīng)用軟件的交互界面測試系統(tǒng)的結(jié)構(gòu)框圖。
具體實(shí)施例方式參考圖1所示,本發(fā)明提出了一種Web應(yīng)用軟件的交互界面測試系統(tǒng),包括交互 界面功能組件10、用戶權(quán)限設(shè)置組件20以及測試用例生成組件30。交互界面功能組件10包括邊界值測試模塊11、重置模塊12、移除模塊13、上傳 模塊14、操作模塊15、屬性模塊16、呈現(xiàn)模塊17。邊界值測試模塊11產(chǎn)生合法輸入的邊界 值以及非法輸入值。重置模塊12將交互界面的內(nèi)容恢復(fù)到初始值。移除模塊13移除指定 的內(nèi)容。上傳模塊14上傳指定格式的文件至該交互界面。操作模塊15將對于交互界面的 修改保存或者取消對于交互界面的修改。屬性模塊16設(shè)置交互界面的屬性為只讀或者讀 寫中的一種。呈現(xiàn)模塊17呈現(xiàn)交互界面以及指定的內(nèi)容。用戶權(quán)限設(shè)置組件20包括管理員級權(quán)限設(shè)置模塊21、操作員級權(quán)限設(shè)置模塊 22、訪客級權(quán)限設(shè)置模塊23。管理員級權(quán)限設(shè)置模塊21設(shè)置管理員級別的用戶權(quán)限。操作 員級權(quán)限設(shè)置模塊22設(shè)置高級操作員級別的用戶權(quán)限或者低級操作員級別的用戶權(quán)限的 其中之一。訪客級權(quán)限設(shè)置模塊23設(shè)置高級訪客級別的用戶權(quán)限或者低級訪客級別的用 戶權(quán)限的其中之一。測試用例生成組件30選擇用戶權(quán)限設(shè)置組件中的一個模塊,結(jié)合交互界面功能 組件中的一個或多個模塊,產(chǎn)生測試用例。該測試用例生成組件30還包括擴(kuò)展接口 31,通 過擴(kuò)展接口 31導(dǎo)入擴(kuò)展的測試模塊,擴(kuò)展的測試模塊也用于產(chǎn)生測試用例。
下面介紹由測試用例生成組件30產(chǎn)生的用于測試不同的環(huán)境的測試用例。1)對交互界面中下拉框內(nèi)容的測試用例。測試用例生成組件30選擇用戶權(quán)限設(shè)置組件20中的管理員級權(quán)限設(shè)置模塊21 和操作員級權(quán)限設(shè)置模塊22,結(jié)合交互界面功能組件10中的邊界值測試模塊11、重置模塊 12、移除模塊13、操作模塊15、呈現(xiàn)模塊17。其中操作員級權(quán)限設(shè)置模塊22設(shè)置高級操作 員權(quán)限。該測試用例中包括對于下述內(nèi)容的測試>驗(yàn)證邊界值,必填項(xiàng)以及輸入非法時的錯誤信息。預(yù)期結(jié)果輸入邊界值不出錯,必填項(xiàng)未填和輸入非法值時,系統(tǒng)顯示正確的錯誤 fn息ο>驗(yàn)證重置功能。預(yù)期結(jié)果啟動重置后,該頁上的內(nèi)恢復(fù)到初始值。>驗(yàn)證移除功能。預(yù)期結(jié)果啟動移除后,所選項(xiàng)不再顯示,并被刪除。測試用例生成組件30還通過擴(kuò)展接口 31生成測試用例,完成下述的功能測試。>驗(yàn)證管理員級別的用戶權(quán)限具有添加下拉框中的內(nèi)容的能力。預(yù)期結(jié)果管理員級別的用戶權(quán)限能夠新添加值到下拉框中,并保存成功。該功能 配合操作模塊15和呈現(xiàn)模塊17實(shí)現(xiàn)。>驗(yàn)證管理員級別的用戶權(quán)限具有激活和關(guān)閉下拉框中各項(xiàng)內(nèi)容的能力。預(yù)期結(jié)果管理員級別的用戶權(quán)限可以執(zhí)行對于下拉框中各項(xiàng)內(nèi)容的激活或者關(guān) 閉操作。該功能配合操作模塊15和呈現(xiàn)模塊17實(shí)現(xiàn)。>驗(yàn)證高級操作員級別的用戶權(quán)限能夠?yàn)g覽并且激活由管理員級別的用戶權(quán)限添 加到下拉框中的新內(nèi)容,并且驗(yàn)證高級操作員級別的用戶權(quán)限能夠不能瀏覽由管理員級別 的用戶權(quán)限從下拉框中關(guān)閉的內(nèi)容。預(yù)期結(jié)果高級操作員級別的用戶權(quán)限只能夠?yàn)g覽由管理員級別的用戶權(quán)限添加 到下拉框中的新內(nèi)容、或者被管理員級別的用戶權(quán)限激活的內(nèi)容。該功能配合操作模塊15 和呈現(xiàn)模塊17實(shí)現(xiàn)。2)操作用戶界面的測試用例。測試用例生成組件30選擇用戶權(quán)限設(shè)置組件20中的管理員級權(quán)限設(shè)置模塊21 和操作員級權(quán)限設(shè)置模塊22,結(jié)合交互界面功能組件10中的邊界值測試模塊11、重置模塊 12、移除模塊13、上傳模塊14、操作模塊15、呈現(xiàn)模塊17。其中操作員級權(quán)限設(shè)置模塊22 設(shè)置高級操作員權(quán)限。該測試用例中包括對于下述內(nèi)容的測試>驗(yàn)證邊界值,必填項(xiàng)以及輸入非法時的錯誤信息。預(yù)期結(jié)果輸入邊界值不出錯,必填項(xiàng)未填和輸入非法值時,系統(tǒng)顯示正確的錯誤 fn息ο>驗(yàn)證重置功能。預(yù)期結(jié)果啟動重置后,該頁上的內(nèi)恢復(fù)到初始值。>驗(yàn)證移除功能。預(yù)期結(jié)果啟動移除后,所選項(xiàng)不再顯示,并被刪除。>驗(yàn)證上傳文件的功能。
預(yù)期結(jié)果選擇指定格式的文件,能上傳成功。測試用例生成組件30還通過擴(kuò)展接口 31生成測試用例,完成下述的功能測試。>驗(yàn)證高級操作員級別的用戶權(quán)限能夠操作交互界面。預(yù)期結(jié)果高級操作員級別的用戶權(quán)限具有提交、保存為草稿、正式保存、修改的 能力。該功能配合操作模塊15和呈現(xiàn)模塊17實(shí)現(xiàn)。>驗(yàn)證頁面中鏈接的功能。預(yù)期結(jié)果啟動鏈接,系統(tǒng)彈出窗口,在彈出窗口中顯示鏈接所指向的網(wǎng)址。該功 能配合呈現(xiàn)模塊17實(shí)現(xiàn)。>驗(yàn)證管理員級別的用戶權(quán)限進(jìn)行查詢時的狀態(tài)顯示。預(yù)期結(jié)果管理員級別的用戶權(quán)限查詢各種狀態(tài)時,狀態(tài)都能顯示正確。該功能配 合呈現(xiàn)模塊17實(shí)現(xiàn)。3)瀏覽交互界面的測試用例。測試用例生成組件30選擇用戶權(quán)限設(shè)置組件20中的管理員級權(quán)限設(shè)置模塊21、 操作員級權(quán)限設(shè)置模塊22、以及訪客級權(quán)限設(shè)置模塊23,結(jié)合交互界面功能組件10中的邊 界值測試模塊11、操作模塊15、屬性模塊16、呈現(xiàn)模塊17。該測試用例中包括對于下述內(nèi) 容的測試>驗(yàn)證邊界值,必填項(xiàng)以及輸入非法時的錯誤信息。預(yù)期結(jié)果輸入邊界值不出錯,必填項(xiàng)未填和輸入非法值時,系統(tǒng)顯示正確的錯誤 fn息ο>驗(yàn)證交互界面的屬性設(shè)置。預(yù)期結(jié)果交互界面屬性設(shè)置為只讀時,進(jìn)入該頁面不能修改任何信息只能查看。 交互界面屬性設(shè)置為讀寫時,能進(jìn)入該頁面,進(jìn)行修改并保存。測試用例生成組件30還通過擴(kuò)展接口 31生成測試用例,完成下述的功能測試。>驗(yàn)證管理員級別的用戶權(quán)限的用戶權(quán)限能夠操作交互界面。預(yù)期結(jié)果管理員級別的用戶權(quán)限具有保存為草稿、接受、拒絕、退回的功能。該功 能配合操作模塊15、屬性模塊16和呈現(xiàn)模塊17實(shí)現(xiàn)。其中,退回操作與一個高級操作員級 別的用戶權(quán)限相關(guān),賦予該高級操作員級別的用戶權(quán)限瀏覽的權(quán)限。拒絕與設(shè)置為只讀屬 性相關(guān)。>驗(yàn)證不同的用戶權(quán)限具有不同的呈現(xiàn)效果。預(yù)期結(jié)果管理員級別的用戶權(quán)限、操作員級別的用戶權(quán)限和訪客級別的用戶權(quán) 限能瀏覽到不同的交互界面。該功能配合呈現(xiàn)模塊17以及用戶權(quán)限設(shè)置組件20中的管理 員級權(quán)限設(shè)置模塊21、操作員級權(quán)限設(shè)置模塊22、以及訪客級權(quán)限設(shè)置模塊23實(shí)現(xiàn)。>驗(yàn)證查詢能力。預(yù)期結(jié)果有符合查詢條件的,則顯示所有符合條件的記錄。無符合條件的,提示 fn息ο通過本發(fā)明的Web應(yīng)用軟件的交互界面測試系統(tǒng),提供了一種既能夠充分考慮到 測試完整性,又具有靈活擴(kuò)展能力的Web應(yīng)用軟件的測試技術(shù)。
權(quán)利要求
1.一種Web應(yīng)用軟件的交互界面測試系統(tǒng),其特征在于,包括 交互界面功能組件,所述交互界面功能組件包括邊界值測試模塊,產(chǎn)生合法輸入的邊界值以及非法輸入值;重置模塊,將交互界面的內(nèi)容恢復(fù)到初始值;移除模塊,移除指定的內(nèi)容;上傳模塊,上傳指定格式的文件至該交互界面;操作模塊,將對于交互界面的修改保存或者取消對于交互界面的修改;屬性模塊,設(shè)置交互界面的屬性為只讀或者讀寫中的一種;呈現(xiàn)模塊,呈現(xiàn)所述交互界面以及指定的內(nèi)容;用戶權(quán)限設(shè)置組件,所述用戶權(quán)限設(shè)置組件包括管理員級權(quán)限設(shè)置模塊,設(shè)置管理員級別的用戶權(quán)限;操作員級權(quán)限設(shè)置模塊,設(shè)置高級操作員級別的用戶權(quán)限或者低級操作員級別的用戶 權(quán)限的其中之一;訪客級權(quán)限設(shè)置模塊,設(shè)置高級訪客級別的用戶權(quán)限或者低級訪客級別的用戶權(quán)限的 其中之一;測試用例生成組件,選擇所述用戶權(quán)限設(shè)置組件中的一個模塊,結(jié)合所述交互界面功 能組件中的一個或多個模塊,產(chǎn)生測試用例。
2.如權(quán)利要求1所述的Web應(yīng)用軟件的用戶模塊測試系統(tǒng),其特征在于,所述測試用例 生成組件還包括擴(kuò)展接口,通過所述擴(kuò)展接口導(dǎo)入擴(kuò)展的測試模塊,擴(kuò)展的測試模塊也用 于產(chǎn)生測試用例。
全文摘要
本發(fā)明提出一種Web應(yīng)用軟件的交互界面測試系統(tǒng),包括交互界面功能組件、用戶權(quán)限設(shè)置組件、測試用例生成組件。交互界面功能組件包括邊界值測試模塊、重置模塊、移除模塊、上傳模塊、操作模塊、屬性模塊、呈現(xiàn)模塊。用戶權(quán)限設(shè)置組件包括管理員級權(quán)限設(shè)置模塊、操作員級權(quán)限設(shè)置模塊、訪客級權(quán)限設(shè)置模塊。測試用例生成組件選擇用戶權(quán)限設(shè)置組件中的一個模塊,結(jié)合交互界面功能組件中的一個或多個模塊,產(chǎn)生測試用例。通過本發(fā)明的Web應(yīng)用軟件的交互界面測試系統(tǒng),提供了一種既能夠充分考慮到測試完整性,又具有靈活擴(kuò)展能力的Web應(yīng)用軟件的測試技術(shù)。
文檔編號G06F11/36GK101996133SQ20091019467
公開日2011年3月30日 申請日期2009年8月27日 優(yōu)先權(quán)日2009年8月27日
發(fā)明者周泠, 楊昆 申請人:上海杉達(dá)學(xué)院