Я немного новичок с Трэвисом, и сейчас я экспериментирую с этим. Я загрузил мой проект PHP на Github и когда я позволю ему проверить через 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, которая имеет нечувствительную к регистру файловую систему и тесты пройдены. Трэвис использует чувствительную к регистру файловую систему. Попробуйте переименовать app/controllers/welcome.php
в app/controllers/Welcome.php
,
В общем, это хорошая идея, чтобы следовать PSR-1 Стандарт, чтобы избежать проблем с автозагрузкой.
У меня был короткий открытый тег php в верхней части файла класса.
<?
в отличие от
<?php
Это сломало его на пульте, но не на моем местном. Что странно, потому что я ожидал, что это тоже сломается локально.
Выкладываем это на случай, если кто-то еще окажется в такой же странной ситуации.