当前位置: 首页 > wzjs >正文

三网合一网站建设程序最近国际新闻大事

三网合一网站建设程序,最近国际新闻大事,典当行网站源码,网站制作q博主主页: 码农派大星. 数据结构专栏:Java数据结构 数据库专栏:数据库 JavaEE专栏:JavaEE 软件测试专栏:软件测试 关注博主带你了解更多知识 目录 1.元素的定位 1.1 定位步骤 1,要想定位,就先打开开发者工具 2,先点击左上角图标 1.2 cssSelector 1.3 xpath 2.操作测…

 博主主页: 码农派大星.

    数据结构专栏:Java数据结构

 数据库专栏:数据库

JavaEE专栏:JavaEE

软件测试专栏:软件测试

关注博主带你了解更多知识

目录

1.元素的定位

1.1 定位步骤

1,要想定位,就先打开开发者工具

2,先点击左上角图标

1.2 cssSelector

1.3 xpath 

2.操作测试对象 

2.1 点击/提交对象

2.2 模拟按键输⼊

2.3 清除⽂本内容

2.4 获取⽂本信息

2.5 获取当前⻚⾯标题

2.6获取当前⻚⾯URL

3.窗⼝

3.1 窗⼝设置⼤⼩

3.2 窗⼝切换

3.3 屏幕截图

3.4关闭窗⼝

4、等待

4.1 强制等待

4.2 隐式等待

4.3 显⽰等待

优点:

缺点:

5.浏览器导航 

1,打开⽹站

2,浏览器的前进、后退、刷新

6. 弹窗

6.1警告弹窗

6.2 确认弹窗

6.3 提⽰弹窗

7. ⽂件上传

8.浏览器参数设置

1.设置⽆头模式

2.设置浏览器加载策略


在自动化测试中,编写常用的函数可以提高代码的复用性和可维护性。以下是一些在自动化测试中常用的函数示例,这些函数涵盖了常见的操作,如启动浏览器、定位元素、点击、输入文本、等待、断言等

1.元素的定位

Web自动化测试的核心确实是能够准确找到页面上的元素,并在这些元素上执行操作。无论是点击按钮、输入文本、验证页面内容,还是执行其他交互,所有的操作都依赖于能够定位到这些元素

常⻅的元素定位⽅式⾮常多,如id,classname,tagname,xpath,cssSelector

常⽤的主要由cssSelector和xpath

1.1 定位步骤

1,要想定位,就先打开开发者工具

方式有三种:

鼠标右键->检查

Ctrl键+shift键+i

F12

2,先点击左上角图标

再点击要找的对应元素,就会出现定位 

1.2 cssSelector

选择器的功能:选中⻚⾯中指定的标签元素

选择器的种类分为基础选择器和复合选择器,常⻅的元素定位⽅式可以通过id选择器和⼦类选择器来 进⾏定位

定位百度⾸⻚的“百度一下”元素,可以使⽤通过id选择器和⼦类选择器进⾏定位:"btn self-btn bg s_btn"

crtl+F搜索复制的selector ,就可以定位所在元素位置

1.3 xpath 

XPath(XML Path Language)是一种在XML和HTML文档中查找信息的语言,它使用路径表达式来选定文档中的节点

获取HTML⻚⾯所有的节点

//*

获取HTML⻚⾯指定的节点

//[指定节点]

获取⼀个节点中的直接⼦节点

/

获取⼀个节点的⽗节点

..

实现节点属性的匹配

[@...]

采用xpath方式来定位百度⾸⻚的“百度一下”元素

crtl+F搜索复制的xpath ,就可以定位所在元素位置 

2.操作测试对象 

对元素进⾏操作,常⻅的操作,有点击、提交、输⼊、清 除、获取⽂本

2.1 点击/提交对象

click()
 //找到百度⼀下按钮并点击driver.findElement(By.cssSelector("#su")).click();

2.2 模拟按键输⼊

sendKeys("")
  driver.findElement(By.cssSelector("#kw")).sendKeys("2025大年三十倒计时计时器");

2.3 清除⽂本内容

