loading

用濃縮咖啡測試相機和畫廊意圖

當您的Android應用程序中的屏幕具有相機和/或圖庫功能以及某些屏幕更改 (出現/消失的視圖,標籤或按鈕) 時,等等),你需要為這些功能/屏幕寫一些濃縮咖啡測試,有幾個我一直在使用的助手,我想和大家分享。 授予許可當你在你的應用程序中使用相機時,您需要在設備中授予一些權限才能讀取/存儲照片。 這些權限在運行時被要求,通常與READ_EXTERNAL_STORAGE和WRITE_EXTERNAL_STORAGE相關。

用濃縮咖啡測試相機和畫廊意圖 1

因此,GrantPermissionRule允許在Android M (API 23) 及更高版本上授予運行時權限,並且當應用於測試類時,該規則嘗試授予所有請求的運行時權限。 @ Get:Rulevar mRuntimePermissionRule = GrantPermissionRule.grant(android

Manifest.permission.WRITE_EXTERNAL_STORAGE) 此規則通常用於授予運行時權限,以避免權限對話框顯示並阻止應用程序Ui,並且根據官方文檔: 根據此規則,當WRITE_EXTERNAL_STORAGE被請求時,將自動授予READ_EXTERNAL_STORAGE。 測試代碼在應用程序中單擊圖庫圖標時進行測試,然後選擇圖像並在屏幕上顯示: 這裡的第一件事是我有一個幫助方法 (CameraAndGallery。

SavePickedImage),首先保存一個圖像 (為了簡潔,ic_launcher圖標),該圖像將在測試中用作測試可見的本地文件: 活動參數來自ActivityTestRule:@ get:Rulevar mActivityTestRule = IntentsTestRule(MyActivity::class.java),然後我創建一個ActivityResult對象 (就像一個模擬但用於android意圖),該對象將由濃縮咖啡意圖匹配器使用 (以匹配和驗證傳出的意圖):val imgGalleryResult = CameraAndGallery.createImageGallerySetResultStub(mActivityTestRule

活動) 意圖 (hasAction(Intent.ACTION_CHOOSER)).Respondwing (imgGalleryResult) 這裡的秘密是要求先前保存並最終用作結果的文件。

用濃縮咖啡測試相機和畫廊意圖 2

注意: 要使用濃縮咖啡意圖,我們必須將此依賴項添加到應用程序構建中。 Gradle文件: androidTestImplementation androidx.test.

Espresso:espresso-意圖: $ espresssoversion對於我們正在編寫的測試,讓我們假設從圖庫中提取的圖像,我們將其設置在用戶可見的ImageView中,然後測試的最後一部分是檢查圖像是否顯示 (方法hasImageSet()):onView (與id (R.id.auctionphotos_bigimage_viewer))。

檢查 (匹配 (hasImageSet() 相機測試與圖庫測試類似,從設備相機獲取圖像的測試遵循幾乎相同的步驟,但在這種情況下,圖像不需要之前保存,只需模擬相機的結果: 模擬捕獲結果如下: 生成的圖像將由意圖拍攝: 意圖 (hasAction(MediaStore。 ACTION_IMAGE_CAPTURE)). 響應 (imgCaptureResult),並且我們可以檢查圖像是否已拍攝並顯示: onView(withId(R。

Id.auctionphotos_bigimage_viewer))。 檢查 (匹配 (hasImageSet() 最後,如果你想探索更多關於濃縮咖啡測試和意圖的內容,你可能想看看這個官方安卓團隊的回購

請與我們聯繫
推薦的文章
案例
智能停車系統簡介智能停車系統是一種提供人類可讀信息以幫助人們導航的電子設備
停車場管理停車場管理的定義是對停車場及其區域進行管理,以達到為停車場提供服務的目的的實踐。
如何使用anpr 停車系統?停車系統已成為一種流行的方式來保持您的業務順利運行。 停車系統的好處是它可以
為什麼選擇 anpr 停車解決方案?當您將車停在 anpr 停車解決方案時,您通常會利用 anpr 停車解決方案的眾多優勢。 它是
什麼是 anpr 停車系統?Anpr 停車系統旨在讓人們更容易在城市中停車。 該系統使用傳感器來測量di
什麼是汽車堆垛機停車場?我堵車了。 我必須把車停在這里和那裡。 有很多地方可以停放我的車。 你做什麼工作?你只是停車嗎
自動停車管理系統的工作原理您可以做很多事情來提高生活質量。 當你完成了你所做的一切
停車售票機介紹很難清楚地描述相同的內容。 很多人使用相同的格式,這樣更容易理解
什麼是汽車堆垛機停車場?我在使用互聯網時必須使用智能手機。 使用互聯網時,很容易被周圍發生的事情分散注意力
智能停車管理系統的引入智能停車管理系統是一種智能的方式來減少您的能源費用並幫助您保持您的汽車運行
沒有數據
深圳市虎王科技有限公司是領先的車輛智能停車系統、車牌識別系統、行人門禁閘機、人臉識別終端等門禁解決方案提供商。 LPR停車解決方案 .
沒有數據
CONTACT US

深圳市泰格旺科技有限公司

電話:86 13717037584

電子郵件: info@sztigerwong.com

地址:矽谷動力數位產業園區A2棟一樓 龍華區觀瀾街道大富路22號

中國廣東省深圳市  

                    

版權©2021深圳市TigerWong科技有限公司  | 網站地圖
Contact us
skype
whatsapp
messenger
contact customer service
Contact us
skype
whatsapp
messenger
取消
Customer service
detect