java - 如何使用 junit 测试方法的幂等性?

标签 java junit mockito idempotent

我必须测试一个方法的幂等性。

假设我有 Person 类,方法如下:

    public String doSomething(String a){ 
//do some stuff
personDao.delete(a)
}

并且我需要在删除之前测试何时出现问题,以便下次您调用方法 doSomething 时,它会创建与您想要的相同结果,而它应该是第一次正确运行。例如,当您运行调用该方法但因停止脚本而失败的脚本时,可能会发生这种情况。当您下次运行该脚本时,它应该会给出相同的结果而不会失败。

你能在单元测试中做到这一点吗?

提前致谢

最佳答案

测试应该运行该方法两次。两种情况下的结果/结果应该相同。就这么简单。

伪代码:

setupException();
doSomething(a);
assertOutcome();
doSomething(a);
assertOutcome();

关于java - 如何使用 junit 测试方法的幂等性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26298430/

相关文章:

eclipse - 如何使 JUnit4 + Hamcrest 1.3 + Mockito 从 Eclipse 和 Tycho 工作

java - AWS SNS 响应处理

java - 使用 Eclipse 远程运行 Junit 测试,就像在本地运行一样

java - 当 HTTP 响应内容类型不包含空格时测试 org.apache.http.entity.ContentType

java - 无法使用 PowerMockito stub 静态方法调用

unit-testing - 如何对 Kotlin 挂起函数进行单元测试

java - JVM 使用 Intel 编译器编译

java - 更改 WireMock __files 目录

java - 点对点文件传输的协议(protocol)推荐

java - 如何在另一个测试类中重用现有的 JUnit 测试?