我终于尝试将单元测试集成到我的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
文件。这个文件在哪里,我该怎么知道它在哪里?感谢您的任何建议。
答案 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