gpt4 book ai didi

java - tearDown() 应该在每次测试后运行吗?

转载 作者:太空宇宙 更新时间:2023-11-03 12:21:25 25 4
gpt4 key购买 nike

我认为 tearDown() 应该在每次测试后运行,但我从日志中看到它是在 setUp() 方法之后启动的。你们能解释一下吗?

public class LaunchManagerActivityTest extends ActivityInstrumentationTestCase2<LaunchManagerActivity> {
private Solo solo;

public LaunchManagerActivityTest() {
super(LaunchManagerActivity.class);

}

protected void setUp() throws Exception {
super.setUp();
Log.e("Dev", "setup");

solo = new Solo(getInstrumentation(), getActivity());

}

protected void tearDown() throws Exception {
super.tearDown();
Log.e("Dev", "tearDown ");

}

输出:

02-11 11:33:33.095: E/Dev(26779): setup
02-11 11:33:34.395: E/Dev(26779): tearDown

最佳答案

您发布的类(class)中没有测试,所以它只是运行设置然后拆卸。这是预期的行为,如果您进行任何测试,它将运行:

constructor()
setUp();
testXXX();
tearDown();

如果你有两个测试它会运行

constructor()
setUp();
testXXX();
tearDown();

setUp();
testXXX2();
tearDown();

记住 junit 3(android 使用的)中的测试必须以单词 test 开头并且在同一个类中。

为了测试我所说的,添加以下方法:

public void testXXX(){
Log.d("Dev", "testXXX ");
}

public void testXXX2(){
Log.d("Dev", "testXXX2 ");
}

关于java - tearDown() 应该在每次测试后运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14809346/

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