所以,這裏是我的項目
無法運行PHPUnit的測試,不合格開口所需的類
project_name
/classes
Calculator.php
/test
CalculatorTest.php
/vendor
// Related composer/phpunit etc ... stuff
composer.json
composer.lock
的strucuture Calculator.php中
<?php
class Calculator{
public function double($input){
return $input * 2;
}
}
CalculatorTest.php的
<?php
require_once '../classes/Calculator.php';
class CalculatorTest extends PHPUnit_Framework_TestCase{
public $testClass;
public function setUp(){
$testClass = new Calculator;
}
public function testDouble(){
$result = $testClass->double(2);
$this->assertEquals(4, $result);
}
}
當我運行PHPUnit的../../test,我得到以下錯誤:
Warning: require_once(../classes/Calculator.php): failed to open stream: No such file or directory in C:\wamp\www\phpunit\test\CalculatorTest.php on line 3
Fatal error: require_once(): Failed opening required '../classes/Calculator.php' (include_path='.;C:\php\pear') in C:\wamp\www\phpunit\test\CalculatorTest.php on line 3
我無法找到一個解決。你有什麼主意嗎?
編輯
得了吧,忘了spl_autoload_register測試類中:
spl_autoload_register(function ($class) {
require_once 'classes/' . $class . '.php';
});
我不明白你的意思。你能更精確嗎? – Mornor
您正在打開C:\ wamp \ www \ phpunit \ test \ CalculatorTest.php,並將路徑設置爲require_once'../classes/Calculator.php';這意味着你要去測試文件夾之外(../),我認爲你的文件夾類在測試文件夾內。嘗試沒有../ so require_once'classes/Calculator.php'; –
它的工作原理!但我可以向你保證,我的類文件夾不在我的測試文件夾中... – Mornor