我在Google/StackOverflow中搜索了很多次以尋求答案。
本來(在Android 6.0之前)我的自動化代碼運行順利,但現在所有的東西都被權限所需的對話框阻止。
我的應用程序需要將數據保存到SD卡中,並且我發現我無法使用Selendroid自動化來解除運行時測試期間由com.android.packageInstaller進程創建的SD卡權限所需的對話框。
我知道我可以手動預配置我的應用程序的權限,但每當我用Jenkins重新安裝我的應用程序,或者開始一個新的Selendroid測試我的應用程序時,所有配置都將被清除。在Selendroid自動化測試中關閉Android 6.0權限所需對話框
從我目前的理解,這裏是解決這一問題的可能途徑:
1.添加「NORESET」標誌告訴Selendroid不消滅當前的設置,但我不能找到它selendroid.io
2 。使用Appium(他們的文檔說他們有Android的NoReset標誌),但是這需要一些時間才能將我的代碼從Selendroid移植到Appium。
移植完成後,我只能知道它是否有效。
3.谷歌提供的任何其他方式,但我無法找到它。
如果有人遇到過類似的問題並有一些信息可以與我分享,我將非常感謝您的幫助,謝謝。
所以現在你的問題是,當您嘗試保存一些數據SCARD,一些對話框彈出來了,你要處理呢?如果你按下對話框上的某個按鈕,它會起作用嗎?對於你的「可能的方式#3」,你到底想要自動化到底是什麼? – Rilwan
我想要做的就是在每次出現對話框時接受對話框。 我曾嘗試使用Selendroid接受,但他們都沒有工作。 Selendroid告訴我它找不到SD卡權限所需的對話框元素,可能的原因是Selendroid只能操縱我的App,但不能解開由System創建的對話框。 當然,我可以手動解僱它,沒有任何問題。 – holy934
你可以按下「接受」按鈕或使用android uiautomator輕鬆處理對話框。或者你可以使用'adb shell input keyevent'來導航並按下對話框上的按鈕。 – Rilwan