zoukankan      html  css  js  c++  java
  • puppeteer(一)环境搭建——新Web自动化工具(同selenium)

    一、简介

    https://github.com/GoogleChrome/puppeteer

    Puppeteer是一个Node库,它提供了一个高级API来控制DevTools协议上的 Chrome或Chromium 

    Puppeteer 默认运行无头,但可以配置为运行完整(非无头)Chrome或Chromium。

    我能做什么?
    您可以在浏览器中手动执行的大多数操作都可以使用Puppeteer完成!以下是一些可以帮助您入门的示例:
    • 生成页面的屏幕截图和PDF。
    • 抓取SPA(单页面应用程序)并生成预渲染内容(即“SSR”(服务器端渲染))。
    • 自动化表单提交,UI测试,键盘输入等。
    • 创建最新的自动化测试环境。使用最新的JavaScript和浏览器功能直接在最新版本的Chrome中运行测试
    • 捕获站点时间线跟踪,以帮助诊断性能问题。
    • 测试Chrome扩展程序。

    适用范围:

      目前仅支持chrome浏览器,不支持其他如IE、firefox等

    二、环境搭建

    1)由于是nodejs的一个库,首先需要安装nodejs.我下载的是最新的10.13.0,安装一直下一步到最后。

    https://nodejs.org/zh-cn/

     这里安装路径选到D盘,D:Program Files odejs

     安装完毕在命令行输入以下命令测试是否安装成功,正确会出现版本号

    npm -v

    2)改变原有的环境变量

      (1)我们要先配置npm的全局模块的存放路径以及cache的路径,例如我希望将以上两个文件夹放在NodeJS的主目录下,便在NodeJs下建立"node_global"及"node_cache"两个文件夹,输入以下命令改变npm配置

    npm config set prefix "D:Program Files
    odejs
    ode_global"
    npm config set cache "D:Program Files
    odejs
    ode_cache"

    3)在系统环境变量添加系统变量NODE_PATH

    输入路径D:Program Files odejs ode_global ode_modules,此后所安装的模块都会安装到改路径下  

    4)安装淘宝npm(cnpm)

       (1) 输入以下命令

    npm install -g cnpm --registry=https://registry.npm.taobao.org

       (2)添加系统变量path的内容

      因为cnpm会被安装到D:Program Files odejs ode_global下,而系统变量path并未包含该路径。在系统变量path下添加该路径即可正常使用cnpm。

       (3) 输入cnpm -v输入是否正常

    cnpm -v

    5)安装puppeteer

     执行如下命令,安装成功后会在D:Program Files odejs ode_global ode_modules下看到puppeteer目录。

    cnpm i puppeteer -g

    6)npm相关命令

    npm安装模块
     【npm install xxx】利用 npm 安装xxx模块到当前命令行所在目录;
     【npm install -g xxx】利用npm安装全局模块xxx;

    本地安装时将模块写入package.json中: 【npm install xxx】安装但不写入package.json; 【npm install xxx –save】 安装并写入package.json的”dependencies”中; 【npm install xxx –save
    -dev】安装并写入package.json的”devDependencies”中。
    npm 删除模块 【npm uninstall xxx】删除xxx模块; 【npm uninstall
    -g xxx】删除全局模块xxx; 已安装模块查看 npm ls -g --depth 0 //查看全局模块 depth 0 深度为0,可以根据需求改变深度 npm ls --depth 0 //查看当前命令所在目录
  • 相关阅读:
    常用sql经典语句
    sql创建 自定义函数返回当前日期所在月的第一天最后一天
    洗洗睡了吧啊,何必在意……费口舌不热么
    asp.net Treeview控件
    MSSQL 触发器
    Mssql 通配符
    C#实现所有经典排序算法
    asp.net Treeview
    Asp.net+json 操作类
    Queue 和Stack 的区别
  • 原文地址:https://www.cnblogs.com/baihuitestsoftware/p/9957343.html
Copyright © 2011-2022 走看看