loading

TGW專業從事停車管理系統設計與解決方案

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

當您的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() 最後,如果你想探索更多關於濃縮咖啡測試和意圖的內容,你可能想看看這個官方安卓團隊的回購

請與我們聯繫
推薦的文章
案例
沒有數據
深圳市虎王科技有限公司是領先的車輛智能停車系統、車牌識別系統、行人門禁閘機、人臉識別終端等門禁解決方案提供商。 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