我用jUnit的@BeforeClass注释标记了一个方法,并得到这个异常说它必须是静态的。理由是什么?这迫使我所有的init都在静态字段上,据我所知没有充分的理由。在.Net(NUnit)中,情况并非如此。编辑-使用@BeforeClass注释的方法只运行一次这一事实与它是静态方法无关-一个非静态方法可以只运行一次(如在NUnit中))。 最佳答案 JUnit总是为每个@Test方法创建一个测试类的实例。Thisisafundamentaldesigndecision使编写测试更容易而没有副作用。好的测试没有任何运行顺序的依赖(参