一.例子,模拟慕课网登录
1.在项目下新建login.js文件
2.在项目的cypress->integration目录下新建login.spec.js文件,输入以下代码
/// <reference types="cypress" />
context('Actions', () => {
beforeEach(() => {
cy.visit('https://www.imooc.com/')
})
it('Login', () => {
cy.get('#js-signin-btn').click()
cy.get('.ipt-email').type('aa').should('have.value', 'aa')
cy.get('.js-loginPassword').type('bb').should('have.value', 'bb')
cy.get('.moco-btn-lg').click()
})
})
3.然后在命令窗口,输入npm run cypress
4.打开cypress选择我们新建的login.spec.js文件
5.cypress会自动打开浏览器模拟慕课网登录
二.解决chrome下的跨域问题
找到项目根目录下的cypress.json文件,增加如下配置
{
"chromeWebSecurity": false
}
三.抽取baseUrl
找到项目根目录下的cypress.json文件,增加如下配置
{
"baseUrl": "http://localhost:8013"
}
四. cypress命令行
命令格式
cypress run [options]
Description
那么我们怎么去执行cypress命令呢,这里我们有两种方式
1.cypress命令行脚本是在项目下面的node_modules/.bin目录下,所以我们在linux可以输入以下命令,windows系统可以装下git bash命令行工具也能输入linux命令
./node_modules/.bin/cypress run
2.在项目的package.json文件加入以下配置
{
"scripts": {
"cy:run": "cypress run"
}
}
然后就可以通过npm命令来执行
npm run cy:run -- --record --spec "cypress/integration/login.js"