junit4为什么一次性把所有方法执行光了?
我在某个方法上右键->run as junit 但是不止这个方法,所有的方法都运行了我在outline上右键->run as junit 也是一样
我知道把方法名的test去掉可以不执行方法,但是除了这个方法还有其它的好的方法吗? --------------------编程问答-------------------- @Ignore --------------------编程问答-------------------- 还可以这样:(Junit4.10)
public inte易做图ce FastTests {--------------------编程问答-------------------- 好像用@Test标签可以单个方法执行 --------------------编程问答-------------------- 2楼能解释一下那几行代码吗 --------------------编程问答-------------------- 满足junit4只执行一个方法的条件:
}
public inte易做图ce SlowTests {
}
public static class A {
@Test
public void a() {
fail();
}
@Category(SlowTests.class)
@Test
public void b() {
}
}
@Category( { SlowTests.class, FastTests.class })
public static class B {
@Test
public void c() {
}
}
@RunWith(Categories.class)
@IncludeCategory(SlowTests.class)
@SuiteClasses( { A.class, B.class })
// Note that Categories is a kind of Suite
public static class SlowTestSuite {
}
1、不要继承TestCase类,因为那是junit3才使用的方式,如果你继承了,即使写了@Ignore注释也同样会执行所有的语句。
2、方法没有必要再写成testAdd\testQuery等名称了,直接add\query就可以了,直接在前面注释@Ignore就是不执行,@Test就是执行。
注释这部分都说了,你仍然全部都执行的原因可能就是仍然继承了TestCase类。我开始就是这样,看了说明试了一下才知道。
如果还有问题再讨论吧。希望能帮到你。 --------------------编程问答-------------------- 在package explorer视图中,点击那个类就可以展开里面的方法
然后在方法上右击-run as junit,然后你懂的 --------------------编程问答-------------------- 不管选中那段代码 最终是执行整个类的方法 用@Ignore可以忽略该方法 --------------------编程问答--------------------
补充:Java , Java SE