Codeception / Codeception/AspectMock
Cannot was not found by locator
- Vorherrschende Sprache
- PHP
- Sterne
- 784
- Forks
- 132
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Using Yii2,
As soon as I extend my controllers with a custom class or implement custom interface I get following errors:
```
Class app\controllers\BaseController was not found by locator
Class app\models\MyInterface was not found by locator
```
Unfortunately, to keep my tests working I had to remove my interface. But I cannot remove my BaseController.
My Kernel is defined like so in __bootstrap.php
```
require __DIR__ .'/../vendor/autoload.php';
$kernel = Kernel::getInstance();
$kernel->init([
'includePaths' => [
__DIR__ . '/../service',
__DIR__ . '/../controllers',
__DIR__ . '/../model',
__DIR__ . '/../vendor/yiisoft',
],
'excludePaths' => [
__DIR__ . '/../tests'
],
'cacheDir' => '/tmp/aopcache',
]);
$kernel->loadFile(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php');
$kernel->loadFile(__DIR__ . '/../vendor/yiisoft/yii2/base/ErrorException.php');
$kernel->loadFile(__DIR__ . '/../vendor/yiisoft/yii2/base/UnknownClassException.php');
```
Is this a known problem or am I doing something obviously wrong?
I created SO question as well:
https://stackoverflow.com/questions/59751752/error-class-was-not-found-by-locator-when-running-tests
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginne mit der Yii2-Bootstrap-Konfiguration in __bootstrap.php, insbesondere mit Kernel::init, includePaths, excludePaths und den aufgeführten loadFile-Aufrufen. Reproduziere beim Ausführen der Tests die Locator-Fehler für app\controllers\BaseController und app\models\MyInterface und ermittle anschließend, ob die gemeldete Konfiguration diese Klassen unterstützen kann. Als erledigt gilt die Aufgabe, wenn die Ursache und eine kompatible Lösung dokumentiert oder verifiziert sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- php
- Bereich
- testing
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100