selenium 自动化测试课上实操指南1——百度搜索

embedded/2024/12/21 23:04:57/

1.环境准备

下面的所有资源可以从超星班级资料中下载,机房的同学在收到的文件夹中可以找到文件

非本校同学,免费加入学银在线课程,就可以在资料 根目录 >  02 课件新 >  week09 web自动化测试02 里下载本次实操资料

1)安装java环境

我的是java version "1.8.0_241",理论上版本高一些是应该没有问题的

因为我们使用java编程,所以你的计算机上,机房已经有了可跳过此步骤

2)安装eclipse ,

机房已经有了可跳过此步骤,自己的计算机可以自行安装

3)下载selenium  webdriver

已经发给大家,大家收到的文件夹中有

使用自己电脑的同学,到超星班级资料下载 4_selenium-server-4..jar,大家也可以根据需要去下载

4)下载安装浏览器和浏览器驱动

注意浏览器驱动的类型和版本号需要和你计算机上的浏览器版本匹配。

浏览器机房已经有,大家可以直接使用,浏览器驱动已经发给大家,

浏览器驱动器和浏览器通讯,向浏览器发出请求,接收响应,两者版本务必要匹配才行。查看浏览器版本方法如下:   

    chrome浏览器100版本的安装包为:1_100.0.4896.127_chr.exe

    chrome100版本浏览器对应的浏览器驱动:5_chromdriver100.0.1.zip文件夹,其下的chromedriver.exe是浏览器驱动       

谷歌浏览器驱动程序各版本下载路径https://chromedriver.chromium.org/downloads
最新测试中的chrome驱动版本

  Chrome for Testing availability

火狐浏览器驱动程序各版本下载路径

  https://github.com/mozilla/geckodriver/releases

Edge浏览器驱动程序下载路径Microsoft Edge WebDriver | Microsoft Edge Developer
其他类型浏览器驱动程序下载路径:Unable to Locate Driver Error | Selenium

下面我们万事俱备,只欠东风。我们来编写一个简单的自动化测试程序实现百度搜索自己的名字吧!

2.实操

1)解压我给大家的java项目文件

2)启动eclipse,导入我给大家的java项目

部分同学使用过程中会不小心把项目视图关闭,通过菜单 windows -> show view 菜单点击对应的视图即可开关相应视图

3)运行脚本

大家根据自己的浏览器情况,选择相应java文件,运行,如果能打开浏览器,进入菜鸟网站,控制提台输出了菜鸟的标题,则说明环境正常,可以继续编写脚本

注意:如果你的chrome浏览器不是我列出的四个版本,也不要害怕。或者把chrome浏览器的代码注释掉,将火狐浏览器的代码取消注释。

如果仍想使用chrome浏览器。请按照下面的步骤进行

a) 下载和你谷歌浏览器版本对应的浏览器驱动。放到项目的chromedriver下,当然为了日后方便查看,建议名称中包含版本

b) 程序中修改浏览器驱动的路径

3)编写脚本

a) 网址可以更改为百度网址澳

driver.get("https://www.runoob.com/html/html-tutorial.html");

b)下面网百度的搜索框输入你的名字

我们需要先定位到搜索框,然后再输入文字,大家如果对html不是太熟悉的话,先给大家一种万能的方法

将定位方式复制下来,写入到代码

例如,我拷贝了css选择器的定位方式 “#kw”,复制到代码中,

driver.findElement(By.cssSelector("#kw"))

因为我要操作,所以,我对元素进行点击  click()

    driver.findElement(By.cssSelector("#kw")).click();

其他操作类型,大家完成剩余操作

4)注意事项

a) 建议代码上加上适当的注释,

这样后期维护、调试时方便些

可以在每个操作前加上注释。例如。 //点击确定按钮  //搜索框输入姓名

b) 及时调试

可以写上几个步骤就运行下,有错误及时修改。不要全部写完再调试


http://www.ppmy.cn/embedded/19942.html

相关文章

网络安全之SQL注入及防御(下篇)

目录 什么是SQL注入? 一,SQL注入会导致什么呢? 二,SQL注入思想与步骤 三,SQL注入的绕过 四,sqlmap工具的使用 五,sql注入的防御方法 总结 什么是SQL注入? SQL注入(…

【提示学习】PromptSync论文问题汇总

文章目录 PromptSync: Bridging Domain Gaps in Vision-Language Models through Class-Aware Prototype Alignment and Discrimination(2024CVPR)1 Introduction2 Related Work2.1 CLIP2.2 TPT 3 Methodology3.1 提出方法PromptSync3.2 类感知原型生成&…

「ETL趋势」FDL数据中心库/表查看和调试功能上线、数据源新增支持MongoDB写入

FineDataLink作为一款市场上的顶尖ETL工具,集实时数据同步、ELT/ETL数据处理、数据服务和系统管理于一体的数据集成工具,进行了新的维护迭代。本文把FDL4.1.6最新功能作了介绍,方便大家对比:(产品更新详情:…

Android 获取sha1的快速有效的简单方法

第一步 下载apk 点击下载(https://download.csdn.net/download/xiaohui2015/9751428) 第二步 试用Windows键R键打开命令行 输入 adb install把apk用鼠标左键拖动到命令行自动输入路径 回车安装 第三步 打开apk 选择你要查看的apk,一键…

【Day 8】MySQL 多表查询 + Mybatis 基础

1 多表查询 笛卡尔积:在数学中,两个集合(A集合 和 B集合)的所有组合情况 在多表查询时,需要消除无效的笛卡尔积 select * from tb_emp,tb_dept where dept_id tb_dept.id;多表查询分为: 连接查询 内连接:相当于查…

sheng的学习笔记-AI-支持向量机(SVM)

目录:sheng的学习笔记-AI目录-CSDN博客 目录 什么是向量机 SVM算法原理 SVM基本模型 SVM对偶问题 什么是对偶问题: 为什么使用对偶问题 拉格朗日定理 拉格朗日乘子法 对偶问题算法 非线性SVM算法原理 核函数 常用核函数 软间隔与正则化 软…

RabbitMQ的理论知识点,和使用RabbitMQ时常见的问题点【理论】!

不管使用任何语言调用RabbitMQ 一般都会存在各种问题,我整理了一下 我觉得会遇到的常见问题,并记录了 解决思路 。没有提供具体代码,后续有时间写个代码体会一下,实际有了解决思路,百度里有很多代码让我们使用。哈哈 …

机器人系统能用MQTT5.0代替ROS2吗?

前言 ROS2是目前最主流的机器人系统,但由于ROS2的学习曲线比较徒陗,而且对于资源受限的系统并不友好;而MQTT5.0是最新的MQTT消息传输协议,为现代IoT提供了更友好的支持,下面讨论MQTT5.0和ROS2结合使用,或机…