![](/img/trans.png)
[英]PHP Fatal error: Class 'PHPUnit_Framework_TestCase' not found
[英]PHP unit - Class 'PHPUnit_Framework_TestCase' not found
我知道這個問題已經被問了一百次了,但我是 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 文件,但我不確定如何修改。
謝謝
您似乎有兩個問題中的一個或兩個。
安裝 PHPunit 5.7 的推薦機制是:
composer require --dev phpunit/phpunit:^5.7
或者,它可以作為單個phpunit.phar下載,可以像任何其他 PHP 腳本一樣運行。
你應該在你的測試文件中嘗試這個。
use PHPUnit\Framework\TestCase;
class MyDateTest extends TestCase
{
}
這是最新的正確書寫方式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.