中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

【干貨】iOS9的新特性UI Tests

發布時間:2020-07-24 06:46:49 來源:網絡 閱讀:2960 作者:小強測試 欄目:移動開發


視頻匯總首頁:http://edu.51cto.com/lecturer/index/user_id-4626073.html


什么是UI Tests呢?

UI Tests是蘋果提供給我們進行UI測試的一套框架。

UI Tests有什么用?

它可以通過編寫代碼、或者是記錄用戶操作過程并將其代碼化,來實現自動點擊某個按鈕、視圖,或者自動輸入文字等功能。

UI Tests的意義

在實際的項目迭代過程中,隨著項目越做越大,功能越來越多,僅僅靠人工操作的方式來覆蓋所有測試用例是非常困難的,尤其是加入新功能以后,舊的功能也要重新測試一遍,這導致了測試需要花非常多的時間來進行回歸測試,這里產生了大量重復的工作,而這些重復的工作有些是可以自動完成的,這時候UI Tests就可以幫助解決這個問題了。

使用方法

   第一步:添加UI Tests。

如果是新項目,則創建工程的時候可以直接勾選Include UI Tests選項,如果是已有的項目,可以通過添加target的方式添加一個UI Tests的方式,如下圖:

【干貨】iOS9的新特性UI Tests

在Test選項中選擇Cocoa Touch UI Testing Bundle.

【干貨】iOS9的新特性UI Tests

   第二步:創建測試代碼。

這里主要有兩種方式來生成測試代碼:

1、手動創建測試代碼。
   打開測試文件,在testXXX()方法中添加測試代碼

【干貨】iOS9的新特性UI Tests

2、通過錄制腳本的方式生成測試代碼。
   選擇測試文件后,點擊左下方的錄制按鈕,這時候開始進行操作,它會記錄你的操作步驟,并生成測試代碼。

【干貨】iOS9的新特性UI Tests

下圖就是在一些操作后自動生成的測試代碼。

【干貨】iOS9的新特性UI Tests

通過自動生成的代碼片段,我們能夠分析出測試代碼的結構和一些可點擊控件的名稱,將這些點擊的方法和控件名稱記錄下來,之后就可以自己編寫測試代碼了,要知道手動創建的代碼可比錄制的方法靈活的多哦!

   第三步:開始測試。
   點擊testExample方法旁邊的播放按鈕,它就開始執行你的測試case了,這時候你會看到你的測試App在自動操作。

【干貨】iOS9的新特性UI Tests

UI Tests語法簡介

這里主要給大家介紹一下UI Tests的主要類及方法。

   XCUIApplication類:
   繼承自XCUIElement,這個類掌管應用程序的生命周期,里面包含兩個主要方法:
   launch(): 啟動程序
   terminate(): 終止程序

   XCUIElement類:
   繼承自NSObject,實現協議XCUIElementAttributes, XCUIElementTypeQueryProvider,可以表示系統的各種UI元素,它主要包含以下幾個方法。
   exist: 可以讓你判斷當前的UI元素是否存在。
   descendantsMatchingType(type:XCUIElementType): 取某種類型的元素以及它的子類集合。
   childrenMatchingType(type:XCUIElementType): 取某種類型的元素集合,不包含它的子類。

這兩個方法的區別在于,你僅使用系統的UIButton時,用childrenMatchingType就可以了,如果你還希望查詢自己定義的子Button,就要用descendantsMatchingType方法。

   另外UI元素還有一些交互方法:

tap(): 點擊。

doubleTap(): 雙擊。
   pressForDuration(duration: NSTimeInterval): 長按一段時間。
   typeText(text: String): 用于textField和textView輸入文本時使用,使用前要確保文本框獲得輸入焦點,可以使用tap()函數使其獲得焦點。

當然了,這里也只是給大家簡單介紹了一下常用的函數,具體如何使用還需要大家下去進一步探索哦!

【干貨】iOS9的新特性UI Tests

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

淮滨县| 且末县| 湖州市| 鲁甸县| 达孜县| 福海县| 泸水县| 方山县| 农安县| 界首市| 都安| 曲靖市| 三穗县| 曲松县| 景德镇市| 镇安县| 拉孜县| 阆中市| 临洮县| 墨竹工卡县| 浏阳市| 边坝县| 仙居县| 潼南县| 江津市| 龙江县| 马公市| 桂东县| 巍山| 蓬莱市| 繁峙县| 共和县| 珲春市| 乐都县| 兴城市| 永登县| 三亚市| 台中县| 武邑县| 通河县| 南平市|