我如何告诉PHPUnit我的测试位于何处?

clo*_*jas 0 php phpunit

今天花了几个小时搜索并看到几个人有同样的问题后,我想我转向了SO.

我运行WAMP堆栈; 我已经使用PEAR成功安装了PEAR和PHPUnit 3.6.我可以通过命令行运行phpunit.

我的WAMP文件夹位于C:\ wamp - 我有几个www文件夹 - 为了举个例子,假设我有一个位于C:\ www\myproject的MVC应用程序.

/myproject
    /application
        /controllers
        /models
        /modules
            /forum
                /controllers
                /models
                /tests
                /views
        /views
    /public_html
    /tests
Run Code Online (Sandbox Code Playgroud)

当我运行类似的东西时,我想知道PHPUnit在哪里

phpunit ArrayTest

任何帮助非常感谢,谢谢

edo*_*ian 6

phpunit --help
PHPUnit 3.6.9 by Sebastian Bergmann.

Usage: phpunit [switches] UnitTest [UnitTest.php]
       phpunit [switches] <directory>
Run Code Online (Sandbox Code Playgroud)

这意味着您有两种选择:

如果你想执行一个测试,你可以说:

phpunit myTest /path/to/my/test/php
Run Code Online (Sandbox Code Playgroud)

或者你可以说

phpunit /path/to/my/projects/tests
Run Code Online (Sandbox Code Playgroud)

它将以递归方式扫描目录,查找以Test.php结尾的所有文件,并执行这些文件夹中的所有测试.

这在概述phpunit documentation regard test suite organisation和帮助输出中概述,并且老实说:到目前为止,我从未见过有人遇到任何问题:)


通常做的是人们将phpunit.xml.dist文件放在他们的项目根目录中.

在该文件中,您可以指定测试位置,测试套件引导程序和其他配置选项的所有内容. Check the xml file docs

这允许您只需键入phpunit并运行测试.