我有一个叫做计算的方法
public class Calculator {
public void calc(int a, int b){
String condition = "first";
int result = 0;
if (condition.equals("first") {
condition = "no need";
else { result = a + b;}
Run Code Online (Sandbox Code Playgroud)
之后打印结果,无论如何,我需要进行一个测试,看看条件值是否更改为“不需要”或保持“第一”,我如何使用mockito测试来检查这一点?到目前为止我已经尝试过,但没有成功。一个好的理论答案就很好,不需要代码。
一个好的理论答案就好了
Mockito 不是一个测试框架,它是一个模拟框架。
您无需使用 Mockito 进行测试,只需替换依赖项中的行为,以便可以在特定且难以重现的条件下测试代码的行为。
因此,问题的前提是有缺陷的,不仅仅是因为您没有正确使用 Mockito,还因为您在此代码中没有可以替代行为的依赖项。
但假设您实际上的意思是“我如何使用测试框架来测试它”:您也不能这样做。
测试框架只是运行 Java 程序的 Java 程序。它们并不神奇:它们可以测试的只是返回值、抛出的异常和副作用(例如日志消息、打印的内容、状态的更改)。
这里唯一改变的是局部变量。您无法测试有关这些的任何内容,因为它们在定义它们的方法之外是不可观察的。