1最爬、 單元測(cè)試: 在Tests 里面,引入需要的累门岔, 然后寫有關(guān)的單元測(cè)試就好了爱致。
尤其是在代碼重構(gòu)的時(shí)候,可以將重構(gòu)的內(nèi)容和舊的內(nèi)容精心單元測(cè)試對(duì)比寒随。
eg: 我們的router模塊
按照我自己的需求糠悯,測(cè)試我的邏輯帮坚,這個(gè)也許不是很好的單元測(cè)試,不過(guò)展示用例已經(jīng)可以了
2互艾、 有關(guān)UITests的內(nèi)容
這個(gè)算是集成測(cè)試吧试和。
主要步驟: 錄制有關(guān)的自動(dòng)化腳本 —— 修改 —— 運(yùn)行 : 知道測(cè)試過(guò)了為止
UI 測(cè)試對(duì)應(yīng)的庫(kù)
還可以創(chuàng)建測(cè)試的計(jì)劃,每次運(yùn)行哪個(gè)測(cè)試忘朝,而不是所有的都運(yùn)行灰署,節(jié)省時(shí)間
有關(guān)示例代碼:
根據(jù)自己的app進(jìn)行設(shè)置寫有關(guān)的UI自動(dòng)測(cè)試代碼
UITableView 以及UICollectionView的滑動(dòng)處理:
// 滑動(dòng)到頂部
XCUIElementQuery *tablesQuery = app.tables;
XCUIElement* table = tablesQuery.firstMatch;
[table swipeDown];
// 可以查看一下tablesQueury 的table層次結(jié)構(gòu)判帮,然后進(jìn)行獲取局嘁。
// 判斷元素是否存在
XCUIElement *iconDBackSpButton = app.buttons[@"icon d back sp"];
if (!iconDBackSpButton.exists) {
iconDBackSpButton = app.buttons[@"icon d back nor"];
}
[iconDBackSpButton tap];
XCTWaiter 這個(gè)工具不知道是干嘛的。 這個(gè)工具要使用的時(shí)候再去用一下晦墙。
蘋果官網(wǎng)
美團(tuán)上的插樁研究
代碼覆蓋率
iOS的單元測(cè)試的書籍閱讀筆記悦昵,有待進(jìn)一步去總結(jié)
Tests和UITests是有區(qū)別的:
Tests是可以引入文件進(jìn)行單元測(cè)試
UITests 是ui的自動(dòng)化測(cè)試
3、iOS上的代碼覆蓋率
在iOS運(yùn)行的target上勾選上晌畅,然后運(yùn)行test的內(nèi)容 但指, 運(yùn)行完畢就能夠看到覆蓋率了。
editor scheme —— test —— options —— gather coverage for (all target)