codeigniterでphpunit testを実行していますが、このコードでadmin_test.phpファイルがあります。codeigniterでphpunit testを実行できません。CIが見つかりません。エラー
class Admin_test extends PHPUnit_Framework_TestCase{
private $CI;
public function __construct()
{
// create instance variable
$this->CI = &get_instance();
}
public function testRenderReturnsHelloWorld(){
$this->CI->load->controller('admin');
$data = $this->admin->render();
$expected = 'Hello World';
$this->assertEquals($expected, $data);
}
}
phpunitテストを実行すると、このエラーが発生します。
PHP Fatal error: Call to undefined function get_instance() in C:\Users\farhana\Desktop\ci\tests\application\controllers\admin_test.php on line 16
PHP Stack trace:
PHP 1. {main}()
私はPHPUnitのテストを取得するために作曲を使用ので、作曲はここbootstrap.phpのファイル
をロードしているので、他のチュートリアルが仕事を文句を言わない、次は私のphpunit.xmlファイル
<?xml version="1.0" encoding="UTF-8" ?>
<phpunit bootstrap="./vendor/autoload.php"
color = "true"
convertErrorsToExpections="true"
convertNoticesToExceptions="true"
convertWarningsToExpections="true"
syntaxCheck="false"
>
<testsuites>
<testsuite name="Unit Tests">
<directory>./tests/application/controllers/admin_test.php</directory>
</testsuite>
</testsuites>
</phpunit>
私はクラスがCI_Controllerを拡張するべきかどうか分からないのですか? – Deblugger
@Deblugger私はphpunitテストを実行しようとしています、それはCI_Controllerを拡張することはできません、どのように単体テストを実行しますか?私はそれにショットを与えることができます – FaF
しかし、もしそれがCI_Controllerを拡張しない場合は、私はCodeigniter関数を使用することはできませんと思います – Deblugger