输⼊⽂本后⼜想换⼀个新的关键词,这⾥就需要⽤到 clear()

 driver.findElement(By.cssSelector("#kw")).sendKeys("我爱游戏");driver.findElement(By.cssSelector("#kw")).clear();driver.findElement(By.cssSelector("#kw")).sendKeys("我爱学习");

2.4 获取⽂本信息

getText();
 List<WebElement> elements = driver.findElements(By.cssSelector("#hotsearch-content-wrapper > li > a > span.title-content-title"));for (int i = 0; i < 10;i++){System.out.println(elements.get(i).getText());}

不可以通过 getText() 获取到“百度⼀下按钮”上的⽂字“百度⼀下”

⽂本和属性值获取方式不一样,获取属性值需要使⽤⽅法getAttribute(" 属性名称 ") ;

2.5 获取当前⻚⾯标题

getTitle();

2.6获取当前⻚⾯URL

getCurrentUrl() ;

3.窗⼝

3.1 窗⼝设置⼤⼩

//窗⼝最⼤化
driver.manage().window().maximize();//窗⼝最⼩化
driver.manage().window().minimize();//全屏窗⼝
driver.manage().window().fullscreen();//⼿动设置窗⼝⼤⼩
driver.manage().window().setSize(new Dimension(1024, 768));

3.2 窗⼝切换

1)获取当前⻚⾯句柄: driver.getWindowHandle();

2)获取所有⻚⾯句柄: driver.getWindowHandles();

3)切换当前句柄为最新⻚⾯

        //点击新闻driver.findElement(By.cssSelector("#s-top-left > a:nth-child(1)")).click();String curHandle = driver.getWindowHandle();Set<String> allHandle = driver.getWindowHandles();for(String handle : allHandle){if (handle != curHandle) {//切换页面driver.switchTo().window(handle);}}//测试百度新闻首页driver.findElement(By.cssSelector("#city_name"));

3.3 屏幕截图

屏幕截图⽅法需要额外导⼊包:

        <dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.6</version></dependency>
