跳过测试
在开发过程中,有时可能需要暂时禁用测试。我们建议使用
skip()
方法。
1
它
(
‘
有家
‘
,
功能
()
{2
//3
})
->
跳过
();
运行测试时,Pest 会通知您任何被跳过的测试。

您还可以提供跳过测试的原因,Pest 将在运行测试时显示该原因。
1
它
(
‘
有家
‘
,
功能
()
{2
//3
})
->
跳过
(
‘
暂时不可用
‘
(英文):
此外,有时您可能希望根据给定条件跳过测试。在这种情况下,您可以提供一个布尔值作为
skip()
方法。仅当布尔值计算结果为
true
。
1
它
(
‘
有家
‘
,
功能
()
{2
//3
})
->
跳过
($条件)
==
真的
,
‘
暂时不可用
‘
(英文):
你可以将闭包作为第一个参数传递给
skip()
方法将条件的评估推迟到
beforeEach()
您的测试用例的钩子已被执行。
1
它
(
‘
有家
‘
,
功能
()
{2
//3
})
->
跳过
(
fn
() =>
数据库
::
获取驱动程序名称
()
!==
‘
mysql
‘
,
‘
数据库驱动程序不受支持
‘
(英文):
要跳过特定操作系统上的测试,您可以使用
skipOnWindows()
,
skipOnMac()
, 或者
skipOnLinux()
。
1
它
(
‘
有家
‘
,
功能
()
{2
//3
})
->
skipOnWindows
();
// 或skipOnMac() 或skipOnLinux() ...
或者,您可以使用以下命令跳过除一个操作系统之外的所有操作系统的测试
onlyOnWindows()
,
onlyOnMac()
, 或者
onlyOnLinux()
。
1
它
(
‘
有家
‘
,
功能
()
{2
//3
})
->
仅限 Windows
();
// 或 onlyOnMac() 或 onlyOnLinux() ...
有时,你可能想跳过特定 PHP 版本上的测试。在这种情况下,你可以使用
skipOnPhp()
方法。
1
它
(
‘
有家
‘
,
功能
()
{2
//3
})
->
skipOnPhp
(
‘
>=8.0.0
‘
(英文):
有效的运算符
skipOnPhp()
方法是
>
,
>=
,
<
, 和
<=
。
最后,你甚至可以调用
skip()
您的方法
beforeEach()
钩子可以方便地跳过整个测试文件。
1
beforeEach
(
功能
()
{2
//3
})
->
跳过
();
创建全部
您可能需要添加几个空测试,以确保以后不会忘记添加它们。
todo()
在这种情况下可能会有用。
1
它
(
‘
有家
‘
,
功能
()
{2
//3
})
->
全部
();
随着代码库的扩展,建议您考虑提升测试套件的速度。为了帮助您,我们提供了有关优化测试套件的全面文档: 优化测试