首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >/自动化测试/ puppeteer环境搭建

/自动化测试/ puppeteer环境搭建

作者头像
测试邦
发布2019-07-24 11:17:24
1.1K0
发布2019-07-24 11:17:24
举报
文章被收录于专栏:测试邦测试邦

▷1◁

puppeteer简介

我们先看下puppeteer的官网的说明

Puppeteer is a Node library which provides a high-level API to control Chrome or Chromium over the DevTools Protocol. Puppeteer runs headlessby default, but can be configured to run full (non-headless) Chrome or Chromium

puppeteer是一个nodejs的类库,通过devtools协议提供谷歌的chrome或者chromium的控制api,默认通过headless方式控制Chrome,当然puppeteer也支持非headless模式,而且是由谷歌团队维护,再看看github上的star数:https://github.com/GoogleChrome/puppeteer

37139,不用担心它的流行程度,puppeteer通过Javascript来编写脚本,擅长ui自动化测试和爬虫实现!

▷2◁

winodws系统下安装

首先要安装nodejs和npm

安装nodejs,https://nodejs.org/en/download/current/,在nodejs官网下载最新版本

下载完成后双击安装,安装完成后运行cmd命令行查看版本

node -v

证明安装成功

npm安装,安装完node默认会集成npm

查看npm版本

安装puppeteer

npm i puppeteer

如果你可以访问外国网站,安装过程应该是OK的,如果你被墙了,直接安装puppeteer会失败,因为puppeteer的安装过程回去下载chromium,而chromium被墙掉了

chromium的默认下载位置:D:\node_modules\puppeteer\.local-chromium\win64-579032\chrome-win32(每个人的路径不太相同)

▷3◁

实现example.js例子

const puppeteer = require('puppeteer'); (async () => { const browser = await puppeteer.launch(); const page = await browser.newPage(); await page.goto('https://example.com'); await page.screenshot({path: 'example.png'}); await browser.close(); })();

在D:根目录下,保存为example.js

运行node example.js

会在D:根目录生成一个example.png的图片,图片内容为:

在ide上运行,这里我选择的是webstrom(对jerbrains全家桶有偏爱...)

运行结果:

提示找不到chromium,debug一下,添加browserFetcher和revisionInfo到watcher

得到puppeteer默认加载chromium的路径是:

C:\Users\quanh\node_modules\puppeteer\.local-chromium\win64-579032\chrome-win32\chrome.exe

和我们安装puppeteer时默认下载chromium的路径不相符,所以提示找不到

解决方案:查看官网文档,我们的目标是找到修改chromium启动path的方法

制定path后运行:

运行成功:

关于headless模式,默认puppeteer是开启headless模式的,也就是脚本运行过程中,看不到chromium的界面显示

如果要关闭headless模式,也是要在启动项配置,查看官网:

修改脚本:

运行结果:

▷4◁

Mac系统安装

具体步骤参考winodws,对应node版本安装mac版本即可

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-09-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试邦 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档