void Screen (String str) throws IOException {//屏幕截图SimpleDateFormat sim1 = new SimpleDateFormat("yyyy-MM-dd");SimpleDateFormat sim2 = new SimpleDateFormat("HHmmss");String dirTime = sim1.format(System.currentTimeMillis());String fileTime = sim1.format(System.currentTimeMillis());String filename = "./src/test/image/" + dirTime +"/" + str +"-"+fileTime+".png";System.out.println("filename:"+filename);File srcFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);//srcFile放到指定位置FileUtils.copyFile(srcFile,new File(filename));}

3.4关闭窗⼝

driver.close(); 
注意:窗⼝关闭后 driver 要重新定义

4、等待

4.1 强制等待

Thread.sleep();

优点:使⽤简单,调试的时候⽐较有效,易理解

缺点:影响运⾏效率,浪费⼤量的时间

4.2 隐式等待

隐式等待是⼀种智能等待,他可以规定在查找元素时,在指定时间内不断查找元素。如果找到则代码 继续执⾏,直到超时没找到元素才会报错

implicitlyWait () ;

参数:Duration类中提供的毫秒、秒、分钟等⽅法

//隐式等待5秒
driver.manage().timeouts().implicitlyWait(Duration.ofSeconds(5));

隐式等待作⽤域是整个脚本的所有元素。即只要driver对象没有被释放掉(driver.quit()),隐式等待 就⼀直⽣效。

4.3 显⽰等待

显⽰等待也是⼀种智能等待,在指定超时时间范围内只要满⾜操作的条件就会继续执⾏后续代码

new WebDriverWait(driver, Duration.ofSeconds(3)).until($express);

 • elementToBeClickable(By locator)‒⽤于检查元素的期望是可⻅的并已启⽤,以便您可以单击它。

• textToBe (Bylocator , String str)-检查元素。

• presenceOfElementLocated(Bylocator)‒检查⻚⾯的DOM上是否存在元素。

• urlToBe(java.lang.String url)‒检查当前⻚⾯的URL是⼀个特定的URL

优点:

  1. 灵活性高:显式等待可以针对每个元素和场景设置不同的等待时间和条件。比如,等待元素可点击、可见、存在于DOM中等,这样可以根据实际情况灵活调整。
  2. 避免不必要的等待:只有在满足条件时才会继续执行,可以减少等待时间,不像隐式等待那样可能导致不必要的延迟。
  3. 精确控制:你可以选择不同的等待条件(如元素可见、可点击、元素存在等),适用于更复杂的场景,提供更高的控制权。

缺点:

  1. 需要更多的代码:每次使用显式等待时,都需要明确指定等待的条件和最大等待时间,可能导致代码更复杂。
  2. 可能增加代码冗余:在不同地方使用显式等待时,如果处理方式相似,可能会导致冗余的代码。

5.浏览器导航 

1,打开⽹站

 // 更⻓的⽅法driver.navigate().to("https://selenium.dev");// 简洁的⽅法driver.get("https://selenium.dev");

2,浏览器的前进、后退、刷新

 driver.navigate().back();driver.navigate().forward();driver.navigate().refresh();

6. 弹窗

6.1警告弹窗

 Alert alert = driver.switchTo.alert();//确认
alert.accept()

6.2 确认弹窗

Alert alert = driver.switchTo.alert();//确认
alert.accept()//取消
alert.dismiss()

6.3 提⽰弹窗

 Alert alert = driver.switchTo.alert();alert.sendKeys("hello");alert.accept();alert.dismiss();

7. ⽂件上传

点击⽂件上传的场景下会弹窗系统窗⼝,进⾏⽂件的选择。 selenium⽆法识别⾮web的控件,上传⽂件窗⼝为系统⾃带,⽆法识别窗⼝元素 但是可以使⽤sendkeys来上传指定路径的⽂件,达到的效果是⼀样的

 WebElement ele = driver.findElement(By.cssSelector("body > div > div > 
input[type=file]"));ele.sendKeys("D:\\selenium2html\\selenium2html\\upload.html");

8.浏览器参数设置

1.设置⽆头模式

启用无头模式(没有显示的浏览器界面),这通常用于自动化测试

Chrome0ptions options =new Chrome0ptions();
options.addArguments("-headless");

2.设置浏览器加载策略

options.setPageLoadStrategy(PageLoadStrategy.NONE);

http://www.dtcms.com/wzjs/193949.html

相关文章:

  • dba网站网络营销公司全网推广公司
  • html手机网站怎么做酒店如何进行网络营销
  • 做网站用什么语言好每日新闻简报
  • 班级网站源代码大众网潍坊疫情
  • pc做网站服务器友链外链app
  • 自己做的网站能干站什么营销技巧和营销方法培训
  • 南阳政府做网站推广吗整站关键词快速排名
  • 加强网站微信公众号平台建设高清的网站制作
  • 广州网络公司建站国内最新新闻
  • 中文单页面网站模板免费下载建站流程新手搭建网站第一步
  • 网站栏目排序宣传推广方式有哪些
  • 湘潭做网站价格优选磐石网络外贸推广方式
  • 兰州的互联网公司广州seo团队
  • 高端互联网网站百度云网盘登录入口
  • 著名的淘宝客网站互联网推广员是做什么的
  • 外包公司做网站怎么样最新的域名网站
  • 深圳福田网站建设公司搜索引擎网站入口
  • 网站开发软件公司网络营销企业是什么
  • 遂宁商城网站建设方案软文范例大全300字
  • bootstrap网站模板下载公司网站建设平台
  • 河北秦皇岛建设局网站桂林网站设计制作
  • 望江县建设局网站推广引流网站
  • 做app做网站从何学起2021年重大新闻事件
  • 在住房城乡建设部网站上哪里下载规范聊城今日头条最新
  • 怎么 给自己的网站做优化呢百度sem
  • 中企业网站建设专业北京seo公司
  • 网站内容维护合同湖南seo优化价格
  • 京东商城网站建设目的世界企业排名500强
  • 设计网站思路如何写雷神代刷网站推广
  • 图片类网站建设怎样申请网站