java - 创建 POJO 类的 JUnit 测试以测试对象创建 - Java
问题描述
第一次创建单元测试,我想确保创建了 POJO 对象。我知道这不是单元测试的最佳情况,但这就是我想要开始的方式:)
我有一个名为的类Data
,在那里我定义了我的 POJO,例如:
private MyPOJOExample myPOJOExample;
当Data
创建类的新对象时,我是说:
if (data.myPOJOExample!= null) {
this.myPOJOExample= new MyPOJOExample (data.myPOJOExample);
}
然后我为这个myPOJOExample
类定义了 setter 和 getter。
所以在我的单元测试中,我有这个:
public class MyPOJOExample extends TestCase {
@Test
public void expectedObject() throws Exception {
MyPOJOExample myPOJOExample = new MyPOJOExample();
}
}
但它说没有单元测试,我如何创建一个以便检查对象是否已创建?我正在使用 JUnit 4
谢谢
编辑:我在文档中看到有一个assertNotNull([message,] object)
. 这是合适的用例吗?在我的情况下我将如何使用它?
解决方案
要使用 Junit 和 Mockito 在 Java 中测试任何模型类,可以使用以下方法。在我看来,这是最好和最简单的方法。这是 Pojo 类(模型)。
class Pojo {
private String a;
private String b;
//and so on
public String getA() {
return a;
}
public void setA(String a) {
this.a = a;
}
public String getB() {
return b;
}
public void setB(String b) {
this.b = b;
}
}
现在是 Pojo 的测试类:
class PojoTest {
@Test
public void testPojoClass() {
Pojo pojo = Mockito.spy(new Pojo());
pojo.getA();//All methods you need to cover
pojo.getB();
pojo.setA("A");
pojo.setB("B");
assertEquals(pojo.getA(), "A");
}
}
推荐阅读
- oracle - 如何配置 SSRS 报告以访问安装了 Report Server 的 SQL Server 机器上的 Oracle 数据库?
- c# - C# 不识别资源,为什么?
- flutter - 有关如何修复 StrictMode 策略违规的任何线索:android.os.strictmode.NonSdkApiUsedViolation?
- azure-data-factory-2 - CosmosDB 源返回 DF-SYS-01
- python - 当向量与矩阵相乘时,是什么导致 numpy.dot 中的形状错误?
- python-3.x - TensorFlow 2.0 和 NetCDF4 RuntimeError:HDF 错误 - I/O 可能存在问题
- ios - 前置摄像头的 AVCaptureSession canAddInput 在 iPad 上总是返回 false
- godot - 如果 Godot 脚本 A 和 B 都扩展了脚本 C,A 和 B 是否共享来自 C 的相同变量名?
- sql - PostgreSQL 表连接
- reactjs - 如何测试目标instanceof window.Window