一个“简单”的问题:如何使用Arcanist自动运行PHPunit测试?
根据documentation,我应该首先加载一个定制库。如上所述,here,我应该创建一个.arcconfig文件并加载适当的库。
因此:我在项目中创建了一个目录"arc_libs“,并在目录"src”中使用arc liberate生成所需的文件。我的配置现在是:
{
"project.name" : "arc_libs",
"phabricator.uri" : "https://phabricator.xxx.xxx.net/",
"unit.engine" : "PhpunitTestEngine",
"load" : ["arc_libs/src"]
}因为我可以运行arc unit,所以可以加载该库
[matthijs@xx xxx]$ arc unit
No tests to run.但是,正如您所看到的,没有要运行的测试。我们将测试放在"project_root/ tests“中,据我所知,我应该在”documentation“中创建一个__tests__目录(可能是我的arc_libs目录?)
但是,我希望运行现有的PHPunit测试文件,而不是需要创建的新测试。我尝试使用符号链接等,但我不能得到它的工作。奥法师检测不到我的测试。
所以我的问题是:我如何使用arcanist自动运行我现有的PHPunit测试?
(注意,我们使用的是应该自动运行arc unit的arc diff )
发布于 2014-09-19 17:38:08
您链接的文档不会很有用--它是针对想要测试库的Phabricator开发人员的。There is some user-facing documentation for customising unit test tasks,但这不是很好。幸运的是,很容易让Arcanist使用包含的PhpunitTestEngine运行项目的单元测试:
phpunit.xml文件。这应该是a standard PHPUnit configuration file。您可以通过在.arcconfig中运行phpunit -c phpunit.xml.phpunit_config选项来测试这一点:{ "phabricator.uri":"https://phabricator.xxx.xxx.net/","unit.engine":"PhpunitTestEngine","phpunit_config":"phpunit.xml“}
arc unit进行测试。尽管用户文档很少,但the source code for PhpunitTestEngine有一些注释,并且相当简洁。如果遇到问题,通读测试引擎代码可以帮助您找到问题所在。
发布于 2014-09-27 04:17:14
$ arc unit --help
unit [options] [paths]
unit [options] --rev [rev]
Supports: git, svn, hg
Run unit tests that cover specified paths. If no paths are specified,
unit tests covering all modified files will be run.默认情况下,圆弧直线和圆弧单位是作为更改过程的一部分使用的,因此默认情况下,它只作用于更改的文件。很有可能,您没有任何更改过的文件。您可能希望指定一些路径,或者运行arc unit --everything来运行所有测试。
https://stackoverflow.com/questions/25893860
复制相似问题