Android自动化测试—执行多条Case阻塞问题

发表于:2013-05-07来源:Robotium作者:hao.shen点击数: 标签:Android
编写android自动化测试用例过程中我们经常遇到这样一个问题,当只存在一条case的时候执行起来很正常但是一旦有多条case一起执行时可能会在执行完第一条case后阻塞,导致后面的无法正常执行

  编写android自动化测试用例过程中我们经常遇到这样一个问题,当只存在一条case的时候执行起来很正常但是一旦有多条case一起执行时可能会在执行完第一条case后阻塞,导致后面的无法正常执行。问题在于第一条case执行完后没有销毁全部的Activity,众所周知每次case执行完后都会执行tearDown()方法,所以一般情况下只需要在tearDown()中调用Solo对象的finishOpenedActivities()方法即可;

1
2
3
4
5
6
7
8
9
10
11
	@Override
	public void tearDown() throws Exception {
		//tearDown() is run after a test case has finished. 
		try {
			solo.finalize();
		} catch (Throwable e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
           	solo.finishOpenedActivities();    //销毁所有activity
	}

原文转自:http://www.robotium.cn/archives/273#comment-70