node + selenium-webdriver 进行Web自动化测试

1、环境安装

nodejs安装

webdriver安装,安装各浏览器的驱动,通过各浏览器的驱动程序,操作浏览器。

chrome 驱动安装

每个版本的浏览器用到的webdriver不同。可以通过chrome右上角-> 帮助 -> 关于 Chrome 查看当前版本。

chromedriver下载地址和chromedriver与chrome之间的对应关系。跳转门

并将驱动程序所在目录添加至环境变量

其他浏览器驱动可以见下面列表:

  • firefox(火狐浏览器):github.com/mozilla/gec…
  • Edge:developer.microsoft.com/en-us/micrs…
  • Safari:webkit.org/blog/6900/w…

2、代码实现自动化测试


npm init


npm install selenium-webdriver


// index.js

const {Builder, By, Key, until} = require('selenium-webdriver');

const {Options} = require('selenium-webdriver/chrome');



var driver = new Builder()

.forBrowser('chrome')

.setChromeOptions(new Options().excludeSwitches(["ignore-certificate-errors", 'user-data-dir="C:\\Users\\qiang\\AppData\\Local\\Google\\Chrome\\User Data"']))

.build();


driver.get('https://image.baidu.com/')

.then(function () {

driver.findElement(By.id('search')).then(async (res)=>{

console.log('res',await res.getText())

})

}).catch(function (e) {

console.log(e);

});

3、By XPATH和CSS定位比较

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/727843.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

单木:面试官超爱问的字符串,今天给它彻底讲透

本文已收录于:https://github.com/danmuking/all-in-one(持续更新) 前言 哈喽,大家好,我是 DanMu。今天这边文章,想和大家聊聊有关字符串的问题,字符串似乎很简单,但其实字符串几乎…

【多模态论文】CLIP(Contrastive Language-Image Pre-training)

论文:Learning Transferable Visual Models From Natural Language Supervision 链接:https://arxiv.org/abs/2103.00020 摘要 问题: 对预定的类别进行预测,这种有监督的训练形式受限于额外标记数据 。如何利用图像的原始文本来获…

为什么3D渲染让客户无法抗拒?7个重要原因

客户通常对工程、建筑、复杂的室内外设计知之甚少,展示草图只会让他们感到难以理解。不过,现代设计师和建筑师不再需要为此烦恼。 通过使用逼真且沉浸式的3D渲染,他们可以让能够轻松地向客户传达信息和沟通想法。它对赢得客户至关重要。接下…

Java多线程设计模式之保护性暂挂模式

模式简介 多线程编程中,为了提高并发性,往往将一个任务分解为不同的部分。将其交由不同的线程来执行。这些线程间相互协作时,仍然可能会出现一个线程等待另一个线程完成一定的操作,其自身才能继续运行的情形。 保护性暂挂模式&a…

NodeJs 连接本地 mySql 数据库获取数据

写在前面 今天把 nodejs 连接本地数据库的坑简单的踩一下,为后续写接口做个铺垫 安装 mySql (mac举例子) 安装地址 安装完成大概这个样子,起动起来就行 安装本地数据库连接工具(navicat举例子) 安装地…

文件防篡改监控工具 - WGCLOUD全面介绍

WGCLOUD是一款优秀的运维监控软件,免费、轻量、高效,部署容易,上手简单,对新手非常友好 WGCLOUD部署完成后,点击菜单【文件防篡改】,可以看到如下页面 我们点击【添加】按钮,输入监控文件的信息…

赛力斯:“新王”能做多久

最近,电车圈又有大事了。 造车新势力们迎来“新王”——赛力斯。 最近,赛力斯市值突破1500亿,反超理想, 成为新势力市值一哥。 今年第一季度,赛力斯新能源汽车销量达94825辆,同比增长高达374.77%&#xf…

想要高效回复客户消息?来看看这个款微信神器

不管是销售还是客服来说,能及时回复客户的反馈和问题,是确保顾客满意度的关键因素。 今天,就给大家分享一个职场必备神器——个微管理系统,帮助大家提高回复效率! 首先,你可以在系统上设置自动通过好友后自…

