为何PHPUnit无法识别测试方法?出现‘无测试找到’警告问题
问题原因与解决方案
核心原因
PHPUnit 9.x 默认仅识别两类测试方法:
- 方法名以小写
test开头的公共方法 - 带有
@test注解的公共方法
你的测试方法GetConceptInputsAnnual_lePasoArrayDevuelveString既不符合test开头的命名规则,也未添加@test注解,因此PHPUnit无法将其识别为测试方法,触发了"无测试找到"的警告。
解决方法(二选一即可)
方法一:修改测试方法名
将方法名改为以小写test开头,示例:
public function testGetConceptInputsAnnual_lePasoArrayDevuelveString(): void { // 原有测试代码保持不变 }
方法二:添加@test注解
在测试方法上方添加注解,无需修改方法名:
/** @test */ public function GetConceptInputsAnnual_lePasoArrayDevuelveString(): void { // 原有测试代码保持不变 }
额外说明
修改后重新执行测试命令,PHPUnit就能正常识别测试方法并执行断言逻辑,最终会出现你预期的断言失败结果(实际返回的是数据库查询数组,与断言的字符串'hola'不匹配)。
内容的提问来源于stack exchange,提问作者fuego
相关产品推荐
相关产品推荐

