В модульных тестах Codeception все методы public, определенные в Unit.php и UnitTester.php, доступны в $this->tester.
Некоторые файлы поддержки для модульных тестов Codeception:
tests/_support/_generated/UnitTesterActions.php
tests/_support/Helper/Unit.php
tests/_support/UnitTester.php
$this->tester является экземпляром UnitTester. UnitTester.php uses _generated\UnitTesterActions который сам встраивает в него методы из Unit.php при инициализации тестов. Помимо того, что IDE не может разрешить методы в $this->tester до тех пор, пока тесты не будут запущены, в чем разница? Существует ли лучшая практика или это просто дело вкуса? Почему есть два разных способа сделать одно и то же?