首先,对不起我的英语!
我正在编写带有代码的功能测试,我正在使用ZF2模块,到目前为止所有的东西都运行良好。问题出现在我尝试提交表单时,测试似乎正确发送参数,但$ _POST始终为空。
我的ExempleCept.php
$I = new TestGuy($scenario);
$I->wantTo('perform actions and see result');
$I->amOnPage('/user/login');
$I->submitForm('#login', ['email' => 'teste123@teste.com.br', 'password' => '789456']);
$I->seeCurrentUrlEquals('/user/login');
vendor/bin/codeception run --debug
输出
* I submit form "#login",{"email":"teste123@teste.com.br","password":"789456"}
array(0) {
}
=> [Response] 200
=> [Page] http://localhost/user/login
* I see current url equals "/user/login"
=> [Uri] /user/login
=> [Method] post
=> [Parameters] {"email":"teste123@teste.com.br","password":"789456"}
=> [Response] 200
=> [Page] http://localhost/user/login
UserController :: loginAction()
public function loginAction() {
$form = new LoginForm ( 'login' );
$request = $this->getRequest ();
if ($request->isPost ()) {
var_dump($_POST);
...
请注意,我的操作上的var_dump行在“*我提交表单”之后立即调用,因此POST即将到来!
那么,谁能帮帮我? 谢谢!
被修改
我已尝试使用WebGuy API进行相同的测试(接受),并且它有效。但是,测试必须由Jenkins执行,并且WebGuy需要运行http服务器,然后我真的需要TestGuy测试工作