如果我在运行 JUnit 时导入org.junit.Test,它会给我一个错误,如“没有使用 Test Runner JUnit 5 找到测试”。相反,如果我导入org.junit.jupiter.api.Test,那么我可以运行 JUnit 测试。
1 回答

饮歌长啸
TA贡献1951条经验 获得超3个赞
这org.junit.Test
是一个 JUnit 4 注释。Junit5 测试运行器不会发现用org.junit.Test
.
Junit5 测试运行器将发现一个用org.junit.jupiter.api.Test
.
因此,这解释了为什么在尝试运行不包含任何用org.junit.jupiter.api.Test
.
听起来您可能正在从 Junit4 迁移到 Junit5。如果是这样,您需要接受一些更改。Junit5文档提供了一些有用的提示,包括:
注释驻留在
org.junit.jupiter.api
包中。断言驻留在
org.junit.jupiter.api.Assertions
.假设存在于
org.junit.jupiter.api.Assumptions
.
@Before
并且@After
不再存在;使用@BeforeEach
and@AfterEach
代替。
@BeforeClass
并且@AfterClass
不再存在;使用@BeforeAll
and@AfterAll
代替。
@Ignore
不再存在:改用@Disabled
或其他内置执行条件之一
@Category
不复存在; 改为使用@Tag
。
@RunWith
不复存在; 被 取代@ExtendWith
。
@Rule
并且@ClassRule
不再存在;@ExtendWith
被和 取代@RegisterExtension
添加回答
举报
0/150
提交
取消