在Android上进行多次espresso测试之间切换

时间:2017-02-14 14:17:51

标签: android automated-tests android-espresso

我是自动化测试的新手,并使用espresso来测试我的Android应用程序。

问题是我有多个动态视图,具体取决于某些条件:

我的用户有一个布尔属性,让我们称之为" isPremium"

当我点击一个按钮时,如果isPremuim == true,我的用户将被重定向到FragmentA,否则他将被重定向到FragmentB。

现在我的测试

@Test public void testFragmentA(); 

@Test public void testFragmentB();

但是当我根据我的数据运行测试时,强制执行两个测试中的一个

所以我应该对这两个片段进行一次测试,比如

private void testFragmentA();
private void testFragmentB();

@Test
public void myGlobalTest {

if(user.isPremium) testFragmentA();
else testFragmentB();
}

这是进行测试的正确方法吗?或者还有另一种更好的方法,因为我真的不相信这种方法。

1 个答案:

答案 0 :(得分:1)

最好在每个测试开始时设置premium的值(对于testFragmentA为true,对于testFragmentB为false)。通过这种方式,您将了解您的期望以及每个片段所依赖的内容。 此外,如果用户是某个全局变量,您应该将其状态保存在@Before中并在@After方法中恢复它。

Data Source=SrvName;Provider=SQLNCLI11.1;Integrated Security=SSPI;Auto Translate=False;Initial Catalog=DB1;User Id=Usr;Password=Pwd;