PHPUnit安装

时间:2015-07-27 21:16:43

标签: php phpunit

我终于尝试将单元测试集成到我的PHP工作流程中,所以我在these instructions之后下载了PHPUnit,转载如下:

➜ wget https://phar.phpunit.de/phpunit.phar

➜ chmod +x phpunit.phar

➜ sudo mv phpunit.phar /usr/local/bin/phpunit

然而,当我尝试运行一个简单的测试用例时:

phpunit --bootstrap src/autoload.php tests/MoneyTest

我收到错误Cannot open file src/autoload.php。我查看了我最初下载php的目录以及/ user / local / bin /但我在任何地方都没有看到phpunit文件夹或autoload.php文件。这个文件在哪里,我该怎么知道它在哪里?感谢您的任何建议。

3 个答案:

答案 0 :(得分:0)

我看到很多人在安装和运行phpunit时遇到问题。我使用netbeans和git。 Netbeans为您创建一个测试用例并运行它。提供有关测试的完整报告。因此,如果你不知道如何使用命令行安装en下载netbeans并运行phpunit就像任何其他应用程序一样。  也请访问此链接https://netbeans.org/kb/docs/php/phpunit.html

答案 1 :(得分:0)

我有同样的问题,我解决了。 指定autoload.php的绝对路径,例如/srv/www/test/src/autoload.php

答案 2 :(得分:0)

如果你的工作流使用composer,你应该用它安装phpunit(composer install phpunit / phpunit),这样会更容易。

您需要为测试套件添加xml文件(例如,在测试文件夹的根目录下)

<?xml version="1.0" encoding="UTF-8"?>

<!-- https://phpunit.de/manual/current/en/appendixes.configuration.html -->
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/4.8/phpunit.xsd"
         backupGlobals="false"
         colors="true"
         bootstrap="../vendor/autoload.php"
>
    <php>
        <ini name="error_reporting" value="-1" />
    </php>

    <testsuites>
        <testsuite name="Project Test Suite">
            <directory>tests/*</directory>
        </testsuite>
    </testsuites>

    <filter>
        <whitelist>
            <directory>tests</directory>
            <exclude>
                <directory>tests/fixtures</directory>
            </exclude>
        </whitelist>
    </filter>
</phpunit>

在bootstrap中,您必须指定自动加载文件的路径

运行测试:

./ vendor / bin / phpunit -c tests / phpunit.xml