日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【超详细】全国大学生软件测试大赛:移动应用测试脚本编写要求

發(fā)布時間:2023/12/20 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【超详细】全国大学生软件测试大赛:移动应用测试脚本编写要求 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

博主提供練習(xí)題下載,導(dǎo)入eclipse即可運(yùn)行。點(diǎn)擊查看

移動測試腳本編寫要求:點(diǎn)擊查看

博主參賽紀(jì)錄分享:點(diǎn)擊查看


目錄

腳本編寫要求

UIAutomatorViewer 工具介紹

1、獲取快照

2、頁面層級

3、屬性詳情

定位控件的參數(shù)選擇要求

例1

例2

其他注意事項


腳本編寫要求

UIAutomatorViewer 工具介紹

在你開始寫測試用例之前,使用 uiautomatorviewer 工具可以幫助你熟悉你的 UI 組件(包括視圖和控件),并獲取組件的各項屬性信息。

你可以使用它對當(dāng)前連接到你電腦上的手機(jī)屏幕進(jìn)行一個快照,然后可以看到手 機(jī)當(dāng)前頁面的層級關(guān)系和每個控件的屬性。利用這些信息,你可以寫出針對特定 UI 控件的測試用例。

在本地的 ..\sdk\tools\ 目錄下打開 uiautomatorviewer.bat (打開前請手機(jī)連接 電腦,手機(jī)開啟 USB 調(diào)試)。

1、獲取快照

? ? ? ? 當(dāng)你要分析一個頁面時,首先將手機(jī)的頁面停留在你要分析的頁面,然后用數(shù)據(jù) 線連接電腦。

然后點(diǎn)擊 uiautomatorviewer 左上角的第二個圖標(biāo)按鈕 Device Screenshot,點(diǎn)擊 之后會將當(dāng)前手機(jī)界面的快照更新到這里來。

2、頁面層級

? ? ? ? 右上方的整個區(qū)域,就是當(dāng)前頁面布局的層級關(guān)系。

3、屬性詳情

? ? ? ? 右下方的整個區(qū)域,是當(dāng)前選中的頁面或者是控件的屬性信息。這部分比較重要, 我們以后寫代碼的時候就是需要通過查看屬性中的控件的 id 或者是 text 等來獲 取控件的實(shí)例,然后點(diǎn)擊操作它。

定位控件的參數(shù)選擇要求

原則:對腳本控件定位參數(shù)的選擇要追求在要求范圍內(nèi)的唯一性。

即除了在多個頁面中都會出現(xiàn)的公共控件之外(例如返回按鈕),其它的控 件定位參數(shù)的選擇要做到在題目范圍內(nèi)的全局唯一

本題只涉及到使用兩種參數(shù)對控件進(jìn)行定位,控件 id 或控件 XPath,其中

參數(shù)選擇優(yōu)先級:控件 Resource-id > 控件 XPath

? ? ? ? 優(yōu)先使用控件的 id 來定位控件(對應(yīng) driver.findElementById()方法),若 id 在題目范圍內(nèi) 并不全局唯一, 則 使 用 XPath 進(jìn)行定位 (對應(yīng) driver.findElementByXPath()方法)。

?

例1

? ? ? ? 如上圖中使用 UI Automator Viewer 工具(這個工具在本機(jī)的 Android sdk 目錄下的 tools 文件夾下,名為 uiautomatorviewer.bat 的文件,雙擊運(yùn)行即可啟 動該工具,點(diǎn)擊工具中左上角,見上圖,第二個按鈕即可獲取當(dāng)前已連接設(shè)備 的當(dāng)前頁面,并查看對應(yīng)控件屬性)查看已連接設(shè)備當(dāng)前頁面上的控件及其屬 性。

? ? ? ? 對比以上兩圖可以發(fā)現(xiàn),“商城”控件的 id 為 com.floral.life:id/rb_bottom_s hop,而與其同類的控件“我的”的 id 為 com.floral.life:id/rb_bottom_person,我 們?nèi)绻ㄎ豢丶吧坛恰?#xff0c;可知其 id 滿足定位參數(shù)唯一性的原則,所以這里 使用 id 作為“商城”定位的參數(shù)

?

例2

? ? ? ? 比較上面兩張圖可以發(fā)現(xiàn),當(dāng)前屏幕上“干花”這個控件的 id 和“鮮切 花”的 id 是相同的,都為 com.floral.life:id/tv_title。如果我們要定位“鮮切花” 這個控件,根據(jù)優(yōu)先使用全局唯一的參數(shù)來定位的原則,發(fā)現(xiàn) id 并不全局唯 一,不能和例 1 一樣處理,故考慮使用 XPath 進(jìn)行定位。

? ? ? ? XPath 是一種特殊的路徑,可以理解為使用多個參數(shù)來唯一定位到一個控 件。

? ? ? ? 在此處我們使用的 XPath 為//android.widget.TextView[@text='鮮切花 '],即 其格式如下。

//控件類名[@控件屬性名='控件屬性值']

? ? ? ? 即定位到當(dāng)前頁面中的 android.widget.TextView 類控件且其對應(yīng)的 text 屬性值 為'鮮切花 '(此處'鮮切花 '的花字后面還有一個空格,所以不要自己輸入屬性 值,應(yīng)該直接把在 UI Automator Viewer 中的值直接拷貝到代碼中去)。

? ? ? ? 理論上來說 XPath 中的控件屬性名可以是該控件的任意屬性,但因為全局 唯一性的要求,首要選擇 text、content-desc 這種特殊性較強(qiáng)的屬性值,不要選 擇 index、bounds 這種多個控件極易相同(即未滿足全局唯一)的屬性值。

?

其他注意事項

  • 腳本中不要使用 driver.findElementsByxxx()一類的方法,不要用該方法 定位多個控件得到一個 list 再循環(huán)來操作 list 中控件(除非該控件的 XPath 都不能滿足在測試范圍內(nèi)的全局唯一)。
  • 腳本中允許自定義函數(shù),但對于 driver.findElementById()?這類原生方法,不 要進(jìn)行封裝。
  • 腳本中使用 XPath 進(jìn)行定位時,務(wù)必與腳本編寫要求中的 XPath 格式完全一 致,即 //控件類名[@控件屬性名='控件屬性值'] 不要使用//*[@控件屬性名='控件屬性值']等一系列其他格式。
  • 邏輯上是一句話的代碼務(wù)必寫在一行內(nèi),不要在函數(shù)的參數(shù)處換行。

總結(jié)

以上是生活随笔為你收集整理的【超详细】全国大学生软件测试大赛:移动应用测试脚本编写要求的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。