Как видно из названия, я хотел бы знать, как загрузить данные в методе setUpBeforeClass
.Класс тестирования расширяется Liip\FunctionalTestBundle\Test\WebTestCase
.
На данный момент у меня есть это:
public function setUp()
{
$this->client = $this->createClient();
$this->fixtures = $this->loadFixtures([
'App\DataFixtures\MyFixtures',
// more fixtures
])->getReferenceRepository();
}
Однако испытания, похоже, занимают слишком много времени и в действительности нет необходимости загружать приборыперед каждым тестом.
Когда я пытался загрузить приборы в setUpBeforeClass
, у меня появляется ошибка:
Ошибка: использование $ this, когда не в контексте объекта в / home/cezar/phpprojects/livegene/vendor/liip/functional-test-bundle/src/Test/WebTestCase.php:252
Просмотр исходного кода LiipFunctionalTestBundle раскрытэтот фрагмент:
protected function loadFixtures(array $classNames = [], bool $append = false, ?string $omName = null, string $registryName = 'doctrine', ?int $purgeMode = null): ?AbstractExecutor
{
$container = $this->getContainer();
$dbToolCollection = $container->get('liip_functional_test.services.database_tool_collection');
$dbTool = $dbToolCollection->get($omName, $registryName, $purgeMode, <strong>$this</strong>);
$dbTool->setExcludedDoctrineTables($this->excludedDoctrineTables);
return $dbTool->loadFixtures($classNames, $append);
}
Можно ли сделать это, что я хочу, и если да, как это может быть достигнуто?