gpt4 book ai didi

php - 如果断言失败,如何让 PHPUnit 执行某些操作

转载 作者:可可西里 更新时间:2023-10-31 22:16:13 27 4
gpt4 key购买 nike

我正在测试函数是否正确地将数据添加到数据库,但我希望在测试完成后删除测试数据。如果测试失败,它会在失败时退出并且永远不会有机会删除测试行。

这是唯一一个命中数据库的测试,所以我真的不想在 tearDown() 方法中做任何事情。

我正在测试一个 $obj->save() 类型的方法,该方法保存从平面文件解析的数据。

最佳答案

如果您的数据库支持事务,您可以在测试开始时发出 start_transaction。如果测试失败(导致程序退出),将执行隐式回滚并撤消您的更改。如果测试成功,则发出显式回滚。

另一种选择是将断言包装在 try-catch 语句中 - 这可以防止测试停止(以及捕获屏幕截图等其他自动功能),并且您可以从那时起做任何您需要的事情。

关于php - 如果断言失败,如何让 PHPUnit 执行某些操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3979254/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com