【问题标题】:How to run a single phpUnit test in a separate process?如何在单独的进程中运行单个 phpUnit 测试?
【发布时间】:2013-10-18 17:32:57
【问题描述】:

是否可以在同一进程中运行 phpUnit 测试的测试套件,但确定要在自己的进程中运行的特定测试?

我通常使用

@runTestsInSeparateProcesses
@preserveGlobalState disabled

对于整个测试套件,但我只需要单独运行一个方法,并且我希望让其余部分在单个进程中运行来提高速度。

谢谢

【问题讨论】:

    标签: php unit-testing phpunit


    【解决方案1】:

    正如您在PHPUnit manual 中看到的,您可以使用@runInSeparateProcess 标签:

    class MyTest extends PHPUnit_Framework_TestCase
    {
        /**
        * @runInSeparateProcess
        */
        public function testInSeparateProcess()
        {
            // ...
        }
    }
    

    【讨论】:

    • 使用简单的echo "working?"; 实现该功能会导致我的 phpUnit 测试套件“挂起”并且永远不会完成执行。有什么想法吗?
    • 你的意思是使用文档块?
    • 使用 docblock 会导致我的测试套件中的函数挂起,但当我使用上面的基本 shell 运行脚本时不会。看来我可能有问题,因为我正在通过继承自的抽象类扩展 PHPUnit_Extensions_Database_TestCase。
    • 我也遇到过这种情况。你有想过这个吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-21
    • 2016-11-07
    • 2014-11-23
    相关资源
    最近更新 更多