Robotium.在测试套件中,每个下一个测试都受到先前测试的影响

Tar*_*ras 12 java android gui-testing robotium

我有多个UI测试.当我进行一次测试时,一切都很好.但是如果我运行一批(作为CI构建的一部分)测试失败,因为首先进行的测试会改变应用程序的状态,并且下一个测试会受到这些更改的影响.(因为应用程序没有被杀死).

我试过getActivity().finish()了tearDown().
尝试solo.finalize()实际上做同样的事情.

有没有办法在每次测试开始时都有一个新的应用程序?(使用Robotium).
有没有办法在测试结束时以编程方式杀死应用程序?
我正在使用ActivityInstrumentationTestCase2Robotium

Bla*_*rai 5

或者只是添加 solo.finishOpenedActivities();


Gui*_*ume 1

为什么不根据您正在测试的特定应用程序添加“杀死”应用程序的临时方法?例如,根据您的应用程序活动深度,“按回 3 次”或类似的内容可能就足够了。

您可以将其添加到tearDown测试超类的方法中,以便它在每个测试之后运行。

您应该将您的Robotium测试视为用户案例、验收测试,而不是普通的单元测试(它们不是!)。因此,如果您想关闭应用程序,请在这些测试中完全按照您期望用户执行的操作来关闭应用程序。