Codeception使用Laravel5身份验证的功能API测试

时间:2016-06-27 15:52:25

标签: php laravel laravel-5 codeception

我正在尝试测试一个API,要求用户通过网络通过Laravel登录。 Javascript将使用CSRF令牌访问REST API。当我尝试使用Codeception测试时,看起来sendPOST调用无法识别身份验证。

我在Api Suite中使用以下模块:

modules:
    enabled:
        - Laravel5
        - \Helper\Api
        - REST:
              depends: PhpBrowser
              url: http://app.dev/api/

这是我的测试:

public function verifyFileIsRequired(ApiTester $I)
{
    $I->amLoggedAs($this->user);
    $I->sendPOST(self::URL_GOES_HERE);
    $I->seeResponseCodeIs(422);
}

我一直收到401响应代码。我觉得这是因为sendPOST方法没有发送Laravel会话信息。有没有办法让这项工作?

谢谢!

1 个答案:

答案 0 :(得分:1)

Naktibalda指出我正确的方向来解决这个问题。 发布答案,其他人遇到这个问题。

在我的api.suite.yml中,我应该有依赖于Laravel5的REST模块。

modules:
    enabled:
        - Laravel5
        - \Helper\Api
        - REST:
            depends: Laravel5    <-- this was the fix