21

WebTestCaseインスタンス内のentitymanagerをどのように取得できるのか疑問に思いました。

たとえば、テスト実行中にエンティティが実際にDBで作成されたかどうかを確認します。

それについて何かアイデアはありますか?

4

4 に答える 4

33

WebTestCase の保護されたメンバーであるカーネルを介して DIC (依存性注入コンテナー) を取得できます。

WebTestCase 内からこれを行うことができます。

$em = $this->kernel->getContainer()->get('doctrine.orm.entity_manager');

アップデート

あなた自身のコメントから、このためのショートカットさえあります(とにかくクライアントがあるため):

$client = $this->getClient();
$container = $client->getContainer();

docs に記載されているように。

于 2011-04-20T11:16:12.560 に答える
0
$this->container->get('doctrine.orm.entity_manager');
于 2016-09-21T15:31:29.207 に答える