https://medium.com/@evanchen76
Evan 陳瑞忠
@Test
fun addTest() {
val actual = math.add(1, 2)
val expected = 3
Assert.assertEquals(expected, actual)
}
class Math {
fun add(number1: Int, number2: Int): Int {
return number1 + number2
}
}
先寫有沒有踩到地雷的判斷?
先寫UI?
先寫輸贏的判斷?
先寫附近地雷數的數字?
先找最需要測試的
先找最複雜的邏輯
先寫測試 != 先找可以測試的來寫
先寫測試 != 先找最需要測試的來寫
先不管有哪些測試
先把需求拆成一步一步來看
有81個格子
每一個都是蓋起來的
15%的格子有地雷
class CellCreator(){
fun create(): List<Cell>{
//產生81個Cell
}
}
圖片參考:Google I/O 2017
不只是通過UI測試
完成UI的所有細節
單元測試:
UI測試:
單元測試:
UI測試:
單元測試:
UI 測試:
開啟頁面
登入成功/失敗->Snackbar
登入檢查
1. 開啟畫面
2. 點擊登入
開啟App後應看到:
帳號輸入欄位
密碼輸入欄位
登入按鈕
點擊登入,
如未輸入帳號密碼應提示
登入呼叫Repository並顯示載入中
如登入成功,應跳出Snackbar
如登入失敗,應跳出Snackbar
完成Repository
完成Activity,通過UI測試
可不可以先把單元測試都寫完
再通過UI測試?
使用者體驗
透明度
民宿列表
收藏
排序
篩選
https://medium.com/@evanchen76