Leo Zhang
菩提本无树,明镜亦非台!

 

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方法,可以是GETPOST

body

null

POST请求一起发送的可选主体。

如果它是一个字符串,将原封不动地去传递。

如果它是一个对象,将被编码为字符串并与消息头(Content-Type: application/x-www-urlencoded)一起发送。  

headers

{}

将HTTP标头名称映射到要与请求一起发送的值的对象。

注意: headers仅针对初始cy.visit()请求发送,而不是针对后续所有请求发送。

log

true

在命令日志中显示该命令

auth

null

添加基本​​授权标头

failOnStatusCode

true

当响应码不是2xx3xx时是否报错

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'
  }
})

 

 

posted on 2019-06-05 17:45  LeoZhanggg  阅读(2465)  评论(0编辑  收藏  举报