前端自动化
文章平均质量分 95
孩儿她们爹
10年软件测试工作经验,6年团队管理经验,做过性能测试,擅长自动化测试,有持续集成经验。精通测试基础知识;精通测试用例设计;精通selenium、appium、uiautomator,cypress等自动化测试工具;精通自动化、接口测试框架开发,熟练使用LR、jmeter进行性能测试并定位性能问题;掌握Java、python语言;熟悉HTML,JS。
展开
-
前端自动化测试框架Cypress(二十三)生成测试报告(二)
一、编写动态挑选测试用例运行代码在项目根目录文件夹下简历utils文件夹,在此文件夹下新建PickTestsToRun.js//PickTestsToRun.js/*本段代码更改it和describe的行为,使之实现类似mocha中的grep功能,接受如下四个参数1、-i <value>,仅运行指定的it()。该it()的描述中含有<value>2、-I <value>,仅运行指定的describe()。该describe()的描述中含有<value>原创 2020-12-02 11:50:12 · 811 阅读 · 0 评论 -
前端自动化测试框架Cypress(二十三)生成测试报告(一)
因为Cypress也是在Mocha的基础上构建的,所以任何为Mocha构建的报告生成器都可以在Cypress里使用。这里有一个Mocha内建报告生成器列表:Mocha内建报告生成器我们同样为Mocha添加了另外两个普遍使用的第三方的报告生成器。同样地构建在Cypress里,你可以不用额外安装直接使用:teamcityjunit最后,我们也支持自定义,或其他第三方的报告生成器。你知道吗?你可以利用Mocha使用多报告生成器?这通常在CI的时候是很有用的。典型的情况是,我们看到使用者用默认的原创 2020-07-23 09:45:37 · 2196 阅读 · 0 评论 -
前端自动化测试框架Cypress(二十二)--- 断言.should() expect()
.should() 创建断言。断言会自动重试,直到它们通过或超时。语法.should(chainers).should(chainers, value).should(chainers, method, value).should(callbackFn)实例一cy.get('.error').should('be.empty') // Assert that '.error' is emptycy.contains('Login').should('b原创 2020-07-02 15:36:27 · 3000 阅读 · 0 评论 -
前端自动化测试框架Cypress(二十一)---屏幕截图.screenshot()
.screenshot()—屏幕截图,保存路径cypress/screenshots/my-image.png语法.screenshot().screenshot(fileName).screenshot(options).screenshot(fileName, options)// ---or---cy.screenshot()cy.screenshot(fileName)cy.screenshot(options)cy.screenshot(fileName, options)原创 2020-07-02 15:14:39 · 1667 阅读 · 0 评论 -
前端自动化测试框架Cypress(二十)--聚焦元素focus、focused
.focus()—元素聚焦语法.focus().focus(options)参数log true 在命令日志中显示命令timeout defaultCommandTimeout 超时时间实例一cy.get('input').first().focus() // 聚焦到第一个input元素实例二cy.get('[type="input"]').focus()实例三cy.get('[name="comment"]').focus().focused()—获取当前聚焦的元素语原创 2020-07-02 15:14:30 · 1089 阅读 · 0 评论 -
前端自动化测试框架Cypress(十九)-- 读写文件writeFile()、readFile()
.writeFile()语法:cy.writeFile(filePath, contents)cy.writeFile(filePath, contents, encoding)cy.writeFile(filePath, contents, options)编码方式:asciibase64binaryhexlatin1utf8utf-8ucs2ucs-2utf16leutf-16le写入内容到txt文件cy.writeFile('path/to/message.tx原创 2020-06-16 15:42:35 · 1781 阅读 · 0 评论 -
前端自动化测试框架Cypress(十八)-- 滚动到指定位置scrollTo()
.scrollTo() 滚动到指定位置语法:cy.scrollTo(position)cy.scrollTo(x, y)cy.scrollTo(position, options)cy.scrollTo(x, y, options)// ---or---.scrollTo(position).scrollTo(x, y).scrollTo(position, options).scrollTo(x, y, options)使用cy.scrollTo(0, 500)原创 2020-06-16 15:42:18 · 1295 阅读 · 0 评论 -
前端自动化测试框架Cypress(十七)-- 滑动到某个元素scrollIntoView
.scrollIntoView语法:.scrollIntoView().scrollIntoView(options)使用:cy.get('footer').scrollIntoView() // Scrolls 'footer' into view参数介绍duration 0 多长时间滑到指定元素easing swing Will scroll with the easing animation--暂时没搞清楚,感觉没啥变化log true 是否显示命令行日志offset {t原创 2020-06-16 15:03:46 · 1125 阅读 · 0 评论 -
前端自动化测试框架Cypress(十六)--- 等待元素出现cypress-wait-until
安装插件cypress-wait-untilcmd进入项目根目录npm i -D cypress-wait-until# oryarn add -D cypress-wait-until导入插件cypress/support/commands.js文件添加如下命令import 'cypress-wait-until';样例:// 等待,直到cookie设置成功cy.waitUntil(() => cy.getCookie('token').then(cookie => B原创 2020-06-12 18:19:46 · 4818 阅读 · 1 评论 -
前端自动化测试框架Cypress(十五)--- 上传文件cypress-file-upload
安装插件cypress-file-uploadcmd进入项目根目录npm install --save-dev cypress-file-upload导入插件在cypress/support/commands.js导入插件cypress-file-uploadimport 'cypress-file-upload';实例/* Plain HTML input */const yourFixturePath = 'data.json';cy.get('[data-cy="file-in原创 2020-06-12 17:34:39 · 4030 阅读 · 5 评论 -
前端自动化测试框架Cypress(十四)--- 接口登录(token)
语法: cy.wrap(sessionStorage.setItem("Token", tokenValue)) window.sessionStorage.setItem('Token', tokenValue)获取项目key值通过接口登录sessionStorage.setItem 设置token实例:it('loginInAs', () => { const url = `${Cypress.config("baseApi")}/api/Login/PostLogin`原创 2020-06-12 14:44:19 · 3085 阅读 · 0 评论 -
前端自动化测试框架Cypress(十三)--- Cookie
.getCookie()语法:cy.getCookie(name)cy.getCookie(name, options)使用:cy.getCookie('auth_key') // Get cookie with name 'auth_key'获取登录后的session_id cookie并打印// assume we just logged incy.contains('Login').click()cy.url().should('include', 'profile')原创 2020-06-12 14:31:51 · 1595 阅读 · 0 评论 -
前端自动化测试框架Cypress(十三)--- as()
.as()语法:.as(aliasName)使用:cy.get('.main-nav').find('li').first().as('firstNav') // Alias first 'li' as @firstNavcy.route('PUT', 'users', 'fx:user').as('putUser') // Alias that route as @putUsercy.stub(api, 'onUnauth').as('unauth')原创 2020-06-12 14:18:41 · 884 阅读 · 0 评论 -
前端自动化测试框架Cypress(十二)--- submit()
.submit()语法:.submit().submit(options)例1:cy.get('form').submit() // Submit a form例2:<form id="contact"> <input type="text" name="message"> <button type="submit">Send</button></form>cy.get('#contact').submit()原创 2020-06-12 14:13:45 · 523 阅读 · 0 评论 -
前端自动化测试框架Cypress(十一)---导航功能(go,reload,visit)
web页面上的导航功能,上一页,下一页,重新加载页面,直接访问页面。.go() 上一页,下一页语法:cy.go(direction)cy.go(direction, options)使用:上一页cy.go(-1) cy.go('back') 下一页cy.go(1) cy.go('forward') .reload() 刷新页面语法:cy.reload()cy.reload(forceReload)cy.reload(options)cy.reload(forceRel原创 2020-06-12 14:07:51 · 759 阅读 · 1 评论 -
前端自动化测试框架Cypress(十)--字符类型转换.to()和接口请求.request()
安装插件cypress-commandsnpm install cypress-commands将cypress-commands导入项目中 cypress/support/index.jsimport 'cypress-commands'***.to() 字符类型转换****语法:*```javascript.to(type).to(type, options)正确用法cy.wrap('00123').to('number'); // 结果 123cy.wrap(42).to原创 2020-06-10 18:18:06 · 1338 阅读 · 1 评论 -
前端自动化测试框架Cypress(九)--获取元素属性.text() .attribute()
安装插件cypress-commandsnpm install cypress-commands将cypress-commands导入项目中 cypress/support/index.jsimport 'cypress-commands'.text()正确用法<div>Catastrophic Cat</div><div>Dramatic Dog</div><div>Amazing Ant</div>// yi原创 2020-06-10 17:58:45 · 8074 阅读 · 5 评论 -
前端自动化测试框架Cypress(八)--xpath定位
安装插件 cypress-xpathnpm安装npm install -D cypress-xpathyarn安装yarn add cypress-xpath --dev将cypress-xpath导入项目 cypress/support/index.jsimport 'cypress-xpath'//orrequire('cypress-xpath')使用xpath定位it('finds list items', () => { cy.xpath('//ul[@clas原创 2020-06-10 17:18:30 · 3584 阅读 · 1 评论 -
前端自动化测试框架Cypress(七)--check
.check() 勾选复选框或单选语法:.check().check(value).check(values).check(options).check(value, options).check(values, options)使用方法:cy.get('[type="checkbox"]').check() // 选中checkbox元素cy.get('[type="radio"]').first().check() // 选中第一个radio元素选中所有复选框c原创 2020-06-10 16:13:02 · 1167 阅读 · 0 评论 -
前端自动化测试框架Cypress(六)--iframe元素定位
单层iframe<iframe name="" frameborder="0" id="x-URS-iframe" scrolling="no"> <form id='login-from'> <div class="inputbox" id="account-box"> <input data-placeholder="邮箱帐号或手机号码" name="email" data-required="true" class="j- inputtext原创 2020-06-10 15:15:39 · 4002 阅读 · 0 评论 -
前端自动化测试框架Cypress(五)--父子元素定位
.children() 通过父元素定位子元素语法:.children().children(selector).children(options).children(selector, options)样例1:<ul> <li>About</li> <li>Services <ul class="secondary-nav"> <li class="services-1">Web Design原创 2020-06-10 14:37:08 · 2814 阅读 · 0 评论 -
前端自动化测试框架Cypress(四)--元素定位
<div id='mydiv' class='myclass'> <input id='myinput' class='class_input input_1' placeholder='cypress'> <button id='button1' class='class_button1'> <span class='class_span'>登录</span> </button></div>cy.get()原创 2020-06-10 11:43:51 · 3926 阅读 · 0 评论 -
前端自动化测试框架Cypress(三)--百度账号登录实例
百度登录用例打开百度首页点击登录按钮并选择用户名登录输入用户名并判断用户名输入成功输入密码并判断密码输入成功点击登录按钮判断登录账号用户昵称//login_baidu.js//孩儿她们爹///<reference types="cypress"/>describe("百度贴吧",function(){ beforeEach(function () { cy.visit("https://www.baidu.com/") });原创 2020-06-10 10:53:34 · 2104 阅读 · 0 评论 -
前端自动化测试框架Cypress(二)--第一个脚本
前端自动化测试框架Cypress(二)–第一个脚本使用vs code打开项目,file–open folder选择项目在cypress-integration目录下新建你的工程目录,如demo1,在demo1下新建一个baidu.js文件//baidu.js//孩儿她们爹describe('第一个测试脚本', function() { it("百度输入框功能", function() { cy.visit('https://www.baidu.com') //打开原创 2020-06-08 17:45:03 · 2327 阅读 · 1 评论 -
前端自动化测试框架Cypress(一)--环境搭建npm安装
前端自动化测试框架Cypress–环境搭建npm安装参考文档:官方地址:https://www.cypress.io/,详细的文档介绍:https://docs.cypress.io/guides/overview/why-cypress.htmlWindows环境安装推荐使用npm安装,要求Node.js8或更高版本安装Node.js官方下载地址:https://nodejs.org/en/download/下载后双击运行按照提示安装即可,安装完成后运行cmd,输入node -v查看版本号原创 2020-06-08 17:24:26 · 3683 阅读 · 1 评论