Отключить брандмауэр безопасности в тестовой среде на Symfony2

Я пытаюсь отключить брандмауэр безопасности для тестовой среды в Symfony2, но мне не повезло. Вот что я имею в config_test.yml:

security: firewalls: web: pattern: .* security: false anonymous: ~ 

Однако это не отключает безопасность. Любые идеи, как я могу полностью отключить безопасность для определенного брандмауэра, когда в тестовом env?

Как упоминалось в аналогичной теме, отключите брандмауэр при разработке следующего правила в вашем security.yml:

 firewalls: dev: pattern: ^/ security: false 

Возможное решение

Вы можете извлечь из config.yml эту часть кода:

 imports: - { resource: security.yml } 

И поместите его отдельно в config_dev.yml и config_prod.yml . В этом случае config_test.yml не будет импортировать конфигурацию безопасности, и в результате у вас не будет безопасности в тестовой среде.

Не меняйте security.yml , вместо этого создавайте специальное правило для тестирования.

Вы должны отключить всю конфигурацию брандмауэров безопасности на вашем config_test.yml :

  imports: - { resource: config_dev.yml } framework: test: ~ session: storage_id: session.storage.mock_file profiler: collect: false web_profiler: toolbar: false intercept_redirects: false swiftmailer: disable_delivery: true security: firewalls: dev: pattern: ^/ security: false 

Заметка

Имейте в виду, что config_test.yml импортирует config_dev.yml , который импортирует config.yml . Поэтому вы должны переопределить всю базовую конфигурацию в тестовом конфигурационном файле, чтобы он работал.