[發(fā)明專利]用戶界面單元測試方法、裝置、可讀存儲介質(zhì)及設(shè)備有效
| 申請?zhí)枺?/td> | 201710891009.X | 申請日: | 2017-09-27 |
| 公開(公告)號: | CN107657026B | 公開(公告)日: | 2020-05-12 |
| 發(fā)明(設(shè)計(jì))人: | 尹成;陳少杰;張文明 | 申請(專利權(quán))人: | 武漢斗魚網(wǎng)絡(luò)科技有限公司 |
| 主分類號: | G06F16/901 | 分類號: | G06F16/901;G06F11/36 |
| 代理公司: | 北京眾達(dá)德權(quán)知識產(chǎn)權(quán)代理有限公司 11570 | 代理人: | 劉杰 |
| 地址: | 430000 湖北省武漢市東湖開*** | 國省代碼: | 湖北;42 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 用戶界面 單元測試 方法 裝置 可讀 存儲 介質(zhì) 設(shè)備 | ||
本發(fā)明涉及軟件測試技術(shù)領(lǐng)域,尤其涉及用戶界面單元測試方法、裝置、可讀存儲介質(zhì)及設(shè)備,所述方法包括:獲取輸入的查找數(shù)據(jù)對象的哈希值;在列表綁定數(shù)據(jù)集中查找與所述哈希值匹配的元素,并將查找到的與所述哈希值匹配的元素確定為目標(biāo)對象;將所述目標(biāo)對象在原始列表數(shù)據(jù)集中的原集合數(shù)據(jù)與所述目標(biāo)對象在所述列表綁定數(shù)據(jù)集中的綁定數(shù)據(jù)進(jìn)行匹配,獲得匹配結(jié)果,其中,所述列表綁定數(shù)據(jù)集為所述原始列表數(shù)據(jù)集經(jīng)克隆后得到的數(shù)據(jù)集;將所述匹配結(jié)果作為用戶界面單元測試結(jié)果進(jìn)行輸出。本申請可有效解決RecyclerView因沒有明確的索引值而出現(xiàn)的匹配錯位的問題,提高了匹配的準(zhǔn)確性。
技術(shù)領(lǐng)域
本發(fā)明涉及軟件測試技術(shù)領(lǐng)域,尤其涉及用戶界面單元測試方法、裝置、可讀存儲介質(zhì)及設(shè)備。
背景技術(shù)
安卓(Android)系統(tǒng)的單元測試包含用戶界面(UI)單元測試與Java單元測試。其中,UI單元測試由于需要依賴屏幕壓力傳感器,因此需要在真機(jī)上進(jìn)行測試,而,Java單元測試由于是運(yùn)行純Java代碼不依賴任何其他組件,因此只需要在虛擬機(jī)(JVM)上運(yùn)行即可。
對于UI單元測試而言,列表型UI單元測試約占整個UI單元測試量的30%。目前,列表型UI單元測試的測試操作包括:單擊(Single Click)、雙擊(Double Click)、長按(LongPress)和滑動(slide),這些測試操作必須指定操作對象,即列表?xiàng)l目(List Item),因此,如何精確且快速的查找到List Item是列表型控件UI單元測試的技術(shù)難點(diǎn)。
而,在現(xiàn)有技術(shù)中,對于列表型控件UI單元測試而言,Item匹配規(guī)則主要由系統(tǒng)提供的匹配器(Matcher)來進(jìn)行指定,其原理是:在先提供Item對應(yīng)的列表索引值(index),然后由Matcher根據(jù)index進(jìn)行查找,進(jìn)而實(shí)現(xiàn)匹配測試,但是,對于可回收性列表控件(RecyclerView)而言,由于其列表的Item沒有明確的索引值,若在RecyclerView中應(yīng)用上述方法,將出現(xiàn)匹配錯位的問題。
發(fā)明內(nèi)容
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的用戶界面單元測試方法、裝置、可讀存儲介質(zhì)及設(shè)備。
本發(fā)明實(shí)施例提供一種用戶界面單元測試方法,所述方法包括:
獲取輸入的查找數(shù)據(jù)對象的哈希值;
在列表綁定數(shù)據(jù)集中查找與所述哈希值匹配的元素,并將查找到的與所述哈希值匹配的元素確定為目標(biāo)對象;
將所述目標(biāo)對象在原始列表數(shù)據(jù)集中的原集合數(shù)據(jù)與所述目標(biāo)對象在所述列表綁定數(shù)據(jù)集中的綁定數(shù)據(jù)進(jìn)行匹配,獲得匹配結(jié)果,其中,所述列表綁定數(shù)據(jù)集為所述原始列表數(shù)據(jù)集經(jīng)克隆后得到的數(shù)據(jù)集;
將所述匹配結(jié)果作為用戶界面單元測試結(jié)果進(jìn)行輸出。
優(yōu)選的,在所述將查找到的與所述哈希值匹配的元素確定為目標(biāo)對象之后,且在所述將所述目標(biāo)對象在原始列表數(shù)據(jù)集中的原集合數(shù)據(jù)與所述目標(biāo)對象在所述列表綁定數(shù)據(jù)集中的綁定數(shù)據(jù)進(jìn)行匹配之前,所述方法還包括:
判斷所述目標(biāo)對象的類型與所述列表綁定數(shù)據(jù)集的類型是否相同;
若所述目標(biāo)對象的類型與所述列表綁定數(shù)據(jù)集的類型相同,則執(zhí)行所述將所述目標(biāo)對象在原始列表數(shù)據(jù)集中的原集合數(shù)據(jù)與所述目標(biāo)對象在所述列表綁定數(shù)據(jù)集中的綁定數(shù)據(jù)進(jìn)行匹配的步驟,否則,將匹配失敗作為所述用戶界面單元測試結(jié)果進(jìn)行輸出。
優(yōu)選的,在所述將查找到的與所述哈希值匹配的元素確定為目標(biāo)對象之后,且在所述將所述目標(biāo)對象在原始列表數(shù)據(jù)集中的原集合數(shù)據(jù)與所述目標(biāo)對象在所述列表綁定數(shù)據(jù)集中的綁定數(shù)據(jù)進(jìn)行匹配之前,所述方法還包括:
判斷所述目標(biāo)對象的布局標(biāo)識是否合法;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于武漢斗魚網(wǎng)絡(luò)科技有限公司,未經(jīng)武漢斗魚網(wǎng)絡(luò)科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710891009.X/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





