下面的测试项都需要连谷歌网址。有些网址国内开apn也是访问不了的。需要导香港网络下用香港卡测试。
这个测试项需要访问的网站可以通过如下命令修改:
adb shell settings put global captive_portal_http_url “http://www.qualcomm.cn/generate_204”
adb shell settings put global captive_portal_use_https 0
去掉机器的外网检测功能。
回复原值:
adb shell settings put global captive_portal_http_url “http://connectivitycheck.gstatic.com/generate_204”
测试经常报这个问题。但是每次去复测都可以测过。测试时连可以访问谷歌网站的wifi,插双卡即可。
要专门的白卡测试。上面必须有相应的小程序。 这里感谢同组同事找卡商,不断的修改白卡,最后得到几张符合要求的白卡。自此每次测试一次果果。
从如下log看报错是: UP compatible message client is not preloaded。addRcsCompliantClients函数的打印是com.google.android.apps.messaging,com.samsung.android.messaging ,com.android.mms,以及其签名。 我们用的不是谷歌GMS报的短信apk,用的是高通的短信apk。安装GMS的短信apk后测试通过。
高通短信apk的包名是com.android.mms,但是和其要求的签名值不同。 谷歌GMS包的签名值和要求的相同。
// device logs
03-18 16:30:20.564 16007 16022 I TestRunner: started: testClient(com.google.android.comms.RcsCompliantTests)
03-18 16:30:20.793 16007 16022 I Finding business logic for test case: : com.google.android.comms.RcsCompliantTests#testClient
03-18 16:30:20.795 16007 16022 D BusinessLogicExecutor: Executing condition: com.android.compatibility.common.util.ApiLevelUtil.isAfter(O)
03-18 16:30:20.796 16007 16022 D BusinessLogicExecutor: Executing action: com.google.android.comms.RcsCompliantTests.addRcsCompliantClients(com.google.android.apps.messaging CC:75:52:6D:6C:0F:80:AC:3B:3A:84:EB:44:83:84:40:DB:BE:6B:12:44:43:A7:C7:D7:BD:19:18:2A:C0:22:C9 0, com.samsung.android.messaging 34:DF:0E:7A:9F:1C:F1:89:2E:45:C0:56:B4:97:3C:D8:1C:CF:14:8A:40:50:D1:1A:EA:4A:C5:A6:5F:90:0A:42 0, com.android.mms 42:74:24:3D:7A:95:4A:C6:48:28:66:F0:CC:67:CA:18:43:CA:94:D6:8A:0E:E5:3F:83:7D:67:40:A8:13:44:21 70045909)
03-18 16:30:20.796 16007 16022 D BusinessLogicExecutor: Executing condition: com.google.android.comms.RcsCompliantTests.testIfApprovedMessagingClientInstalled()
03-18 16:30:20.798 16007 16022 D BusinessLogicExecutor: Executing action: com.google.android.comms.MessagesTests.failTest(UP compatible message client is not preloaded)
03-18 16:30:20.800 16007 16022 I TestRunner: failed: testClient(com.google.android.comms.RcsCompliantTests)
03-18 16:30:20.800 16007 16022 I TestRunner: ----- begin exception -----
03-18 16:30:20.800 16007 16022 I TestRunner: java.lang.RuntimeException: UP compatible message client is not preloaded
03-18 16:30:20.800 16007 16022 I TestRunner: at org.junit.Assert.fail(Assert.java:88)
03-18 16:30:20.800 16007 16022 I TestRunner: at com.android.compatibility.common.util.BusinessLogicTestCase.failTest(BusinessLogicTestCase.java:117)
03-18 16:30:20.800 16007 16022 I TestRunner: at java.lang.reflect.Method.invoke(Native Method)
03-18 16:30:20.800 16007 16022 I TestRunner: at com.android.compatibility.common.util.BusinessLogicExecutor$ResolvedMethod.invoke(BusinessLogicExecutor.java:198)
03-18 16:30:20.800 16007 16022 I TestRunner: at com.android.compatibility.common.util.BusinessLogicExecutor.invokeMethod(BusinessLogicExecutor.java:123)
03-18 16:30:20.800 16007 16022 I TestRunner: at com.android.compatibility.common.util.BusinessLogicExecutor.executeAction(BusinessLogicExecutor.java:68)
03-18 16:30:20.800 16007 16022 I TestRunner: at com.android.compatibility.common.util.BusinessLogic$BusinessLogicRuleAction.invoke(BusinessLogic.java:327)
03-18 16:30:20.800 16007 16022 I TestRunner: at com.android.compatibility.common.util.BusinessLogic$BusinessLogicRule.invokeActions(BusinessLogic.java:273)
03-18 16:30:20.800 16007 16022 I TestRunner: at com.android.compatibility.common.util.BusinessLogic$BusinessLogicRulesList.invokeRules(BusinessLogic.java:233)
03-18 16:30:20.800 16007 16022 I TestRunner: at com.android.compatibility.common.util.BusinessLogic.applyLogicFor(BusinessLogic.java:82)
03-18 16:30:20.800 16007 16022 I TestRunner: at com.android.compatibility.common.util.BusinessLogicTestCase.executeBusinessLogic(BusinessLogicTestCase.java:70)
03-18 16:30:20.800 16007 16022 I TestRunner: at com.android.compatibility.common.util.BusinessLogicTestCase.handleBusinessLogic(BusinessLogicTestCase.java:55)
估计看到channel字样,就转到协议团队了。实际是通知管理相关。转给相关负责人。
java.lang.AssertionError: Unable to execute because service account is not authorized to access information for this device. Please verify device properties are set correctly and account permissions are configured to the Business Logic Api…
如果遇到此问题,不是测试项本身失败了。而是测试机的key有问题。需要申请key。