如何解决等待10分钟后,才能在调试模式下调试Android测试用例
它曾经在工作。但是现在不再了。 IDE仅显示“正在实例化测试...”。但是,当我等待10分钟时,突然间它起作用了吗?该机器是Macbook Pro,2015年中。问题仅在androidTest
上出现,test
目录运行正常。
@LargeTest
@RunWith(AndroidJUnit4::class)
class SomeTestClass {
@get:Rule
var activityTestRule = ActivityTestRule(
NavigationActivity::class.java,false,false)
@Before
fun before() {
Timber.d("When debugging,this triggers only after about 10 minutes.")
}
@Test
fun testContents() {
Assert.assertEquals(0,0)
}
}
日志不断输出:
D/EZIO_NLOG: watchdog_routine executed!
D/EZIO_NLOG: check1
check1
check2
check2
尝试了以下操作:
- 文件,使缓存无效/重新启动
- 尝试了this answer。但这似乎已经过时了。
- 编辑配置...,选择“全部打包”,“类”和“方法”。他们都不起作用。
- 当我等待很长时间(例如10分钟)时,突然之间就会触发并起作用。
解决方法
Android测试很慢,并且在该调试器的顶部增加了更多的负载。我曾经遇到过同样的问题,我同意将调试器与Android Tests结合使用会很痛苦。
以下是我发现的here
Espresso detects when the main thread is idle,so it is able to run your test commands at the appropriate time,improving the reliability of your tests.
最重要的是,当添加调试器时,它会变得更慢。
您可以尝试在真实设备上运行测试,它应该更快一些(我认为)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。