如何在cypress中为像API这样的邮递员编写脚本

时间:2020-04-16 13:37:38

标签: api cypress

我是赛普拉斯的新朋友, 我想在赛普拉斯中创建API的第一个代码。

这是细节

POST
https://www.mywebsite.com/myproject/get-customer-login-url


HEADER
------
KEY: token 
VALUE: HKt7854UHTFGR78#78
DESCRIPTION: 

KEY: Content-Type
VALUE: application/json
DESCRIPTION: 

BODY
-----
RAW: 
{ 
   "customerid": "54607"
}

使用上述参数,我在邮递员中得到了低于结果和状态的信息。

RESULT:
"{\"url\":\"default.aspx?rootid=843&companyId=54607&eccuserid=0&isloginspecialrole=False&userid=e91zNO%2bBBCI%3d&t=view\",\"code\":\"1\"}"

STATUS"
200 OK

我需要使用这些POST URL和参数/密钥为cypress创建脚本。 并希望像

这样的响应
https://www.mywebsite.com/myproject/default.aspx?rootid=843&companyId=54607&eccuserid=0&isloginspecialrole=False&userid=e91zNO%2bBBCI%3d&t=view

有人可以帮我解决我的柏树脚本吗?

1 个答案:

答案 0 :(得分:1)

这里是一个示例,您可能需要对其进行调整。本示例仅验证响应的状态为200,但是您也可以验证响应的内容。有关详细信息,请参考赛普拉斯文档:

describe('Test the api', function() {
it ('status should be 200', () => {
      cy.request({
        method: 'POST',
        url: 'your-url',
        followRedirect: false,
        headers: {
            'token': 'HKt7854UHTFGR78#78',
            'Content-Type': 'application/json',
        },
        body: {"customerid": "54607"},
    })
      .then((response) => {
        expect(response.status).to.equal(200)
      })
    })
})