事象・問題
PHPUnitの動作確認として、テストクラスを実行したのですが、
「Class "XXXX\src\Sample" not found」が発生してうまく解決できなくてはまっています。
use文の使い方が間違っていると思いいろいろ試したのですがそれでもうまくいきませんでいた。
エラーの解消の仕方をご教授お願いします。
ファイル・フォルダ構成
. └── root ├── composer.json ├── src │ └── Sample.php ├── test │ └── SampleTest.php └── vendor
ソースコード
Sample.php
<?php namespace root\src; class Sample { public function hello() { return "Hello"; } }
SampleTest.php
<?php use PHPUnit\Framework\TestCase; use root\src\Sample; class SampleTest extends TestCase { public function testHello() { $sample = new Sample(); ###ここでエラーが起きている $result = $sample->hello(); $this->assertEquals("Hello", $result); } }
composer.json
{ "name": "root/root", "autoload": { "psr-4": { "Root\\Root\\": "src/" } }, "require-dev": { "phpunit/phpunit": "^8" } }
PHPUnit実行結果
rootで vendor/bin/phpunit test/SampleTest.php を実行
root@9d176b81583d:~# vendor/bin/phpunit test/SampleTest.php PHP Warning: PHP Startup: Unable to load dynamic library 'php_mbstring.dll' (tried: /usr/lib/php/20210902/php_mbstring.dll (/usr/lib/php/20210902/php_mbstring.dll: cannot open shared object file: No such file or directory), /usr/lib/php/20210902/php_mbstring.dll.so (/usr/lib/php/20210902/php_mbstring.dll.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 PHPUnit 8.5.33 by Sebastian Bergmann and contributors. E 1 / 1 (100%) Time: 57 ms, Memory: 4.00 MB There was 1 error: 1) SampleTest::testHello Error: Class "root\src\Sample" not found /root/test/SampleTest.php:11 ERRORS! Tests: 1, Assertions: 0, Errors: 1.
バージョンなど
PHP 8.1.2-1ubuntu2.11 (cli)
PHP Unit 8.5.33
回答1件
あなたの回答
tips
プレビュー