草庐IT

hamcrest-junit

全部标签

java - 泛型 hell : hamcrest matcher as a method parameter

所以,让我们有一个字符串列表和一个接受Hamcrest匹配器并返回matches()的结果的函数。提供的匹配器的方法:publicbooleanmatchIt(finalMatcher>matcher){finalListlst=obtainListFromSomewhere();returnmatcher.matches(lst);}到目前为止一切顺利。现在我可以轻松调用:matchIt(empty());matchIt(anything());matchIt(hasItem("item"));matchIt(everyItem(equalToIgnoringCase("item")

java - 如何在 Eclipse 中配置 JUnit 的源代码?

我正在使用EclipseGalileoforJavaEE,并且我想将JUnit配置为在我尝试导航到它的方法时向我显示源代码。我已尝试将源附加到JUnit库,但库定义不可编辑。我什至找不到在首选项中配置JUnit库的位置。当我打开“添加库”窗口并选择JUnit时,我看到一个对话框,我可以在其中选择JUnit版本,但它显示“未找到源位置”。如何配置Eclipse以查找JUnit的源代码? 最佳答案 我下载了EclipseSDK并检查了差异,终于让它工作了。下载thisJAR进入您的eclipse/plugins目录。编辑eclipse/

java - 是否有 Hamcrest 匹配器来检查 Collection 既不为空也不为空?

是否有Hamcrest匹配器检查参数既不是空集合也不是null?我想我可以一直使用both(notNullValue()).and(not(hasSize(0))但我想知道是否有更简单的方法,但我错过了。 最佳答案 您可以结合IsCollectionWithSize和OrderingComparison匹配器:@Testpublicvoidtest()throwsException{Collectioncollection=...;assertThat(collection,hasSize(greaterThan(0)));}对于c

java - 在 JUnit 中的每个 '@Rule' 之后和每个 '@Test' 之前应用 '@After'

我有一个测试套件,我在@After中退出系统并在@AfterClass中关闭浏览器。我正在尝试使用@Rule为每种测试方法使用Selenium获取失败的测试屏幕截图。我手动检查了@Rule只在每个@Before之前运行,但我想在@Test之后和@After之前设置它。我找不到简单的解决方案。任何帮助将不胜感激。publicclassMorgatgeCalculatorTest{@Beforepublicvoidbefore(){System.out.println("Iambefore");}@BeforeClasspublicstaticvoidbeforeclass(){Syste

java - Maven 报告中的 JUnit 输出

我正在为我的项目使用Maven并有以下问题:我想在测试报告中查看我的JUnit测试(log4j、System.out等)的日志输出。您知道如何实现这一目标吗?谢谢;-) 最佳答案 我相信您可以使用mavensurefire插件配置键redirectTestOutputToFile重定向测试的输出(System.out),然后在target中找到输出/surefire-报告在theplugindocs中查看更多相关信息在一个片段中:org.apache.maven.pluginsmaven-surefire-plugintrue

java - jUnit 忽略来自基类的@Test 方法

假设我有一个名为testFixtureA的测试类有几种方法testA,testB,testC等,每个都有@Test注解。现在假设我将testFixtureA子类化进入名为testFixtureAB的类(class)而且我不会覆盖任何东西。testFixtureAB目前是空的。当我从testFixtureAB运行测试时,方法testA,testB和testC由测试运行器执行,因为测试运行器不区分来自类和基类的测试方法。我如何强制测试运行器从基类中删除测试? 最佳答案 andIdon'toverwriteanything.testFix

java - 如何将 JUnit Ant 任务配置为仅在失败时生成输出?

我正在Ant中配置JUnit,以便在每次构建时运行单元测试。我希望失败测试的输出在运行时打印在Ant控制台输出中。我不需要看到后续测试的任何输出。这是我的build.xml文件的相关部分:这几乎产生了我想要的结果,失败的测试在Ant输出中有详细说明,除了成功的测试还会写入以下输出:[junit]Testsuite:my.tree.junit.ExampleTest[junit]Testsrun:7,Failures:0,Errors:0,Timeelapsed:0.002sec我相信我已经尝试了JUnittask中列出的所有组合文档,包括:printsummary属性showoutpu

java - 如果特定测试失败则停止 JUnit 套件

我有一个JUnit测试套件,形式如下:@RunWith(Suite.class)@Suite.SuiteClasses({xx.class,yy.cass})publicclassAllTests{publicstaticTestsuite(){TestSuitesuite=newTestSuite(AllTests.class.getName());//$JUnit-BEGIN$//$JUnit-END$returnsuite;}}然后像这样调用原始测试:publicclassxxx{@Testpublicvoidtest()throws{...我有一种情况,如果第一个测试出现错误或

浅谈java单元测试框架junit4/5

0前言junit是一个开源的Java语言的单元测试框架。目前junit主要有版本junit3,junit4和junit5。因在junit3中,是通过对测试类和测试方法的命名来确定是否是测试,且所有的测试类必须继承junit的测试基类TestCase,所以本文不再讨论junit3,只讨论使用比较多的junit4和junit5。0.1特性提供注解标识测试方法;提供断言测试预期结果;提供测试套件,组织测试用例和其他测试套件;其他参见junit官网:JUnit4/JUnit5/Introduction-Junit5官方文档中文版1基本用法1.1常用注解介绍(1)@Test使用@Test注解测试方法。但

【Spring框架】--04.单元测试JUnit、事务、资源操作Resources、国际化、数据校验Validation、提前编译AOT

文章目录6.单元测试:JUnit6.1整合JUnit56.1.1搭建子模块6.1.2引入依赖6.1.3添加配置文件6.1.4添加java类6.1.5测试6.2整合JUnit46.2.添加依赖6.2.2测试7.事务7.1JdbcTemplate7.1.1简介7.1.2准备工作7.1.3实现CURD①装配JdbcTemplate②测试增删改功能③查询数据返回对象④查询数据返回list集合⑤查询返回单个的值7.2声明式事务概念7.2.1事务基本概念①什么是事务②事务的特性7.2.2编程式事务7.2.3声明式事务7.3基于注解的声明式事务7.3.1准备工作7.3.2测试无事务情况7.3.3加入事务①添