我的应用程序中有一个活动(A),它由另一个活动(B)启动,带有startActivityForResult()。 当在A中单击按钮时,它将调用setResult()和finish(),然后返回到B.
如何在仪器测试中从A获得结果?
我想保持简单,直接从我的测试开始A,而不是通过B(以及之前的活动)。
我使用机器人,我也在研究其他工具,但没有发现任何有用的东西。
getActivityMonitor()。getResult()为null。 无论如何,Robotium不会使用startActivityForResult()启动活动。 我不想模仿活动A的结果,我想检查一下它的有效性。
我目前的解决方法是使用反射读取活动中的值,但必须有更好的方法。
答案 0 :(得分:0)
如果我理解你的问题,请试试这个
Intent i = new Intent (getApplicationContext(), ActivityA.class);
startActivity(i); //Start Activity A
或者您可以通过特定活动制作测试星
public class ActivityATest extends ActivityInstrumentationTestCase2<ActivityA> {
...
然后进行测试检查
// check that we have the right activity
solo.assertCurrentActivity("wrong activity", ActivityA.class);