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

关注江苏建设厅网站厦门网站的关键词自动排名

关注江苏建设厅网站,厦门网站的关键词自动排名,wordpress百科汉化,蓝色为主的网站案例目录 1、定位元素【8种】 2、操作测试对象 3、添加等待 4、弹窗类型 5、浏览器的操作 6、键盘事件 7、选择框 8、上传文件 1、定位元素【8种】 元素定位是自动化测试的核心,想要去操作一个对象,第一步就是需要我们先去识别这个对象。每个对象就会…

目录

1、定位元素【8种】

2、操作测试对象

3、添加等待

4、弹窗类型

5、浏览器的操作

6、键盘事件

7、选择框

 8、上传文件


1、定位元素【8种】

        元素定位是自动化测试的核心,想要去操作一个对象,第一步就是需要我们先去识别这个对象。每个对象就会有专属的属性(特性),而在前端中,一个元素根据它的id,name,class等属性来定位,所以呢,webdriver中提供了一系列的对象定位方法,有以下8种:

  • id :全局唯一,一定可以唯一定位到一个元素
  • name:不一定全局唯一,有可能定位不到
  • class name:不一定全局唯一,有可能定位不到
  • link text:不一定全局唯一,有可能定位不到
  • partial link text:不一定全局唯一,有可能定位不到
  • tag name:不一定全局唯一,有可能定位不到
  • xpath:一定可以定位到一个元素
  • css selector:样式

  注意:不管使用哪种方式,必须要保证页面上该属性的唯一性

各个定位方式分别是什么意思?

  •  id是页面元素的属性,但并不是所有元素都有id
  • name也是页面元素的属性,如果这个元素有name,并且元素的name命名在整个页面是唯一的,就可以使用这种方式
  • class和tag name【标签名】,如input就是一个标签的名字,可以通过find_element_by_tag_name("input") 函数来定位,如class="su",可以通过find_element_by_class_name("s_ipt")函数定位百度输入框
  • css定位,css使用选择器来为页面元素绑定属性
  • XPath定位,就是扩展了上面的id和name定位方式
  • link text定位,通过链接内容来定位
  • Partial link text定位,通过链接部分文字定位
  • 最常用的两种方式:css选择器【cssSelector】、XPath选择器

使用举例:

import org.openqa.selenium.By;
import org.openqa.selenium.chrome.ChromeDriver;/*** Created with IntelliJ IDEA.* Description:* User:龙宝* Date:2023-02-09* Time:18:28*/
public class First {public void zhaoliyingTest() throws InterruptedException {//打开浏览器,创建驱动实例ChromeDriver chromeDriver = new ChromeDriver();//执行慢一点Thread.sleep(2000);chromeDriver.get("https://www.baidu.com");Thread.sleep(2000);//找到对话框,输入关键词chromeDriver.findElement(By.cssSelector("#kw")).sendKeys("赵丽颖");Thread.sleep(2000);//找到查询按钮,点击查询按钮chromeDriver.findElement(By.cssSelector("#su")).click();Thread.sleep(2000);//关闭浏览器,退出chromeDriver.quit();}
}

        如何知道使用某种定位元素方式时,该属性的名称【例如:上述代码中为什么是"#kw"、"#su"】,以百度首页举例:

 

 鼠标放在右侧指定的代码上,右击:

 

这就是各个属性的名称,选择自己要使用的复制即可~ 

 8中定位方式举例:

package com;import org.openqa.selenium.By;
import org.openqa.selenium.chrome.ChromeDriver;/*** Created with IntelliJ IDEA.* Description:* User:龙宝* Date:2023-02-13* Time:17:08*/
public class Demo {public void demo1() {ChromeDriver chromeDriver = new ChromeDriver();chromeDriver.get("https://www.baidu.com");//id定位chromeDriver.findElement(By.id("kw"));//name定位chromeDriver.findElement(By.name("wd"));//class name 定位chromeDriver.findElement(By.className("s_ipt"));//link text定位chromeDriver.findElement(By.linkText("百度一下"));//partial link text定位chromeDriver.findElement(By.partialLinkText("百度"));//tag name 定位chromeDriver.findElement(By.tagName("input"));//xpath 定位chromeDriver.findElement(By.xpath("/html/body/div[1]/div[2]/div[5]/div[1]/div/form/span[1]/input"));//scc selector 定位chromeDriver.findElement(By.cssSelector("#kw"));}
}

2、操作测试对象

webdriver中提供了一下几种常用的操作对象方法

  • click:点击对象
  • send_keys:在对象上模拟按键输入
  • clear:清除对象的内容
  • submit:提交表单
  • text:用于获取元素的文本信息
chromeDriver.findElement(By.cssSelector("#su")).click();
chromeDriver.findElement(By.cssSelector("#kw")).sendKeys("Java");
chromeDriver.findElement(By.cssSelector("#kw")).clear();
//获取页面的标题
chromeDriver.getTitle();
//获取URL
chromeDriver.getCurrentUrl();

3、添加等待

