亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于命令字驅(qū)動(dòng)的自動(dòng)化測(cè)試框架研究

        2022-08-29 02:21:06李慶鈺翟柳李貞郝琳
        現(xiàn)代信息科技 2022年12期
        關(guān)鍵詞:界面

        李慶鈺,翟柳,李貞,郝琳

        (北華航天工業(yè)學(xué)院,河北 廊坊 065000)

        0 引 言

        近年來,軟件行業(yè)的發(fā)展十分迅速,人們對(duì)軟件質(zhì)量的要求越來越高。為了滿足廣大用戶的需求,在軟件開發(fā)過程中,迭代敏捷開發(fā)模型正在逐步替代傳統(tǒng)的測(cè)試模型,成為當(dāng)下主流的開發(fā)模型。迭代敏捷開發(fā)模型要求軟件在較短的時(shí)間內(nèi)有多個(gè)迭代版本,而如何保證這些版本的質(zhì)量,這就需要測(cè)試人員高效地開展測(cè)試工作。

        目前軟件測(cè)試主要有兩種方式:手工測(cè)試和自動(dòng)化測(cè)試。最初,受限于軟件測(cè)試技術(shù)的發(fā)展,軟件測(cè)試只能從最簡單的手工測(cè)試做起,軟件手工測(cè)試可以在很大程度上保證軟件的質(zhì)量,但是隨著軟件產(chǎn)品開發(fā)規(guī)模的擴(kuò)大,手工測(cè)試將會(huì)消耗大量的人力和物力,此外還十分依賴測(cè)試人員的技術(shù)能力。為了提高軟件的測(cè)試效率,人們開始引入自動(dòng)化測(cè)試,自動(dòng)化測(cè)試主要是借助測(cè)試工具來完成測(cè)試,減少了手工測(cè)試帶來的成本負(fù)擔(dān)。大量的測(cè)試實(shí)踐表明:自動(dòng)化測(cè)試可以有效解決手工測(cè)試中存在的一些難題,首先是資源可以得到高效的利用,其次還可避免重復(fù)性的手工測(cè)試工作,可以在很大程度上縮減軟件測(cè)試的時(shí)間成本,進(jìn)一步提高測(cè)試效率。

        雖然當(dāng)前的自動(dòng)化測(cè)試工具發(fā)展十分迅速,市場(chǎng)上陸續(xù)出現(xiàn)了種類繁多的自動(dòng)化測(cè)試工具(如QTP、selenium、Sikulix 等),每個(gè)自動(dòng)化測(cè)試工具的側(cè)重點(diǎn)不盡相同,但大多數(shù)都是基于關(guān)鍵字驅(qū)動(dòng)或數(shù)據(jù)驅(qū)動(dòng)。此外,現(xiàn)有大部分自動(dòng)化測(cè)試工具無法對(duì)軟件間的通信進(jìn)行測(cè)試。因此,本文針對(duì)軟件測(cè)試的現(xiàn)狀,在現(xiàn)有自動(dòng)化測(cè)試技術(shù)的基礎(chǔ)上提出一種基于命令字驅(qū)動(dòng)的自動(dòng)化測(cè)試框架,通過該框架可實(shí)現(xiàn)通信以及UI 界面測(cè)試。

        1 自動(dòng)化測(cè)試技術(shù)

        1.1 數(shù)據(jù)驅(qū)動(dòng)自動(dòng)化測(cè)試

        數(shù)據(jù)驅(qū)動(dòng)自動(dòng)化測(cè)試是指借助數(shù)據(jù)文件(Excel、文本及yaml 文件等)進(jìn)行數(shù)據(jù)的讀取,測(cè)試數(shù)據(jù)全程中無須測(cè)試人員手動(dòng)輸入,主要是借助數(shù)據(jù)文件來驅(qū)動(dòng)和執(zhí)行測(cè)試腳本,實(shí)現(xiàn)自動(dòng)化測(cè)試。這種測(cè)試方式可以將測(cè)試數(shù)據(jù)和測(cè)試腳本分離,有助于測(cè)試人員實(shí)現(xiàn)對(duì)測(cè)試數(shù)據(jù)和腳本的分類管理。一個(gè)測(cè)試腳本可對(duì)應(yīng)不同的測(cè)試數(shù)據(jù),測(cè)試人員可根據(jù)測(cè)試數(shù)據(jù)執(zhí)行多個(gè)測(cè)試用例??梢哉f,數(shù)據(jù)驅(qū)動(dòng)技術(shù)大大提高了測(cè)試用例的復(fù)用率,降低了軟件測(cè)試的成本。

        1.2 關(guān)鍵字驅(qū)動(dòng)自動(dòng)化測(cè)試

        關(guān)鍵字驅(qū)動(dòng)是在數(shù)據(jù)驅(qū)動(dòng)的基礎(chǔ)上所做的改進(jìn)與提升,汲取了其將測(cè)試數(shù)據(jù)和測(cè)試腳本分離的優(yōu)點(diǎn)。關(guān)鍵字驅(qū)動(dòng)基于分離的思想,分別實(shí)現(xiàn)了界面元素與測(cè)試對(duì)象的分離、測(cè)試描述與具體實(shí)現(xiàn)細(xì)節(jié)的分離以及數(shù)據(jù)與腳本的分離。通過分離界面控件和測(cè)試對(duì)象,將界面控件抽象并映射成一個(gè)個(gè)的邏輯對(duì)象,當(dāng)界面控件發(fā)生變化時(shí),只會(huì)影響它們之間的映射關(guān)系,不會(huì)對(duì)測(cè)試產(chǎn)生影響。通過分離具體細(xì)節(jié)和測(cè)試表述,測(cè)試人員在進(jìn)行測(cè)試時(shí),只需考慮要進(jìn)行什么測(cè)試以及測(cè)試結(jié)束后可以達(dá)到什么樣的效果,不需要考慮測(cè)試的每一步如何執(zhí)行。通過分離數(shù)據(jù)與腳本,可方便測(cè)試人員后期對(duì)數(shù)據(jù)和腳本的獨(dú)立維護(hù)。這三個(gè)分離是彼此獨(dú)立的,之間的相互影響較小。這種方式相對(duì)數(shù)據(jù)驅(qū)動(dòng)在提高自動(dòng)化測(cè)試效率上更進(jìn)了一步。

        1.3 GUI 自動(dòng)化測(cè)試

        GUI(圖形用戶界面)自動(dòng)化測(cè)試主要是用來進(jìn)行用戶交互式界面的測(cè)試,驗(yàn)證其界面的各個(gè)功能是否可以達(dá)到預(yù)期要求。測(cè)試人員采用自動(dòng)化測(cè)試工具(如Airtest、sikuli、Selenium 等)編寫測(cè)試腳本,模擬用戶一系列的真實(shí)操作(如點(diǎn)擊、輸入文字以及鍵盤動(dòng)作等),并以此實(shí)現(xiàn)相應(yīng)的功能。執(zhí)行GUI自動(dòng)化測(cè)試的具體步驟主要分為三步:(1)確定具體測(cè)試的目標(biāo)源,對(duì)其進(jìn)行定位;(2)模擬用戶進(jìn)行操作(如鼠標(biāo)點(diǎn)擊、鼠標(biāo)拖動(dòng)等),借助測(cè)試工具錄制測(cè)試腳本;(3)驗(yàn)證測(cè)試結(jié)果,運(yùn)行錄制完的測(cè)試腳本,檢查被測(cè)目標(biāo)是否發(fā)生狀態(tài)改變(如界面的跳轉(zhuǎn)等),最后與預(yù)期結(jié)果進(jìn)行比較。GUI 自動(dòng)化測(cè)試更加人性化,彌補(bǔ)了關(guān)鍵字驅(qū)動(dòng)在用戶交互式界面測(cè)試中表現(xiàn)出的不足,使自動(dòng)化測(cè)試技術(shù)更加完善。

        2 自動(dòng)化測(cè)試框架研究

        2.1 框架的設(shè)計(jì)思路

        本測(cè)試框架在自動(dòng)化測(cè)試工具Airtest的基礎(chǔ)上進(jìn)行了改進(jìn),結(jié)合關(guān)鍵字驅(qū)動(dòng)和圖像識(shí)別技術(shù),設(shè)計(jì)并實(shí)現(xiàn)了基于命令字驅(qū)動(dòng)的自動(dòng)化測(cè)試框架。Airtest 是網(wǎng)易公司開源的基于圖像識(shí)別技術(shù)的自動(dòng)化測(cè)試工具。該框架通過抽象UI 界面測(cè)試和通信測(cè)試中的公共方法為命令字,測(cè)試人員通過調(diào)用命令字來執(zhí)行測(cè)試。命令字通俗易懂,測(cè)試人員只需了解命令字的含義即可完成自動(dòng)化測(cè)試腳本的錄制。框架主要從UI 界面和通信測(cè)試兩方面出發(fā),UI 界面測(cè)試主要是通過對(duì)Airtest 工具底層的API 進(jìn)行封裝,可實(shí)現(xiàn)鼠標(biāo)動(dòng)作、鍵盤動(dòng)作和結(jié)果斷言功能;通信測(cè)試主要是通過抽象通信過程中的常見命令(發(fā)送數(shù)據(jù)、新建設(shè)備等)為關(guān)鍵字,將其進(jìn)一步封裝成函數(shù)供框架調(diào)用。

        2.2 框架的整體架構(gòu)

        本測(cè)試框架的整體架構(gòu)主要包括測(cè)試腳本編輯器模塊、測(cè)試報(bào)告生成器模塊、測(cè)試控件模塊以及通信設(shè)置模塊四個(gè)模塊,各個(gè)模塊之間各自獨(dú)立但又彼此關(guān)聯(lián)。自動(dòng)化測(cè)試框架架構(gòu)圖如圖1所示。

        圖1 自動(dòng)化測(cè)試框架架構(gòu)圖

        其中測(cè)試腳本編輯器模塊主要借助測(cè)試控件和通信設(shè)置兩個(gè)模塊實(shí)現(xiàn),腳本編輯語言主要是以Python 語言為主,采用Pytest 單元測(cè)試框架,測(cè)試人員可根據(jù)不同的測(cè)試場(chǎng)景選擇并點(diǎn)擊相應(yīng)的控件,即生成可執(zhí)行的測(cè)試腳本。測(cè)試腳本可單次或批量運(yùn)行。測(cè)試報(bào)告生成器模塊的功能實(shí)現(xiàn)過程為:測(cè)試報(bào)告借助Allure 開源測(cè)試報(bào)告框架,根據(jù)測(cè)試腳本實(shí)時(shí)生成測(cè)試報(bào)告,測(cè)試報(bào)告中包含每一步驟的詳細(xì)操作、截圖以及最后的結(jié)果驗(yàn)證,用戶可通過報(bào)告查看測(cè)試用例的詳細(xì)執(zhí)行情況。測(cè)試控件模塊主要提供界面交互動(dòng)作和測(cè)試結(jié)果斷言兩項(xiàng)功能,其中界面交互動(dòng)作主要包含鍵盤以及鼠標(biāo)動(dòng)作(例如點(diǎn)擊、等待以及輸入文本等),測(cè)試結(jié)果斷言包含數(shù)字文本識(shí)別、圖片匹配、測(cè)試內(nèi)容匹配三部分內(nèi)容。通信設(shè)置模塊主要提供設(shè)備測(cè)試和設(shè)備通信數(shù)據(jù)管理兩項(xiàng)功能,測(cè)試設(shè)備主要是指服務(wù)端設(shè)備,其中設(shè)備之間的通信數(shù)據(jù)以十六進(jìn)制傳輸,設(shè)備及通信數(shù)據(jù)信息以XML 文件的形式存儲(chǔ)在本地。

        2.3 框架的執(zhí)行流程

        基于命令字驅(qū)動(dòng)的自動(dòng)化測(cè)試框架進(jìn)行測(cè)試主要分為三大步:編輯測(cè)試腳本、運(yùn)行測(cè)試腳本以及測(cè)試結(jié)果生成,具體的測(cè)試過程如圖2所示。

        圖2 測(cè)試過程圖

        (1)編輯測(cè)試腳本。測(cè)試人員首先根據(jù)項(xiàng)目需求書完成測(cè)試用例的設(shè)計(jì),然后在項(xiàng)目的根目錄下創(chuàng)建測(cè)試腳本(其中腳本命名以及腳本中的函數(shù)名須以test 開頭),最后根據(jù)測(cè)試用例依次選擇命令字完成測(cè)試腳本的錄制并進(jìn)行保存。

        (2)運(yùn)行測(cè)試腳本。測(cè)試腳本編輯完成之后,測(cè)試人員選擇并打開測(cè)試腳本所在的目錄,通過終端命令完成測(cè)試腳本的運(yùn)行。運(yùn)行單個(gè)腳本可通過指定模塊的命令(pytest-vs t 腳本文件名)來實(shí)現(xiàn);運(yùn)行多個(gè)測(cè)試腳本可通過指定目錄的命令(pytest -vs 目錄)來實(shí)現(xiàn)。

        (3)測(cè)試結(jié)果生成。測(cè)試腳本運(yùn)行結(jié)束后,會(huì)在相應(yīng)的目錄下生成測(cè)試報(bào)告和測(cè)試日志文件,測(cè)試報(bào)告以網(wǎng)頁的形式進(jìn)行展示,包含各個(gè)步驟的詳細(xì)記錄和執(zhí)行情況,方便測(cè)試人員及時(shí)查看測(cè)試情況。測(cè)試日志則是以文本的形式進(jìn)行記錄。測(cè)試人員可根據(jù)需要選擇和查看測(cè)試結(jié)果。

        3 自動(dòng)化測(cè)試系統(tǒng)實(shí)現(xiàn)

        在基于命令字驅(qū)動(dòng)的自動(dòng)化框架的基礎(chǔ)上完成自動(dòng)化測(cè)試系統(tǒng)的搭建,自動(dòng)化測(cè)試系統(tǒng)整體 界面如圖3所示。

        圖3 自動(dòng)化測(cè)試系統(tǒng)整體界面

        自動(dòng)化測(cè)試系統(tǒng)主要分為測(cè)試腳本管理、系統(tǒng)菜單欄、系統(tǒng)工具欄、UI 界面測(cè)試命令字、腳本編輯區(qū)、控制臺(tái)以及通信管理七個(gè)部分。

        其中測(cè)試腳本管理模塊位于系統(tǒng)的最左側(cè),測(cè)試人員可以新增腳本、新建文件夾、刪除腳本、修改腳本以及運(yùn)行、停止目錄中的測(cè)試腳本;系統(tǒng)菜單欄位于系統(tǒng)最頂層,主要包含查看測(cè)試報(bào)告和測(cè)試日志功能;系統(tǒng)工具欄位于系統(tǒng)菜單欄的下方,測(cè)試人員可以截圖,在腳本中插入圖片,保存文件,運(yùn)行或停止編輯區(qū)的測(cè)試腳本;UI 界面測(cè)試命令字位于測(cè)試腳本管理的右側(cè),主要包含鼠標(biāo)動(dòng)作、鍵盤動(dòng)作、斷言以及等待,其中鼠標(biāo)動(dòng)作有Double Click(雙擊)、Right Click(右擊)、Swipe(滑動(dòng))等,鍵盤動(dòng)作包含Text(輸入文本)、Keyevent(鍵盤動(dòng)作)等,斷言包含Assert Img(判斷圖片是否相同)、Assert File(判斷文件是否存在)、Assert Ocr(判斷圖片中文字是否一致)等;腳本編輯區(qū)和控制臺(tái)位于系統(tǒng)中間部分,測(cè)試人員在編輯完測(cè)試腳本后可通過控制臺(tái)查看腳本執(zhí)行情況;通信管理位于系統(tǒng)最右側(cè),主要包含建立連接、Send data(發(fā)送數(shù)據(jù))、New Device(新建設(shè)備)等命令字。

        4 結(jié) 論

        本文在研究自動(dòng)化測(cè)試技術(shù)的基礎(chǔ)上,通過對(duì)比分析現(xiàn)有的自動(dòng)化測(cè)試工具,發(fā)現(xiàn)自動(dòng)化測(cè)試工具Airtest 在UI 界面上的測(cè)試效果明顯優(yōu)于其他工具,因此選取該工具并結(jié)合本框架的測(cè)試需求,設(shè)計(jì)并實(shí)現(xiàn)一種基于命令字驅(qū)動(dòng)的自動(dòng)化測(cè)試框架,最后在該框架的基礎(chǔ)上實(shí)現(xiàn)了一個(gè)自動(dòng)化測(cè)試系統(tǒng)。通過該系統(tǒng)可同時(shí)完成UI 界面和通信測(cè)試,有效提高了軟件的自動(dòng)化測(cè)試效率。

        猜你喜歡
        界面
        聲波在海底界面反射系數(shù)仿真計(jì)算分析
        微重力下兩相控溫型儲(chǔ)液器內(nèi)氣液界面仿真分析
        國企黨委前置研究的“四個(gè)界面”
        基于FANUC PICTURE的虛擬軸坐標(biāo)顯示界面開發(fā)方法研究
        西門子Easy Screen對(duì)倒棱機(jī)床界面二次開發(fā)
        空間界面
        金秋(2017年4期)2017-06-07 08:22:16
        鐵電隧道結(jié)界面效應(yīng)與界面調(diào)控
        電子顯微打開材料界面世界之門
        人機(jī)交互界面發(fā)展趨勢(shì)研究
        手機(jī)界面中圖形符號(hào)的發(fā)展趨向
        新聞傳播(2015年11期)2015-07-18 11:15:04
        性高朝大尺度少妇大屁股| 亚洲女同性恋激情网站| 国产精品国产自产自拍高清av| 97精品国产一区二区三区| 欧美mv日韩mv国产网站| 亚洲国产精品午夜电影| 日本97色视频日本熟妇视频| 男人天堂网2017| 国产最新进精品视频| 丰满少妇爆乳无码专区| 日本免费三级一区二区| 日本一区二区三区爆乳| 蜜臀久久99精品久久久久久小说| 国产精品一区二区三级| 国产精品久久av高潮呻吟| 成人偷拍自拍在线视频| av在线播放男人天堂| 亚洲欧洲精品无码av| 亚洲AV永久无码精品导航| 黄色大片国产精品久久| 亚洲成a∨人片在线观看无码| 国产又粗又黄又爽的大片| 亚洲白白色无码在线观看| av东京热一区二区三区| 亚洲国产国语在线对白观看| 色偷偷噜噜噜亚洲男人| 国产免费网站看v片元遮挡| 午夜麻豆视频在线观看| 亚洲欧美v国产一区二区| 欧美国产成人精品一区二区三区| 国产精品国产三级国产三不| 国产一区二区三区在线视频观看 | 无码人妻一区二区三区免费手机| 一区二区三区视频免费观看在线 | 色综合一本| 蜜臀久久久精品国产亚洲av| 一区二区三区视频亚洲| 久久亚洲av无码西西人体 | 久久精品国产99久久丝袜| 国产精品国产三级国产不卡| 国产成人精品久久亚洲高清不卡|