在多个设备上使用robotium运行同步测试

时间:2015-07-02 08:25:57

标签: android robotium synchronous

我需要测试两个应用,两个应用互相响应 1.应用程序A是他正在进行活动的用户应用程序,更具体地说是提交订单 2.应用程序B是供应商应用程序中的客户订单

两个应用程序都需要按照定义在不同的设备上运行

我的测试流程如下 1.客户和供应商的应用程序已打开 2.客户发出订单 3.供应商收到订单 4.供应商接受订单 5.供应商履行订单 6.客户收到订单已完成的通知

我可以在机器人中单独编程测试,问题是我需要它们是同步的 - 因为整个过程是现实生活中的实时过程

任何人都知道我能做到这一点吗? (没有创建数百万个小型机器人测试并一个接一个地运行它们)

提前致谢

1 个答案:

答案 0 :(得分:0)

您可以让他们等待某个元素出现。您可以使用以下代码段执行此操作:

<强>活动

solo.waitForActivity(solo.getCurrentActivity().toString());

Toast ,更具体地说是吐司中的文字

solo.waitForText("Some text inside toast");

等待视图消失

TextView textField = solo.getText("My Text Value", true);
  solo.waitForCondition(new Condition() {
    @Override
    public boolean isSatisfied() {
    return textField.getVisibility() == View.INVISIBLE;
  }
}, 1000);

<强>片段

 solo.waitForFragmentByTag("MyTag");

因此,您必须提供一些已提交订单的线索。你可以用我们可以等待的元素来做到这一点。等待结束后,做任何你打算测试的事情。