我知道这个问题已被问了一百次,但我是phpUnit的新手,我不知道如何使用以前的答案来帮助我的案例
这是我的文件夹结构
/src/MyDate.php
/src/Autoload.php
/tests/MyDateTest.php
/vendor/phpunit/phpunit
自动加载文件中包含此内容
<?php
spl_autoload_register(
function($class) {
static $classes = null;
if ($classes === null) {
$classes = array(
'mydate' => '/MyDate.php'
);
}
$cn = strtolower($class);
if (isset($classes[$cn])) {
require __DIR__ . $classes[$cn];
}
}
);
MyDateTest.php有这个
<?php
class MyDateTest extends PHPUnit_Framework_TestCase
{
|
|
test be here
当我跑步时
phpunit --bootstrap= src/autoload.php tests/MyDateTest.php
我收到此错误
Fatal error: Class 'PHPUnit_Framework_TestCase' not found in C:\wamp64\www\datechallange\tests\MyDateTest.php on line 3
我尝试了类似答案的每个解决方案。尝试要求文件与类,但然后缺少其他类。我尝试修改自动加载文件以包含phpunit库,但要么我做错了,要么就是这样。我试图修改xml文件,所以我不需要使用--bootstrap,但我有同样的错误。
我想关键是修改autoload.php文件,但我不确定如何。
由于
答案 0 :(得分:4)
您似乎有两个问题中的一个或两个。
安装PHPunit 5.7的推荐机制是:
composer require --dev phpunit/phpunit:^5.7
或者,它可以作为单个phpunit.phar下载,可以像任何其他PHP脚本一样运行。
答案 1 :(得分:0)
你应该在你的测试文件中试试这个。
use PHPUnit\Framework\TestCase;
class MyDateTest extends TestCase
{
}
这是最新的正确书写方式。