Junit单元测试
文章平均质量分 97
FromNowOnUntilTheEnd
每日记录
展开
-
单元测试删除/修改数据库变了后台没变:手动刷新session
在做单元测试的删除/修改功能的时候,如果删除/修改了数据库的数据,那么记得刷新session错误发生过程:1、通过查询方法获得了一个不为null的实体,即实体有值2、执行修改操作,就是把实体里的一个字段flag属性值改变了,如把0改成了13、 这时候get这个flag属性的值,发现还是0,可是数据库里这个flag的值已经变成1了解决办法:刷新session...原创 2018-11-30 16:47:56 · 1012 阅读 · 0 评论 -
单元测试所需头顶注解和IDEA中用ctrl+shift+t 自动创建测试类和代码域
代码为@RunWith(SpringRunner.class)@SpringBootTest(classes = Application.class)注解需要在test作用域内才起作用,需要把新建的test包标记为Test Resources Root,具体每个标记的解释在这篇博客底下IntelliJ IDEA中用快捷键自动创建测试类的默认按键为:ctrl+sh...转载 2018-11-29 16:26:25 · 2863 阅读 · 0 评论 -
单元测试:测试类所需所有东西//无法调用数据库(一直失败报空指针或者fail to load application)
普通的Spring项目:要在测试类的头顶加上@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration({"classpath:spring-context.xml"})加载spring配置SpringBoot项目:1、在src下,与main包同级新建test包,并将其标记为Test Resources R...原创 2018-11-29 16:28:33 · 1381 阅读 · 0 评论 -
单元测试:设置事务回滚@TransactionConfiguration
@TransactionConfiguration:defaultRollback默认值为true,设了这个就代表事务自动回滚,就是不管你怎么操作数据库,数据库都会变成原来的样子原创 2018-11-30 16:53:07 · 1458 阅读 · 0 评论 -
Junit单元测试中Assert断言的使用
Junit测试框架中Assert类就是实现断言的工具,主要作用如下:单元测试用于判断某个特定条件下某个方法的行为;执行单元测试为了证明某段代码的执行结果和期望的一致,下面介绍Junit测试库中几种常用的断言。1、如果导入的包为import org.springframework.util.Assert;使用方式Assert.isTrue(判断成功的条件,不符合该条件...转载 2019-01-11 16:27:39 · 15999 阅读 · 3 评论 -
如何写好单元测试:Mock脱离数据库+不使用@SpringBootTest
目录1、一般的单元测试写法2、单元测试步骤3、对一般的单元测试写法分析优化4、最佳的单元测试写法:Mock脱离数据库+不启动Spring+优化测试速度+不引入项目组件一、普遍的单元测试方法作为一个Java后端程序员,肯定需要写单元测试。我先提供一个典型的错误的单元测试例子:@RunWith(SpringRunner.class)@SpringBootTest(cla...原创 2019-07-29 17:21:13 · 39583 阅读 · 64 评论 -
自定义通用事务回滚注解:TransactionalRollbackAll
新建一个包,包下新建TransactionalRollbackAll@Target({ ElementType.METHOD, ElementType.TYPE })@Retention(RetentionPolicy.RUNTIME)@Transactional(rollbackFor = Throwable.class)public @interface Transactional...原创 2019-07-31 09:29:53 · 669 阅读 · 0 评论