草庐IT

junit-ee

全部标签

java - 如何知道 Eclipse 中 JUnit 的版本

在eclipse中:窗口-->首选项在面板左侧展开Java-->JUnit在Java下如何知道eclipse中JUnit的版本? 最佳答案 您可以使用此代码:importjunit.runner.Version;System.out.println("JUnitversionis:"+Version.id()); 关于java-如何知道Eclipse中JUnit的版本,我们在StackOverflow上找到一个类似的问题: https://stackoverf

Java EE 过滤器无法获取 cookie?

为什么不能从servlet过滤器中引用cookie?我似乎无法理解JavaEE不允许您清理cookie值:publicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)throwsServletException,IOException{request.}ServletRequest不支持getCookies(HttpServletRequest就是这种情况)。 最佳答案 为了获取cookie,您需要将其转换为HttpServlet

java - 在 Eclipse 中,如何多次运行 JUnit 测试用例

我有一个单元测试有时会失败,调试它很痛苦,因为我不知道为什么它有时会失败。在Eclipse中有没有一种方法可以让JUnit测试运行5次或50次之类的?谢谢。 最佳答案 我刚刚找到了以下不需要任何额外依赖的解决方案(您得到的其中一个答案需要Spring)。使用Parameterizedrunner运行你的测试:@RunWith(Parameterized.class)然后添加以下方法来提供空参数的数量等于您要运行测试的次数:@Parameterized.ParameterspublicstaticListdata(){returnAr

java - 我应该用 junit 测试 toString() 吗?

这样的测试有充分的理由存在吗? 最佳答案 有些类使用toString不仅仅是用户可读的信息字符串。例如StringBuilder和StringWriter。在这种情况下,当然建议像测试任何其他具有商业值(value)的方法一样测试该方法。即使在一般情况下,抽烟测试toString的可靠性也是一种很好的做法(不抛出异常)。您最不需要的是一条日志语句,它会因为执行不当的toString而炸毁您的代码。这在我身上发生过好几次,由此产生的错误是最严重的错误,因为您甚至看不到源代码中的toString调用——它隐式地隐藏在日志语句中。

java - Spring JUnit 测试用例失败

我尝试为ProductDAO类运行一个JUnit测试用例,它是springweb应用程序的一部分。但它仍然失败。我不确定我的test-context.xml文件。我在路径src/test/java中有ProductDAOImplTest类,并且在堆栈跟踪中提到的ProductController类保存在路径中src/main/java.ProductDAOImplTest@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration("file:src/test/resources/test-context.xml")@Tran

java - JUnit Rule TemporaryFolder 任意抛出 IOException

我在这里遇到了一个奇怪的问题......我有一个JUnit实现了一些测试。该类如下所示:publicclassMyTest{@RulepublicTemporaryFolderfolder=newTemporaryFolder();@TestpublicvoidmyTest1()throwsIOException{StringdestinationPath=folder.newFile("destination1.txt").getPath();//Dothings}@TestpublicvoidmyTest2()throwsIOException{StringdestinationP

java - 在一个 jar 里运行 Junit 测试类,在 jar 外运行 junit

所以我使用one-jar将我的类及其依赖项(apachecommonscli)打包到一个jar文件中(这很容易做到,参见Command-LineApproach部分)。现在我很好奇我是否可以在类外使用Junitjar在jar内运行java测试类。所以sw.jar中测试类的路径是:sw.jar\main\sw.jar\uoa\di\ys11\hw2\TestSmithWaterman.class(main\是一个单一的东西)。我尝试过以下变体:java-jar-cplib/junit.jarorg.junit.runner.JUnitCoreuoa.di.ys11.hw2.TestSmi

java - Junit @AfterClass(非静态)

Junit的@BeforeClass和@AfterClass必须声明为static。有一个很好的解决方法here对于@BeforeClass。我类有很多单元测试,只想初始化和清理一次。关于如何获得@AfterClass的解决方法的任何帮助?我想在不引入额外依赖项的情况下使用Junit。谢谢! 最佳答案 如果您想要类似于@BeforeClass中提到的解决方法,您可以跟踪已运行了多少测试,然后一旦所有测试都已运行,最终执行您的结束清理代码。publicclassMyTestClass{//...privatestaticinttota

java - 如何让 Apache Derby 和 Hibernate 在 Java EE 应用程序中打印英文异常消息?

我正在运行一个JavaEE应用程序,它在Payara4.1.1.172上使用Hibernate5.2.10.Final和ApacheDerby存储后端。我看到类似这样的错误消息Causedby:java.sql.SQLDataException:AtruncationerrorwasencounteredtryingtoshrinkVARCHAR()FORBITDATA'(BinärerDatenwertwirdnichtangezeigt)'tolength255.这表明Hibernate或Derby或两者都没有在消息的所有部分使用英语错误消息。我试过了添加一个static{Syst

java - 带有 SpringRunner.class 的 JUnit @Category 注释

我按照thisblogpost使用@Category注释设置了一个带有单独单元测试和集成测试的Maven构建。在大多数情况下,这是可行的:标记为@Category(IntegrationTest.class)的测试在integration-test阶段执行,所有未标记的测试在阶段执行>测试阶段。但是,看起来集成测试的上下文仍在(部分?)单元测试运行时创建,即使测试本身没有运行:[INFO]---maven-surefire-plugin:2.18.1:test(default-test)@bamboo---[INFO]Surefirereportdirectory:[removed][