PHPUnit 报告 PHPUnit_Framework_Exception

标签 phpunit symfony

我在一个包中添加了一个简单的测试。

按照手册中的建议,我尝试让 PHPUnit 加载配置:

phpunit -c /app

phpunit.xml 看起来像这样:
<?xml version="1.0" encoding="UTF-8"?>

<!-- http://www.phpunit.de/manual/current/en/appendixes.configuration.html -->
<phpunit
    backupGlobals               = "false"
    backupStaticAttributes      = "false"
    colors                      = "true"
    convertErrorsToExceptions   = "true"
    convertNoticesToExceptions  = "true"
    convertWarningsToExceptions = "true"
    processIsolation            = "false"
    stopOnFailure               = "false"
    syntaxCheck                 = "false"
    bootstrap                   = "bootstrap.php.cache" >

    <testsuites>
        <testsuite name="Project Test Suite">
            <directory>../src/*Bundle/Tests</directory>
        </testsuite>
    </testsuites>
</phpunit> 

我得到的错误信息是:
root@h0x03:/var/www/fi/FrontendIntegrator# phpunit -c app/
PHP Fatal error:  Uncaught exception 'PHPUnit_Framework_Exception' with message 'Neither "Project Test Suite.php" nor "Project Test Suite.php" could be opened.' in /usr/share/php/PHPUnit/Util/Skeleton/Test.php:102
Stack trace:
#0 /usr/share/php/PHPUnit/TextUI/Command.php(157): PHPUnit_Util_Skeleton_Test->__construct('Project Test Su...', '')
#1 /usr/share/php/PHPUnit/TextUI/Command.php(129): PHPUnit_TextUI_Command->run(Array, true)
#2 /usr/bin/phpunit(49): PHPUnit_TextUI_Command::main()
#3 {main}
  thrown in /usr/share/php/PHPUnit/Util/Skeleton/Test.php on line 102

PHPUnit 显然会加载该文件并尝试查找以测试套件名称命名的 PHP 文件。我找不到任何关于它为什么这样做或这样的文件应该是什么样子的信息。

最佳答案

似乎 PHPUnit 试图找到一个以 testsuite-tag 的名称属性命名的文件

  • 如果是 找不到任何测试 (错误命名或错误目录)或
  • 如果有 fatal error 发生在测试脚本中;这发生得太早以至于 PHPUnit 无法将该文件的内容识别为测试 - 因为在此之前无法加载任何类。
  • 关于PHPUnit 报告 PHPUnit_Framework_Exception,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7553311/

    相关文章:

    unit-testing - 使用单实例 session 测试 Zend Controller

    php - 单元测试是否意味着测试必须被模拟?

    php - KnpGaufette/Symfony2/AmazonS3

    php - 在 Symfony v4.2 中将带有数据的数组传递给 ChoiceType (html select)

    Laravel:是否可以在不实际通过 URI 的情况下直接测试函数的 json 响应输出?

    laravel - 使用 PHPUnit 测试时是否可以隐藏堆栈跟踪?

    php - Symfony Doctrine 架构更新未检测到可为空日期时间的更改

    Symfony2 : Using the Finder Component for S3

    database - 函数之间的共享连接

    authentication - 使用电子邮件而不是用户名的Symfony2身份验证/登录