原创 按位異或的妙用

常常遇到這種邏輯判斷 , 我從一個方法接收到結果爲boolean 值 , 但我有一個預期<即希望它爲true 或false > 然後針對不同的預期做相應的操作 . like this: public boolean isIdleNow

原创 espresso之Views獲取

espresso 目前尚不能處理多個View , 不論是 onData 還是其他 , 都只能操作唯一匹配的View . 如果多個view被匹配 , 將拋出 AmbiguousViewMatcherException 這個異常 , 那麼我們

原创 Espresso實現apk黑盒測試

直接上最終實踐的教程吧 : 1. 新建工程 這裏注意 package name必須與被測apk的包名一致 (至於如何查看apk包名,可另行查看資料) ,可以點擊 Edit 編輯包名. 2. 選擇無activity項目

原创 espresso之自定義Matcher

往往既定的matcher頗有侷限 , 又或者本就沒有適合需求的matcher . 這時候就是自定義matcher出場的時候了. 看起來高大上的自定義matcher , 實際上不過是實現了 TypeSafeMatcher 這一接口而已 .

原创 espresso之異常捕獲

當然和java的異常捕獲一樣嘛 , 但確實是一樣, 但也是有坑的. 先大體列一下java的異常機制 這個層次圖先看着 , 後面就用着了 進入正題: espresso需要捕獲異常無非是爲了繼續封裝 , 或是進行特殊操作.那麼如果t

原创 espresso之自由swipe

很多時候espresso不能自由的滑動 , 它必須在指定的View上進行 ( 當然 , view不可見的時候是不能滑動的 ) . 然而我們就是希望在屏幕上滑動一下來使某個view可見 , 一般情況很簡單嘛 : onView(isRoot(

原创 espresso之判斷EditText是否爲password

這一需求可能比較少見 , 但也是常見的 . 往往我們需要驗證輸入的密碼是否屏蔽 , 這時怎麼處理呢 ? 匹配是否爲"********" ? 先不說是否正確 , 假設不是用 * 作爲掩蓋 , 而是用別的特殊字符呢? 再逐個匹配嗎? 顯然不

原创 國際化你的測試

對於針對不同國別的app , 將會有很多的版本 ,如en版 , cn版 ,tw版等等 這時候驗證文本將變得複雜起來 , 通過文本識別對象的方式也將在不同的版本中失效 Android自帶的國際化方式即可解決問題 經過各種嘗試 ( 反編譯

原创 blog 生涯開始

最近覺得是該寫寫博客了 , 以前都直接在羣裏發發文檔 . 有朋告之兮 , 不若寫成博客 , 不惑衆人. 一入IT深似海 , 回頭省得已無岸 . 爭渡 , 爭渡 ...