在 Symfony 的说明书中,有一个名为How to Simulate Authentication with a Token in a Functional Test的页面。其中,据说:
如何在功能测试中模拟 HTTP 身份验证中描述的技术更简洁,因此是首选方法。
此外,在上面引用链接的页面上,文档说:
诀窍是在防火墙中包含 http_basic 密钥以及 form_login 密钥
这告诉我,拥有form_login
密钥和密钥是可以的http_basic
,并且应该以某种方式http_basic
优先。
这是我的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
liip_functional_test:
cache_sqlite_db: true
doctrine:
dbal:
default_connection: default
connections:
default:
driver: pdo_sqlite
path: %kernel.cache_dir%/test.db
security:
firewalls:
default:
http_basic: ~
但是,当我在环境中打开我的应用程序时test
,我仍然会被重定向到 login_form URL。
为什么没有http_basic
像文档所说的那样设置行为,即它被激活而不是form_login
?