所以,这是我的项目的结构
project_name
/classes
Calculator.php
/test
CalculatorTest.php
/vendor
// Related composer/phpunit etc ... stuff
composer.json
composer.lock
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 时,我收到以下错误:
警告:require_once(../ classes / Calculator.php):无法打开 stream:没有这样的文件或目录 第3行的C:\ wamp \ www \ phpunit \ test \ CalculatorTest.php
致命错误: require_once():无法打开所需的'../classes/Calculator.php' (include_path ='。; C:\ php \ pear')in 第3行的C:\ wamp \ www \ phpunit \ test \ CalculatorTest.php
我找不到修复方法。你有什么想法吗?
编辑
得到它,忘记了测试类中的 spl_autoload_register :
spl_autoload_register(function ($class) {
require_once 'classes/' . $class . '.php';
});
答案 0 :(得分:0)
您要在其他页面中打开该文件。所以路径不正确。
试试这个:
require_once dirname(__FILE__) . '/classes/Calculator.php
如果计算器与计算机测试类在同一个文件夹中,则不需要设置路径/类