编程语言
首页 > 编程语言> > php – Travis-CI:即使使用自动加载器也找不到类

php – Travis-CI:即使使用自动加载器也找不到类

作者:互联网

我是特拉维斯的新人,我现在正在用它来表达.我在Github上传了我的PHP项目,当我让它通过Travis测试它失败并给我这个错误.

PHP Fatal error:  Class 'controllers\Welcome' not found in /home/travis/build/ezylot/PHPSkeleton/tests/controllers/welcomeTest.php on line 4

我使用自动加载器加载类,在我的本地机器上没问题.我在bootsrap.php中包含自动加载器和PHPUnit Konfiguration-XML文件中的引导程序.

<?php
if (!@include __DIR__ . '/../vendor/autoload.php') {
    die('You must set up the project dependencies, run the following commands:
        wget http://getcomposer.org/composer.phar
        php composer.phar install');
}
?>

解决方法:

您最有可能在OSX上开发,它具有不区分大小写的文件系统并且测试通过. Travis使用区分大小写的文件系统.尝试将app / controllers / welcome.php重命名为app / controllers / Welcome.php.

一般来说,最好遵循PSR-1标准以避免自动加载问题.

标签:autoloader,php,travis-ci,phpunit
来源: https://codeday.me/bug/20190830/1767442.html