java - 有没有办法在 Junit5 中批量断言?
问题描述
这是我当前的 Junit5 测试脚本
Class testObject {
private Integer integerField;
private String stringField;
private Boolean booleanField;
...getter, setter here
}
Class TestScript {
private static final INTEGER DEFAULT_INTEGER_FIELD = 123;
private static final STRING DEFAULT_STRING_FIELD = "string";
private static final BOOLEAN DEFAULT_BOOLEAN_FIELD = false;
private TestObject testObject;
@BeforeEach
public void initTest{
testObject.setIntegerField(DEFAULT_INTEGER_FIELD );
testObject.setStringField(DEFAULT_STRING_FIELD );
testObject.setBooleanField(DEFAULT_BOOLEAN_FIELD );
}
@Test
public void saveShouldReturnTestObjectWithAllField() {
//arrange
...
//act
TestObject savedObject = repository.save(testObject);
//assert
assertEquals(savedObject.getIntegerField(), DEFAULT_INTEGER_FIELD);
assertEquals(savedObject.getStringField(), DEFAULT_STRING_FIELD);
assertEquals(savedObject.getBooleanField(), DEFAULT_BOOLEAN_FIELD);
}
这是很多类型的,尤其是一个对象有很多字段。
我想知道是否有任何库或实用程序类我可以编写来帮助我
- 自动实例化 my
testObject
并将随机值作为默认值分配给testObject
- assertEquals 中的所有字段都
testObject
使用默认值
如果可以的话,那就太酷了
Class TestScript {
private TestObject testObject;
@BeforeEach
public void initTest{
testObject = CustomAssertUtil.initDefault(testObject);
}
@Test
public void saveShouldReturnTestObjectWithAllField() {
//arrange
...
//act
TestObject savedObject = repository.save(testObject);
//assert
CustomAssertUtil.assertEqualsAllWithDefault(savedObject);
}
}
解决方案
推荐阅读
- vue.js - 通过按钮单击从 vue 主页打开新的 vue 页面,这样主页的内容就不会出现
- c++ - 编译的库和可执行文件之间的 GCC 版本是否应该匹配?
- ios - 如何使用 Swift 在 Xcode 中使用切换开关关闭背景音乐?
- flutter - 如何使用 Flutter 创建管理 UI 左侧菜单
- python - 使用 manage.py 运行服务器时收到错误
- html - 媒体查询未在 CSS 网格上正确应用?
- flutter - 替换飞镖中的变量
- javascript - 反应:淡入淡出幻灯片不起作用。如何解决?
- python - 使用 Spark 3 加载 PipelineModel 时出现 AnalysisException
- jquery - jquery 更改 & 由?在第一个参数上