草庐IT

junit-rule

全部标签

java - 在 JUnit 测试中抛出所有异常是不好的做法吗?

我没有在我的JUnit测试中进行异常处理,我只是用...throwsException声明我的测试方法?我开始这样做了,但我看不出我应该更具体的原因。 最佳答案 单元测试的核心方面是帮助您尽快隔离/解决生产代码中的错误。从这个意义上讲:您编写@Test方法不是为了被其他方法调用。您编写它们以便JUnit框架运行它们。通常,当该测试抛出异常时;捕捉它是没有意义的(除非它是预期的;并且您想进一步检查该异常)。因此:没有有catchblock;在99.999%的情况下,将潜在的抛出原因添加到您的测试方法签名中是正确的答案。或者可能是100

java - 尝试在 Eclipse 中以 Debug模式运行 ANT JUnit 目标

这是我的ANTJUnit目标如果通过Eclipse运行,我的单元测试可以正常通过,但如果我从ANT中运行它们,则会失败。我希望它在单元测试中停在我的断点处。从文档中我知道我需要添加这些jvmarg但无法让它停止所以我显然没有将它们放在正确的位置。另外,我认为我的端口不正确,但我应该使用哪个端口?通过eclipse调试JUnit时,我不必设置任何调试端口,它就可以正常工作 最佳答案 您需要忘记您可以从Eclipse中运行JUnit测试和ANT目标的时刻。您想要调试的Java应用程序恰好具有主类org.apache.tools.ant.

用于测试的 spring junit 加载应用程序上下文

我的WEB-INF目录下有一些XML文件:lyricsBaseApp-servlet.xmlhibernate.xmldataSource.xmlbeans.xmlservletxml导入其他xml文件:我希望我的junit4JukeboxTest类包含整个spring配置。我使用默认文件名创建了一个JukeboxTest-content.xml文件。最后,我不知道该放什么...我试过了:或还有一些其他的想法,但都失败了。有人可以告诉我如何访问这些文件以及spring以什么方式解释这些文件路径? 最佳答案 选项1(应该首选,因为它是

用于测试的 spring junit 加载应用程序上下文

我的WEB-INF目录下有一些XML文件:lyricsBaseApp-servlet.xmlhibernate.xmldataSource.xmlbeans.xmlservletxml导入其他xml文件:我希望我的junit4JukeboxTest类包含整个spring配置。我使用默认文件名创建了一个JukeboxTest-content.xml文件。最后,我不知道该放什么...我试过了:或还有一些其他的想法,但都失败了。有人可以告诉我如何访问这些文件以及spring以什么方式解释这些文件路径? 最佳答案 选项1(应该首选,因为它是

spring - 使用 Junit 和 EasyMock 对具有 Autowiring 符号的类进行单元测试?

我正在尝试为一个有几个字段标记为@Autowired的类编写单元测试。鉴于Spring会自动解析这些字段的具体实现这一事实,我很难弄清楚如何在测试运行期间将我的Mock对象(通过EasyMock创建)作为依赖项插入。在类中使用@Autowired意味着该类中缺少setter。有没有办法让我插入我的模拟对象而不在类中创建额外的setter?这是我想要完成的一个示例:publicclassSomeClassUnderTestimplementsSomeOtherClass{@AutowiredprivateSomeTypesomeType;@AutowiredprivateSomeOthe

spring - 使用 Junit 和 EasyMock 对具有 Autowiring 符号的类进行单元测试?

我正在尝试为一个有几个字段标记为@Autowired的类编写单元测试。鉴于Spring会自动解析这些字段的具体实现这一事实,我很难弄清楚如何在测试运行期间将我的Mock对象(通过EasyMock创建)作为依赖项插入。在类中使用@Autowired意味着该类中缺少setter。有没有办法让我插入我的模拟对象而不在类中创建额外的setter?这是我想要完成的一个示例:publicclassSomeClassUnderTestimplementsSomeOtherClass{@AutowiredprivateSomeTypesomeType;@AutowiredprivateSomeOthe

白盒测试(单元测试JUnit使用参数化测试@Parameters)

目录1.背景知识2.例子3.参数化流程4.执行结果5.​​​​​​​练习题1.背景知识    在测试过程中,我们可能会遇到这样的函数,它的参数有许多特殊值,

java - SpringJUnit4ClassRunner 不会在 JUnit 测试用例结束时关闭 Application Context

我在JUnit4测试中使用SpringJUnit4ClassRunner,如下所示:@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations={"classpath:/test-context.xml"})publicclassMyTest{@AutowiredprivateConfigurableApplicationContextcontext;@Testpublicvoidtest1(){...}@Testpublicvoidtest2(){...}...}但是,在此测试用例结束时,应用程序上下文

java - SpringJUnit4ClassRunner 不会在 JUnit 测试用例结束时关闭 Application Context

我在JUnit4测试中使用SpringJUnit4ClassRunner,如下所示:@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations={"classpath:/test-context.xml"})publicclassMyTest{@AutowiredprivateConfigurableApplicationContextcontext;@Testpublicvoidtest1(){...}@Testpublicvoidtest2(){...}...}但是,在此测试用例结束时,应用程序上下文

java - 在 JUnit 中获取 java.lang.ClassNotFoundException : javax. servlet.ServletContext

我在我的应用程序中使用SpingMVC并为DAO编写JUnit测试用例。当我运行测试时,我收到错误:java.lang.ClassNotFoundException:javax.servlet.ServletContext。在堆栈跟踪中,我看到此错误是在getApplicationContext期间引起的。在我的applicationContext中,我没有定义任何servlet。Servlet映射仅在web.xml中完成,所以我不明白为什么会出现此错误。这是我的applicationContext.xml:org.hibernate.dialect.MySQLDialectcom.m