java - 如何对无效验证方法的两种情况进行单元测试?

标签 java unit-testing junit

我正在编写一个像这样的无效验证方法:

void validate(SomeObject someObject) {
    if (check someObject with constraints) {
        throw new SomeException();
    }
}

为了对该方法进行单元测试,我想测试合法和非法输入:

  • 对于非法输入,我使用了 (expected = SomeException.class)
  • 我想知道当 someObject 合法时我们如何测试这种情况?

最佳答案

在这种情况下,合法意味着验证无一异常(exception)地完成。要对其进行测试,您只需调用验证即可。

@Test
public void testLegal() throws SomeException {
     validator.validate(/* some legal object*/);
}

只有在验证期间抛出异常时,此测试才会失败。

关于java - 如何对无效验证方法的两种情况进行单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41996317/

相关文章:

java - Android Studio 中的 Intent 问题

java - LibGDX 可以在桌面上加载皮肤,但不能在 Android 上加载皮肤

unit-testing - 您建议从TDD转移到BDD的哪些步骤?

c# - UI测试框架+持续集成?

java - com.fasterxml.jackson.databind.JsonMappingException 在成员类型和访问器方法不一致时通过引用链

java - 如何对 Enum 进行排序并添加到数组中

java - 无法使用表达式递增字节值但使用递增运算符

iphone - 什么时候使用单元测试?

spring-boot - Spring Boot : Setting Hibernate naming strategy with @DataJpaTest and Flyway

java - 在测试类中模拟私有(private)静态最终变量