我尝试在某个测试结束AndroidJUnit4后保持我的活动活着。我想这样做的原因是,有时候我只想看看UI的样子以及触觉的感觉。出于这样的目的,我不想构建整个应用程序并导航到所需的网站。
我读过,可能会覆盖tearDown()以阻止关闭活动。
虽然{@ 3}}已被弃用,但Android建议使用InstrumentationTestCase,并且新测试应使用新的InstrumentationRegistry编写。
使用这个新库完成测试后,如何使活动保持活动状态?
答案 0 :(得分:0)
我找到了一个适合我的解决方案。如果您有更好的建议,请告诉我。
AndroidJUnit4确实有tearDown和setUp,但它不是覆盖。必须使用注释来实现它:
@Before
public void setUp() throws Exception {
//do something
}
@After
public void tearDown() throws Exception {
//do something
}
为了在测试通过后保持活动存活,我让线程在tearDown方法中等待:
@After
public void tearDown() throws Exception {
synchronized (this) {
wait();
}
}
如果您想在一段时间后唤醒线程(但我建议在这种情况下使用Thread.sleep())或者如果您想触发唤醒调用,则可以轻松地将synchronized块与一把锁。