gpt4 book ai didi

android - ActivityUnitTestCase 生命周期测试

转载 作者:行者123 更新时间:2023-11-29 17:57:44 25 4
gpt4 key购买 nike

我今天对一个简单的应用程序进行了单元测试。我有一个方法

protected void onRestart() {
disp.setText("The numbers you entered were");
super.onRestart();
}

在我的测试用例中,我正在使用

public void testRestart(){
String dispText = disp.getText().toString();
getInstrumentation().callActivityOnStop(mActivity);
assertEquals(dispText, disp.getText().toString());
}

断言返回真意味着文本没有改变。然而当我使用

public void testRestart(){
String dispText = disp.getText().toString();
getInstrumentation().callActivityOnRestart(mActivity);
assertEquals(dispText, disp.getText().toString());
}

断言如预期的那样是错误的。

根据 Activity 生命周期,如果用户导航离开 Activity,onRestart() 应该始终在 onStop() 之后调用。

onRestart() 方法不应该在 onStop() 之后调用吗?还是调用 getInstrumentation().callActivityOnStop(mActivity); 终止 Activity ,而不是停止 Activity ?

最佳答案

ActivityUnitTestCase 是单个Activity 的独立单元测试Activity Under Test 不参与系统交互。

您可以使用 startActivity() 启动您的 Activity,它会调用 onCreate(),但是如果您想进一步练习 < strong>Activity 生命周期方法,您必须自己从测试用例中调用它们。

关于android - ActivityUnitTestCase 生命周期测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18140349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com