  • 强制等待:Thread.sleep(5)------只能选择一个固定的时间的等待
  • 隐式等待:全局隐式等待——隐式等待会一直轮询判断元素是否存在,如果不存在就等待设置好的时间里不断的进行轮询,直到元素能够被找到
  • 显示等待:显式等待必须在每一个需要等待的元素前面进行声明,而隐式等待一般都是在要等待的对象之后声明,都属于智能等待方式;
  • 流畅等待 
        //强制等待Thread.sleep(3000);//隐式等待ChromeDriver driver = new ChromeDriver();driver.manage().timeouts().implicitlyWait(Duration.ofSeconds(3));driver.get("https://www.biadu.com");driver.findElement(By.cssSelector("#kw"));//显示等待new WebDriverWait(driver,Duration.ofSeconds(5)).until(driver->driver.findElement(By.cssSelector("#\\31 > div > ")));//关闭driver.quit();

4、弹窗类型

弹窗类型:警告弹窗、确认弹窗、提示弹窗

        //打开弹窗driver.findElement(By.cssSelector("body > input[type=button]")).click();Thread.sleep(3000);//切换到弹窗进行弹窗的处理Alert alert =  driver.switchTo().alert();Thread.sleep(3000);//弹窗输入文本alert.sendKeys("hahahha");Thread.sleep(3000);//1、点击确认alert.accept();//2、点击取消
//        alert.dismiss();

5、浏览器的操作

浏览器最大化:

driver.maximize_window()

设置浏览器宽高:

driver.set_window_size(480,800)

浏览器导航:

        //进入页面driver.navigate().to("https://www.baidu.com");//等同于//driver.get("https://www.baidu.com");//回退driver.navigate().back();//前进driver.navigate().forward();//刷新driver.navigate().refresh();

控制浏览器滚动条:

   void scriptControll() throws InterruptedException {ChromeDriver driver = new ChromeDriver();driver.get("https://image.baidu.com/");Thread.sleep(3000);//执行js命令:让页面置顶/置底//如果想要滑到最小面,值设置的大一些就行driver.executeScript("document.documentElement.scrollTop=5000");Thread.sleep(3000);//0就是顶部driver.executeScript("document.documentElement.scrollTop=0");driver.get("https://www.baidu.com");Thread.sleep(3000);driver.executeScript("var texts = document.querySelector('#kw');texts.value='java104&105'");Thread.sleep(3000);driver.quit();}

6、键盘事件

from selenium.webdriver.common.keys import Keys #需要引入keys 包

键盘按键用法:

通过send_keys()调用按键:

sendkeys(Keys.TAB)  // TAB
sendkeys(Keys.ENTER)  // 回车
//tab 的定位相当于清除了密码框的默认提示信息,等同clear()driver.findElement(By.id("account")).sendKeys(Keys.TAB);
//也可定位登陆按钮,通过enter(回车)代替click()
driver.findElement(By.id("login")).sendKeys(Keys.ENTER);

7、选择框

        WebElement ele = driver.findElement(By.cssSelector("#ShippingMethod"));//先创建选择框对象Select select = new Select(ele);Thread.sleep(3000);//根据文本来选择
//        select.selectByVisibleText("UPS Next Day Air ==> $12.51");//根据属性值来选择
//        select.selectByValue("12.51");//根据序号来选择select.selectByIndex(1);Thread.sleep(3000);

下拉框: 


 

 8、上传文件

sendKeys("文件路径+文件"); 

driver.findElement(By.id("load")).sendKeys("D:\\CCL\\Documents\\Chrome");

好啦,我们下期见咯~

http://www.dinnco.com/news/3765.html

相关文章:

  • 怎样把建好的网站上传到互联网seo优化网站推广全域营销获客公司
  • 自己做的网站如何兼容手机百度搜索
  • 湛江怎么做网站关键词优化海南百度推广公司
  • 选择常州网站建设公司上饶seo博客
  • 六安网站建设收录排名好的发帖网站
  • html网页制作实例代码大地seo视频
  • wordpress星评分常州seo外包公司
  • 做生鲜管理系统的网站在百度上怎么注册网站
  • 佛山网站建设流程地产渠道12种拓客方式
  • 国税网站页面申报撤销怎么做百度推广渠道
  • 淘客怎么做网站如何查询百度搜索关键词排名
  • 深圳微商城网站设计制作蜜雪冰城推广软文
  • 优购物官方网站今日直播喜来健重庆seo的薪酬水平
  • 扬州市工程信息网seo自学教程seo免费教程
  • 园区官方网站建设小程序开发软件
  • 珠海网站建设策划网站优化员seo招聘
  • 网站建设专家论证会重庆网站制作系统
  • 信用卡申请网站建设实事新闻热点
  • 服装网站建设比较好厦门seo全网营销
  • 品牌建设规划方案青岛谷歌seo
  • 旅游网站建设的课题研究的主要内容项目网
  • django 做网站 原理网络营销推广培训机构
  • 建设外贸网站公司简介aso优化服务
  • 原子艺术做的网站怎么样子上海网站seo外包
  • 网站开发应该怎么做百度电话号码
  • 中国黄页网廊坊首页霸屏优化
  • 汇泽网站建设交友网站有哪些
  • 网页设计模板html代码五四主题西安关键词优化软件
  • 建设监督网站首页网站模板设计
  • 网页设计搭建网站网络推广员的日常工作