Nightmare基于phantomjs的自动化测试套件
2023-09-14 09:00:58 时间
今天将介绍一款自动化测试套件名叫nightmare,他是一个基于phantomjs的测试框架,一个基于phantomjs之上为测试应用封装的一套high level API。其API以goto, refresh, click, type…等简单的常用e2e测试动作封装,使得其语义清晰,简洁。其官方在http://www.nightmarejs.org/.
如果你的项目测试不需要想需求和测试人员理解,那么基于nightmare测试或许是一个好的选择,你的降低测试代码的成本,以及测试套件的部署。我们可以选择基于jasmine-node等作为测试套件集成。
安装nightmare:
npm install nightmare
下面我们对比与远程phantomjs的对比:
原phantomjs的代码:
phantom.create(function (ph) { ph.createPage(function (page) { page.open(http://yahoo.com, function (status) { page.evaluate(function () { var el = document.querySelector(input[title="Search"]); el.value = github nightmare; }, function (result) { page.evaluate(function () { var el = document.querySelector(.searchsubmit); var event = document.createEvent(MouseEvent); event.initEvent(click, true, false); el.dispatchEvent(event); }, function (result) { ph.exit();
nightmare代码:
new Nightmare() .goto(http://yahoo.com) .type(input[title="Search"], github nightmare) .click(.searchsubmit) .run();
一切显而易见,不用多说。
nightmare同时也支持插件方式抽取公用逻辑,以供复用和提高测试代码语意,如下例子:
/** * Login to a Swiftly account. * @param {String} email * @param {String} password exports.login = function(email, password){ return function(nightmare) { nightmare .viewport(800, 1600) .goto(https://swiftly.com/login) .type(#username, email) .type(#password, password) .click(.button--primary) .wait();
使用代码很简单:
var Swiftly = require(nightmare-swiftly); new Nightmare() .use(Swiftly.login(email, password)) .use(Swiftly.task(instructions, uploads, path)) .run();
这款 Chrome 插件,让你的项目联调 so easy 插件介绍 poseidon-chrome-proxy 是一款浏览器请求代理插件;它能把向服务器发起的请求代理到本地,并且可以修改其请求头。 通过这个插件我们可以降低前后端联调的成本,以及帮助我们快速定位线上 bug。 插件作者:joyful 与 muggle,这个插件我们会长期维护下去,小伙伴们如果有想加进去的功能可以联系我们哟。 插件使用说明 插件下载地址: https://github.com/Poseidon-Service-Framework/poseidon-chrome-proxy/releases
web自动化测试-playwright工具5分钟上手 我喜欢Playwright! 这是微软开源的一款非常强大的自动化工具,再过几年,他很有可能取代Selenium在浏览器自动化的通知地位。使用过一段时间,我没有找到很好的中文资料可以参考,导致很多问题无法得到及时解决,因此我决定自己记录一下使用的笔记,算是给社区回馈
干货 | 一文搞定 uiautomator2 自动化测试工具使用 ![](https://ceshiren.com/uploads/default/original/3X/f/a/facb6e29bf503b39571011963faf36c586c673c0.jpeg) Google 官方提供了一个 Android 自动化测试工具(Java 库),基于 Accessibility 服务,功能很强,可以对第三方 App 进行测试,获取屏幕上任意一个 App 的
Selenium + Python + Chrome 自动化测试 环境搭建 一、下载Python 相关的教程很多,此处不详细记录了,下面是官网下载地址: https://www.python.org/downloads/ 我使用的python版本为 Python 3.6.1 注意:下载完成后配置python和pip的环境变量 二、下载Selenium 如果环境变量配...
相关文章
- 菜鸟学自动化测试(三)----selenium 命令
- 菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven)
- SAP Cloud for Customer的Data Source测试
- ML:MLOps系列讲解之《MLOps原则—迭代增量过程/自动化/持续部署/版本控制/实验跟踪/测试/监控/“ML成绩”系统/可再现性/松散耦合架构(模块化)/基于ML的软件交付指标等》解读
- 基于JAVA实现的WEB端UI自动化 - WebDriver框架篇 - 内部框架及UI自动化测试框架思维导图
- 基于JAVA实现的WEB端UI自动化 - WebDriver高级篇 - grid [跨浏览器远程测试-可分布式]
- pytest接口自动化测试框架 | 多进程运行用例
- pytest接口自动化测试框架 | pytest结合二次封装实现接口自动化
- 从功能测试到自动化测试,我得到的不只是收入的提高
- 基于TestNG+Rest Assured+Allure的接口自动化测试框架
- 基于Python3接口自动化测试初探
- python+selenium基于po模式的web自动化测试框架 | 干货
- 基于TPT实现自动化场景测试
- 入门到精通之Selenium自动化测试基础
- 【2023最新教程】从0到1构建移动端应用自动化测试(建议收藏)
- 一文4000字从0到1手把手教你基于Swagger实现接口自动化测试
- 一文2000字手把手教你基于Python的UI自动化测试自学路线
- 基于Selenium+Python的web自动化测试框架
- 30天进阶Selenium3自动化测试(4):安装Selenium
- 自动化测试高频面试题 —— 90%可能会被问到
- 持续集成这样做,App自动化测试效率提高50%
- 安全测试===appscan扫描工具介绍
- 基于JAVA实现的WEB端UI自动化 - WebDriver高级篇 - 获取测试对象状态
- 基于JAVA实现的WEB端UI自动化 - WebDriver高级篇 - grid [跨浏览器远程测试-可分布式]