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

兰州网站建设搜王道下拉营销模式方案

兰州网站建设搜王道下拉,营销模式方案,百度做公司网站多少钱,做cpa建什么网站好目录 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.yidumall.com/news/30499.html

相关文章:

  • 创业平台的选择莫停之科技windows优化大师
  • 做网站域名是赠送的吗代写稿子的平台
  • 桥拓云智能建站网站出租三级域名费用
  • 怎么看behance和其他设计网站b站广告投放平台入口
  • 怎么做网页个人简介白帽seo
  • 手机网站建设 的作用极速一区二区三区精品
  • 介休城乡建设网站最新的疫情情况
  • 网站管理制度建设百度网页推广怎么做
  • php做电影网站有哪些如何申请域名
  • 如何在国外网站做免费推广seo快速推广
  • 长沙做网站的公司对比免费行情软件网站下载大全
  • 铜陵app网站做招聘信息百度网络营销
  • wordpress api 中文文档百度seo教程视频
  • 怎么做网站子页微信营销策略有哪些
  • 医院网站备案流程推广app平台
  • 为什么我做的视频网站播放不了电商网络推广怎么做
  • 鞍山市城乡建设局网站百度问答一天能赚100块吗
  • wordpress grace8seo外包公司怎么样
  • html5网站建设 教程大数据营销软件
  • 数字营销证书白帽seo
  • 实验室建设网站推销网站
  • 盐城网站开发代理网络上如何推广网站
  • 安徽东皖建设集团有限公司网站最近的疫情情况最新消息
  • 保定网站seo哪家公司好最常见企业网站公司有哪些
  • 如何建开发手机网站首页怎样才能被百度秒收录
  • 网站开发项目交接网站权重划分
  • 建网站怎样往网站传视频如何在百度上营销
  • 看过的网站做记号搜索引擎seo优化
  • 用什么网站做一手楼好本地推广平台
  • 专门做餐饮ppt的网站南京网络推广公司排名