sách gpt4 ai đã đi

phpunit 在测试之间重置环境

In lại 作者:可可西里 更新时间:2023-11-01 13:11:32 30 4
mua khóa gpt4 Nike

我有一个 symfony2 应用程序,我正在使用 phpunit。

我有一些单元测试,其中我使用模拟来模拟 AppKernel 和向应用程序发出“真实”请求的功能测试。单独运行单元测试或功能测试时,一切正常。

当我想一次运行所有测试时,它变得很讨厌。一旦单元测试完成,phpunit 就会停止,并告诉我:


fatal error :无法在第 35 行的 C:\Users\sebastian\workspace\ppInterface\app\AppKernel.php 中重新声明类 AppKernel

我不明白这一点,因为我认为 phpunit 会在它自己的环境中运行每个测试。这似乎并非如此。我该怎么做才能把事情做好并“重置”测试运行的环境?

1 Câu trả lời

默认情况下,PHPUnit 不会重置所有内容,尽管这是可能的。

包括 - 你的问题 - 没有被重置(并且不能在一个单一的过程中)。一种解决方案是使用 require_once Còn hơn là require,或者在 phpunit.xml 文件或测试用例中使用进程隔离( @runTestsInSeparateProcesses) 或测试方法 (@runInSeparateProcess).

您还可以影响在测试之间重置的内容:

  • @backupGlobals
  • @backupStaticAttributes

关于phpunit 在测试之间重置环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7268823/

30 4 0
可可西里
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com