visit
作用:
访问一个远程URL。
(建议:使用前设置 baseUrl)
语法:
cy.visit(url)
cy.visit(url, options)
cy.visit(options)
使用:
cy.visit('http://localhost:3000') // 产生远程页面的窗口
参数:
> url (String)
要访问的URL。(如果你设置了baseUrl,将使用baseUrl配置的url作为前缀)
> options (Object)
传入一个options对象来控制此方法。
Options:
选项 | 默认 | 描述 |
---|---|---|
url | null | 要访问的URL,与url参数的行为相同。 |
method | GET | 在访问中使用的HTTP方法,可以是GET或POST。 |
body | null | 与POST请求一起发送的可选主体。如果它是一个字符串,将原封不动地去传递。如果它是一个对象,将被编码为字符串并与消息头(Content-Type: application/x-www-urlencoded)一起发送。 |
headers | {} | 将HTTP标头名称映射到要与请求一起发送的值的对象。注意: headers仅针对初始cy.visit()请求发送,而不是针对后续所有请求发送。 |
log | true | |
auth | null | 添加基本授权标头 |
failOnStatusCode | true | 当响应码不是2xx和3xx时是否报错 |
onBeforeLoad | function | 在页面加载了所有资源之前调用 |
onLoad | function | 在你的页面触发其加载事件后调用 |
retryOnStatusCodeFailure | false | 当状态代码错误时是否自动重试 |
retryOnNetworkFailure | true | 当网络错误时是否自动重试 |
timeout | pageLoadTimeout | 页面加载超时时间,单位毫秒。 |
例子:
//设置超时
cy.visit('/index.html', { timeout: 30000 })
//添加身份验证(1)
cy.visit('https://www.acme.com/', {
auth: {
username: 'wile',
password: 'coyote'
}
})
//添加身份验证(2)
cy.visit('https://wile:coyote@www.acme.com')
//页面加载完所有资源后调用函数
cy.visit('http://localhost:3000/#dashboard', {
onBeforeLoad: (contentWindow) => {
// contentWindow是远程页面的窗口对象
}
})
//触发加载事件后调用函数
cy.visit('http://localhost:3000/#/users', {
onLoad: (contentWindow) => {
// contentWindow是远程页面的窗口对象
if (contentWindow.angular) {
// 一些事件
}
}
})
//发送post请求
cy.visit({
url: 'http://localhost:3000/cgi-bin/newsletterSignup',
method: 'POST',
body: {
name: 'George P. Burdell',
email: 'burdell@microsoft.com'
}
})
希望本文对你有所帮助~~如果对软件测试、接口测试、自动化测试、面试经验交流感兴趣可以加入我们。642830685,免费领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!技术大牛解惑答疑,同行一起交流。