Php Laravel behat CSRF令牌
我试图做第一个behat测试,但当我运行它时,我得到了TokenMis。。。错误。我知道为什么。因为它不会在我的表单中呈现标记。我向以下机构查询: $this->getSession()->getPage()->getHtml() 我得到:Php Laravel behat CSRF令牌,php,laravel,behat,Php,Laravel,Behat,我试图做第一个behat测试,但当我运行它时,我得到了TokenMis。。。错误。我知道为什么。因为它不会在我的表单中呈现标记。我向以下机构查询: $this->getSession()->getPage()->getHtml() 我得到: 通常必须是: 所以我的问题是我做错了什么 我的功能看起来: Feature: User Login To test if user can login to system Scenario: Successful Authentication
通常必须是:
所以我的问题是我做错了什么
我的功能看起来:
Feature: User Login
To test if user can login to system
Scenario: Successful Authentication
Given I sign in "email" "pw"
Then I should be sign in
配置:
default:
autoload:
'': %paths.base%/features/bootstrap
suites:
default:
contexts:
- 'FeatureContext'
paths:
- %paths.base%/features/default.feature
user_login_module:
contexts:
- 'UserLoginContext'
paths:
- %paths.base%/features/user-login.feature
extensions:
Laracasts\Behat:
env_path: .env.laravel.behat
Behat\MinkExtension:
default_session: laravel
base_url: http://localhost:8080
laravel: ~
FeatureContext文件(UserLoginContext):
请将其包含在刀片文件中。这将自动生成以下代码
<form action = "{{ url('test') }}" method="POST">
{{ csrf_field() }}
....
....
</form>
{{csrf_field()}}
....
....
编辑1:
我认为behat laravel扩展本身有一个缺陷,而不是您的代码 嗯。。当我使用selenium时,它会打开它的工作浏览器。现在我在想,如何让它在没有硒的情况下工作。
<form action = "{{ url('test') }}" method="POST">
{{ csrf_field() }}
....
....
</form>