如何告诉PHPUnit我的测试所在的位置


How do I tell PHPUnit where my tests are located?

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

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

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

/myproject
    /application
        /controllers
        /models
        /modules
            /forum
                /controllers
                /models
                /tests
                /views
        /views
    /public_html
    /tests

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

phpunit阵列测试

非常感谢任何帮助,感谢

phpunit --help
PHPUnit 3.6.9 by Sebastian Bergmann.
Usage: phpunit [switches] UnitTest [UnitTest.php]
       phpunit [switches] <directory>

这意味着你有两个选择:

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

phpunit myTest /path/to/my/test/php

或者你可以说

phpunit /path/to/my/projects/tests

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

phpunit documentation regard test suite organisation和帮助输出中对此进行了概述,老实说:到目前为止,我从未见过有人对此有任何问题:)


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

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

这允许您只需键入phpunit,测试就会运行。

它正在当前目录中查找您的/tests。将(cd..)更改为包含项目的目录,然后运行phpunit。