首页 > 编程知识 正文

cypress测试框架官网,主流自动化测试框架和工具

时间:2023-05-06 02:47:47 阅读:115718 作者:1638

请求接口需要cy.request ()才能在Cypress中启动HTTP请求。 语法如下 cy.request(url ) cy.request ) url,body ) cy.request ) method,url,body ) cy.request (方法,url ) body ) cy .同样,可以与cypress.json的baseUrl配置结合使用的body是请求体method是请求方法,默认值为GET,可以通过POST、PUT、 options (如DELETE )是可选的,允许更改cy.request ()的默认行为参数的默认值为, logTrue在命令日志中显示命令urlnull请求urlmethodGET请求使用的HTTP方法添加authnull验证标头bodynull随请求发送的请求主体failOnStatusCodetrue的返回值为2XX或3XX 是否直接返回rmfalse将主体值转换为url encoded, x-www=form-urlencoded标头gziptrue在将查询参数添加到gzip编码头空值发送的附加请求标头qsnull请求的url之后是否接受retryonstatussuse 如果设置为true,则retryOnNetworkFailurenull网络问题导致的失败是否自动重试。 如果设置为true,则重试四次timeoutresponseTimeout的默认timeout时间。 在cypress.json上获取请求//默认访问方式cy.request(http://www.Davie彪强虾蛄.com)//options方式cy.request ) {method3360get url:'http://wwww.davie彪强小虾米.com'} (断言返回值cy.request('http://www.Davie彪的坚强小虾米.com ' ).as (comments ' ) cy.)={expect(response.body ).to . rs ' ) expect POST为cy.request (方法: ' post ),URL: )/login ),failOnStatusCode:false,form:true, body3360 )请求uuust的password}}.then((RES )={expcet ) RES.status ).to.be.equal(} )接口验证通常是基于表单的验证) 客户端保存此cookie,并在下一个请求中携带此cookie。 然后,服务端接收客户端的请求,并将客户端发送的SessionID与自己保存的SessionID进行比较,完成认证 在这种情况下,Cypress只需要登录beforeEach,它会在cypress-session-Cookie中自动保存cookie信息,在后续测试(it )中自动保存用户状态,并直接访问经过认证的资源 describe (“基于表单的验证”, function () before each (function ) ) ({//login ) ) )是自定义的,并且在support/commands.js中包含cy.login () ) ) request.post (http://xxxx.xxxx.com/xx API )、(auth(: ) user ) : (username )、(pass653360 ) passwoord Header:这是描述JWT元数据的Json对象,包含声明加密的算法。 PayLoad:这也是Json对象,用于存储实际应传递的数据。 JWT规定有7个官方字段可供选择,当然私有字段Signature:也可以定义为签证信息。 用于防止数据篡改的base64urlencode(Header ).base64 urlencode (Payload ) 256位安全服务端将通过base64加密的header、payload和签证信息发送到客户端将JWT存储在本地存储/会话存储中,在每个后续请求中将其放置在HTTP请求标头的授权中,然后一起发送,后端将收到此请求并完成身份验证 escribe (基于jwt的认证)、function )、before each (function )、cy.request )、http://www.davie彪的壮实虾米.com)。 password:'davie彪强虾', } .获取}.then((RES )=) jwt token并将其存储在localStorage中的window.localstorage.setitem ) ' jwt '中的res.data.token//获取refreshtoken并在localStorage中添加window.local storage.setitem (' refresh token ',RES.data.refresh function () cy.visit cy.window ().then ) ) window )={cy.requet ) method:'post ',url: 'xxxxx

.com ',//auth auth : { bearer : window.local storage.getitem (' jwt ' },) }.then ) ) ) reponse )={ exper

//reference types=' cypress '/describe )、function () {const username='davie .彪形大虾米' const password=' conssword function () cy.request ) method:(post ),URL : (log in ),form:true,body: ) username,password } URL 3360

' script ' : { ' apttest ' : ' ./node _ modules/. bin/cypress run-- spec './cypress/integration/Tess

使用Cypress运行接口测试不需要安装其他依赖关系。 此外,使用交互模式运行还可以提供对接口的详细请求

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。