【发布时间】:2015-08-28 15:41:03
【问题描述】:
我在尝试在 Travis CI 上运行 PHP 单元测试时遇到了一个奇怪的问题。
.travis.yml
sudo: false
language: php
php:
- 5.4
env:
- VUFIND_HOME=$PWD VUFIND_LOCAL_DIR=$PWD/local
before_script:
- pear install pear/PHP_CodeSniffer
- pear channel-discover pear.phing.info
- pear install phing/phing
- composer global require fabpot/php-cs-fixer
- export PATH="$HOME/.composer/vendor/bin:$PATH"
- phpenv rehash
script:
- phpunit --stderr --configuration module/VuFind/tests/phpunit.xml
- phpunit --stderr --configuration module/Swissbib/tests/phpunit.xml
- phpcs --standard=PEAR --ignore=*/config/*,*/tests/* --extensions=php $PWD/module
- phing php-cs-fixer-dryrun
module/VuFind/tests/phpunit.xml是第三方框架
module/Swissbib/tests/phpunit.xml 是我们自己的代码
模块/Swissbib/tests/phpunit.xml
<phpunit bootstrap="Bootstrap.php">
<testsuites>
<testsuite name="sbvfrd">
<directory>.</directory>
</testsuite>
</testsuites>
</phpunit>
来自第三方框架的测试运行没有错误。我们自己的测试不起作用,我们收到错误消息:
$ phpunit --stderr --configuration module/Swissbib/tests/phpunit.xml
Could not read "module/Swissbib/tests/phpunit.xml".
在本地 (Mac OS X) 运行所有测试。奇怪的是,module/Swissbib/tests/phpunit.xml 中定义的 Bootstrap.php 在 Travis CI 上完全运行,我使用 echo 语句验证了这一点。然而 phpunit 告诉我们它无法读取 phpunit.xml。
特拉维斯:https://travis-ci.org/swissbib/vufind
回购:https://github.com/swissbib/vufind(开发分支)
有什么想法可能会出错吗?
【问题讨论】: