博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
puppeteer UI自动化测试demo(一)
阅读量:7033 次
发布时间:2019-06-28

本文共 1580 字,大约阅读时间需要 5 分钟。

一.简介

这个不大常见,比较常见的是selenium和weddriver;

所以就增加一个说明,来自官网的。


Puppeteer 是一个 Node 库,它提供了一个高级 API 来通过 DevTools 协议控制 Chromium 或 Chrome。Puppeteer 默认以 headless 模式运行,但是可以通过修改配置文件运行“有头”模式。你可以在浏览器中手动执行的绝大多数操作都可以使用 Puppeteer 来完成! 下面是一些示例:生成页面 PDF。抓取 SPA(单页应用)并生成预渲染内容(即“SSR”(服务器端渲染))。自动提交表单,进行 UI 测试,键盘输入等。创建一个时时更新的自动化测试环境。 使用最新的 JavaScript 和浏览器功能直接在最新版本的Chrome中执行测试。捕获网站的 timeline trace,用来帮助分析性能问题。测试浏览器扩展。

二.安装

1)node

由上可知,该框架依赖于node,先安装node6+

到该地址 :选择合适的版本进行安装;

安装结束后(比如我是window),在cmd执行:node -v 

以上说明安装成功了。

2)puppeteer  

同样来源于官网:

安装在项目中使用 Puppeteer:npm i puppeteer# or "yarn add puppeteer"Note: 当你安装 Puppeteer 时,它会下载最新版本的Chromium(~170MB Mac,~282MB Linux,~280MB Win),以保证可以使用 API。 如果想要跳过下载,请阅读环境变量。puppeteer-core自 1.7.0 版本以来,我们都会发布一个 puppeteer-core 包,这个包默认不会下载 Chromium。npm i puppeteer-core# or "yarn add puppeteer-core"puppeteer-core 是一个的轻量级的 Puppeteer 版本,用于启动现有浏览器安装或连接到远程安装。具体见 puppeteer vs puppeteer-core.

三.运行

1)编写example.js脚本

官网都是以默认Chromium执行,我这边以自带的chrome执行。脚本如下:

const puppeteer = require('puppeteer');(async () => {  const browser = await puppeteer.launch({executablePath:"C:\Users\Administrator\AppData\Local\Google\Chrome\Application\chrome.exe"});  const page = await browser.newPage();  await page.goto('https://example.com');  await page.screenshot({path: 'd:\\example.png'});  await browser.close();})();

2)执行example.js

执行命令:node example.js

报错

解决:将该js放置到node puppeteer模块的目录下再执行;

四. 结果

1)在D盘目录,产生example.png文件

2)打开文件,为该url界面的截图

 五.缺点

1)该工具是基于Chromium提供出的api,适合Chromium的接口,在chrome上执行未必成功;而我们客户一般是安装chrome,所以,就看涉及到的api了;

附:

官网地址:

api地址:

 

转载于:https://www.cnblogs.com/VVsky/p/11065514.html

你可能感兴趣的文章
android 自定义系统键盘
查看>>
MySQL 查询优化器(总结)
查看>>
2014年6月28日
查看>>
android读取手机验证码
查看>>
awk 日常实例
查看>>
Python直接赋值、浅拷贝和深度拷贝解析
查看>>
何时进行重构?
查看>>
centos6.2x64系统配置本地yum源
查看>>
Java Strategy 模式简介
查看>>
CDH-cdh5.8.3离线安装--Mysql5.7二进制部署
查看>>
flask request 对象
查看>>
【VMware虚拟化解决方案】Horizon-View GPU虚拟化
查看>>
Redis 对象
查看>>
Android应用程序获取ROOT权限的方法
查看>>
KVM主机在线增加硬盘爬坑记
查看>>
【Linxu学习004】Bash Shell 相关
查看>>
Linux 下的shell
查看>>
iptables 知识-filter表
查看>>
Windows平台视频显示问题
查看>>
python性能分析
查看>>