聊聊其他之ShowDoc安装部署

聊聊其他之ShowDoc安装部署 Docker离线安装部署 由于很多公司服务器处于内网环境,跟外网阻断,所以需要通过离线的方式进行Docker镜像安装。 Linux环境准备 第一步:检查防火墙,是否关闭。 查看防火墙状态: [rootlo…

java后端方法地址组成解析

本篇文章旨在记录后端方法被调用时,是如何组成的,以及组成的部分。 提示:以下是本篇文章正文内容,下面案例可供参考 一、后端方法地址是什么? 示例:http://127.0.0.1:8080/user/info 如果携带了路径参数…

主存储器的基本组成+容量扩展+与CPU的连接

1.基本组成 1.主存储器的基本组成和读写操作 主存储器被称为主存/内存。是计算机中存储程序的重要部件 主存储器内部包含了存储体、各种逻辑部件以及控制电路等。 主存是通过寻址的方式对存储体内的存储单元进行读写操作的。 主存首先要从MAR获取地址,之后译码器…

Java23种设计模式(五)

1、MVC 模式 MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。 Model(模型) - 模型代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑,在数据变化时更新控制器。…

惠海H4120 降压IC 40V 36V 30V降压5V3A 9V3A 12V3A 动态响应优异,低纹波

H4120是一款功能优良的异步降压型DC-DC转换器。它的主要特性和优势如下: 产品特性: 内置40V耐压MOS:内置的高耐压MOS使得H4120能够处理更多种的输入电压范围,增强了其适用性和可靠性。 宽输入范围:输入电压可在5V至…

ubuntu18.04 安装HBA

HBA是一个激光点云层级式的全局优化的程序,他的论文题目是:HBA: A Globally Consistent and Efficient Large-Scale LiDAR Mapping Module,对应的github地址是:HKU-Mars-Lab GitHub 学习本博客,可以学到gtsam安装&am…

android串口助手apk下载 源码 演示 支持android 4-14及以上

android串口助手apk下载 1、自动获取串口列表 2、打开串口就开始接收 3、收发 字符或16进制 4、默认发送at\r\n 5、android串口助手apk 支持android 4-14 (Google seral port 太老) 源码找我 需要 用adb root 再setenforce 0进入SELinux 模式 才有权限…

QT day03

思维导图 QT设计 升级优化自己应用程序的登录界面。 要求: 1. qss实现 2. 需要有图层的叠加 (QFrame) 3. 设置纯净窗口后,有关闭等窗口功能。 4. 如果账号密码正确,则实现登录界面关闭,另一个应用界面…

vuejs3+elementPlus后台管理系统,左侧菜单栏制作,跳转、默认激活菜单

默认激活菜单,效果&#xff1a; 默认激活菜单&#xff0c;效果1&#xff1a; 默认激活菜单&#xff0c;效果2&#xff1a; 跳转链接效果&#xff1a; 制作&#xff1a; <script setup> import {useUserStore} from "/stores/userStore.js"; import {ref} fr…

密码学及其应用——GMP库在密码学中的应用

GMP&#xff08;GNU Multiple Precision arithmetic library&#xff0c;GNU多精度算术库&#xff09;是一个针对大整数运算的库。这个库提供了许多针对多种多精度类型的计算函数&#xff1a; - 大整数&#xff1a;Z - 大有理数&#xff1a;Q - 大浮点数&#xff1a;R 1. 密码学…

找不到com.fasterxml.jackson.core.exc.StreamWriteException的类文件

1. 前言: 使用springboot搭建的项目, 需要使用 jackson 更改json文件的内容; maven管理jar包, 导入jar包版本信息如下: <!-- 读写json文件所需依赖 --> <dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databin…

陈晓婚前婚后大变样

陈晓婚前婚后大变样&#xff1f;陈妍希揭秘甜蜜与现实的碰撞在娱乐圈的星光璀璨中&#xff0c;有一对夫妻总是津津乐道&#xff0c;那就是陈晓和陈妍希。他们的爱情故事&#xff0c;从荧幕到现实&#xff0c;一直备受关注。然而&#xff0c;近日陈妍希在节目中透露&#xff0c;…