使用 Espresso 实现完整覆盖的功能测试(5)

发表于:2017-04-20来源:Ohmer作者:Ohmer点击数: 标签:功能测试Espresso
为这些随机的弹窗测试单独写测试,可以嵌入到在业务上认为合理的单页面测试中 一般这样的触发性的弹窗都会有相应的全局性的变量用来控制,在执行
  • 为这些随机的弹窗测试单独写测试,可以嵌入到在业务上认为合理的单页面测试中

  • 一般这样的触发性的弹窗都会有相应的全局性的变量用来控制,在执行其他的单页面测试的时候,则手动将对应的控制开关关闭。

  • 测试流和全功能覆盖

    在每个页面的单页面测试都完成以后,接下来的任务就是怎么有效的将这些单页面组合起来。在单元测试中每个单元测试都是独立的,所以只要保证所有的测试用例被执行过就可以了。但是现在我们的目的是实现功能测试,所以一定会有一些状态下的逻辑需要测试。于是在单页面的基础上我们加入了测试流的概念。

    • 一条测试流其实是不同单页面测试的顺序执行。通过前面的单页面测试来后对应用的产生的输出,变成后面一个单页面测试的输入(如:在某条测试流中需要应用处于登录状态,则可以在整个测试流的第一个单页面测试应该是登录页面测试)。
    • 单条测试流可以对应到某条业务的一条完整流程,一般会覆盖多个测试用例。
    • 通过不同的测试流,来测试同一页面中不同的逻辑分支。
    • 通过测试流的叠加来实现全功能的测试覆盖。这里的逻辑是当每个页面的所有逻辑都被测试过,则实现了全功能的测试覆盖。

    Espresso 的坑

    虽然 Espresso 已经很强大了,但是从2.2这个版本以后,已经很久没有更行新版本了,其实里面还是有很多坑的,在使用 Espresso 的时候需要尽量避免。

    原文转自:http://ohmerhe.com/2017/04/18/espresso_huge_ui_test/

    ...