java - 如何检查在测试方法中创建的对象的值?

标签 java unit-testing junit mockito powermock

我正在测试服务层的一种方法,该方法创建一个新对象并使用该对象调用另一个服务。

该方法涉及一些处理,根据这些处理将一些值设置到创建的对象中。

如何验证对象中是否设置了正确的值?

public class A{
    void method aMethod(){
        //some json parsing... a = someValue;
        Xobject xobject = new Xobject();
        xobject.setValue(a);

        someOtherService.someVoidMethod(xobject);
    }
}

想要检查 xobject 的值。

最佳答案

如果您使用 Mockito 为 someOtherService 设置模拟,那么您可以使用 Mockito ArgumentCaptor 来捕获 xobject,并且在测试中您可以访问该变量并断言它。

https://static.javadoc.io/org.mockito/mockito-core/2.6.9/org/mockito/ArgumentCaptor.html

关于java - 如何检查在测试方法中创建的对象的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56218864/

相关文章:

java - 方法没有定义 javax.persistence.spi.PersistenceUnitInfo.getValidationMode()

Xcode:如何测试主包 .plist 文件内容?

java - 如何使用 Mockito 验证带有枚举参数的方法调用?

java - ClassNotFoundException 即使包含该类的 jar 正确存在于类路径中

java - 滚动时图像滞后如何解决?

c# - 无法使用存在的 ClassInitialize 方法执行类

javascript - 如何测试引用 html 文件中的 html 元素的 JavaScript 代码

junit - Kotlin:gson 之后的单元测试断言对象

java - AssertJ - 方法 isEqualToComparingFieldByFieldRecursively 不适用于 RuntimeException 对象

java - 将 HashMap 写入 SQL 数据库时出错 - Android Studio