“Mockito”的版本间的差异
跳到导航
跳到搜索
Jihongchang(讨论 | 贡献) (建立内容为“测试调用类的静态方法的示例:<syntaxhighlight lang="java"> import org.junit.jupiter.api.Test; import org.mockito.MockedStatic; import org.mockito.Moc…”的新页面) |
Jihongchang(讨论 | 贡献) |
||
第1行: | 第1行: | ||
− | + | 测试调用类的静态方法的示例 | |
+ | |||
+ | 需要先引入:<syntaxhighlight lang="xml"> | ||
+ | <dependency> | ||
+ | <groupId>org.mockito</groupId> | ||
+ | <artifactId>mockito-inline</artifactId> | ||
+ | <scope>test</scope> | ||
+ | </dependency> | ||
+ | </syntaxhighlight>单元测试代码:<syntaxhighlight lang="java"> | ||
import org.junit.jupiter.api.Test; | import org.junit.jupiter.api.Test; | ||
import org.mockito.MockedStatic; | import org.mockito.MockedStatic; |
2024年12月12日 (四) 05:04的版本
测试调用类的静态方法的示例
需要先引入:
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-inline</artifactId>
<scope>test</scope>
</dependency>
单元测试代码:
import org.junit.jupiter.api.Test;
import org.mockito.MockedStatic;
import org.mockito.Mockito;
import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.Mockito.*;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.junit.jupiter.MockitoExtension;
@ExtendWith(MockitoExtension.class)
public class MathUtilsTest {
@Test
public void testPrintSumMethodCalled() {
try (MockedStatic<MathUtils> mockedMathUtils = mockStatic(MathUtils.class)) {
// 模拟的调用场景,这里假设在某个业务逻辑代码中会调用MathUtils.printSum方法
// 例如以下是模拟调用
MathUtils.printSum(3, 5);
// 使用verify方法来验证MathUtils.printSum方法是否被调用,并且参数是否符合预期
mockedMathUtils.verify(() -> MathUtils.printSum(3, 5));
}
}
@Test
public void testPrintSumMethodCalledWithAnyParameters() {
try (MockedStatic<MathUtils> mockedMathUtils = mockStatic(MathUtils.class)) {
// 模拟的调用场景,这里假设在某个业务逻辑代码中会调用MathUtils.printSum方法
MathUtils.printSum(10, 20);
// 如果不关心具体传入的参数是什么,只想验证方法被调用了,可以使用anyInt()等参数匹配器(根据参数类型选择合适的匹配器)
mockedMathUtils.verify(() -> MathUtils.printSum(anyInt(), anyInt()));
}
}
}