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

网站开发简介广西城市建设学校学生网站

网站开发简介,广西城市建设学校学生网站,在线查询网站开发语言,怎么查网站做百度竞价信息前言 🌟🌟本期讲解关于自动化测试函数相关知识介绍~~~ 🌈感兴趣的小伙伴看一看小编主页:GGBondlctrl-CSDN博客 🔥 你的点赞就是小编不断更新的最大动力 🎆那么废话…

前言

🌟🌟本期讲解关于自动化测试函数相关知识介绍~~~

🌈感兴趣的小伙伴看一看小编主页:GGBondlctrl-CSDN博客

🔥 你的点赞就是小编不断更新的最大动力                                       

🎆那么废话不多说直接开整吧~~

目录

📚️1.操作选择元素

🚀1.1点击提交

🚀1.2模拟输入

🚀1.3清除内容

🚀1.4 获取文本信息

🚀1.5获取标题,URL

📚️2.窗口的操作

🚀2.1句柄的操作

🚀2.2窗口的调整

🚀2.3关闭窗口

📚️3.等待

🚀3.1强制等待

🚀3.2隐式等待

🚀3.3显示等待

📚️4.浏览器导航

🚀4.1打开网站

🚀4.2浏览器的前进后退域刷新

📚️5.弹窗

📚️6.文件上传

📚️7.浏览器参数设置

🚀7.1无头模式设置

🚀7.2浏览器加载策略

📚️8.总结

——前言:本期小编主要是进行代码的演示,以及对应代码是作用于什么功能来进行操作,小编可能在解释上比较少,主要是一些内置方法的调用~~~(选择器主要是使用cssSelector

📚️1.操作选择元素

🚀1.1点击提交

此时我们在浏览器进行选择点击元素后,可以使用一下代码进行模拟点击的操作:

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

这里使用click进行点击事件模拟;

🚀1.2模拟输入

代码如下:

  driver.findElement(By.cssSelector("#kw")).sendKeys("雷霆万钧");

 这里使用sendKeys进行输入事件模拟;

🚀1.3清除内容

代码如下:

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

这里使用clear进行清除输入框的事件模拟;

🚀1.4 获取文本信息

代码如下:

 System.out.println(driver.findElement(By.cssSelector("#hotsearch-content-wrapper > li:nth-child(1)")).getText());

这里使用getText进行获取文本的操作;

当然如果这里的元素是一个属性那么就要使用:getAttribute("属性名称")进行获取属性的操作;

🚀1.5获取标题,URL

 代码如下:

void getUrlAndTitle(){createDriver();System.out.println(driver.getCurrentUrl());System.out.println(driver.getTitle());driver.quit();}

获取这里的URL是getCurrentUrl,然后获取标题为getTitle;

📚️2.窗口的操作

🚀2.1句柄的操作

提示:在每个页面都有一个drive对应的句柄,如果跳转另一个页面后(打开了两个页面),那么就要操作句柄的转换;

 //句柄的操作void getHandle(){//这里要点击进入另一个页面createDriver();driver.findElement(By.cssSelector("#hotsearch-content-wrapper > li:nth-child(1) > a")).click();//此时进入了另一个页面,更换driver句柄//获取当前句柄String concurrentDriver = driver.getWindowHandle();//获取所有页面句柄Set<String> allDrivers = driver.getWindowHandles();for(String handle : allDrivers){if(handle != concurrentDriver){driver.switchTo().window(handle);}}

注意:我们要获取当前页面的drive句柄,然后再次获取全部页面的句柄;最后如果过当前页面不为之前获取的页面,那么就要使用if语句进行句柄的转换;

🚀2.2窗口的调整

代码如下:

void changeWindow() throws InterruptedException {createDriver();driver.manage().window().minimize();Thread.sleep(3000);driver.manage().window().maximize();Thread.sleep(3000);//全屏窗⼝driver.manage().window().fullscreen();Thread.sleep(3000);//⼿动设置窗⼝⼤⼩driver.manage().window().setSize(new Dimension(1024,768));driver.quit();}

解释:第一个minize即最小化,然后就是最大化,全屏,最后规定尺寸大小;

3.3屏幕截图

我们这里首先要进行依赖的引入:

        <dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.6</version></dependency>

代码如下:

File file = ((TakesScreenshot)webDriver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(file,new File(filename));

 注意:copyFile中第一个file是我们截图的文件,然后后面就是我们保存文件的路径;

🚀2.3关闭窗口

代码如下:

driver.close();

但是如果存在两个close,关闭两个页面,那么注意:将这里的driver转化,close会将对应的句柄进行释放,所以必须进行句柄修改;

📚️3.等待

🚀3.1强制等待

代码如下:

Thread.sleep(1000);

这里的1000指的就是1000ms,那么所以就是直接强制等待1s;(等待的主要的作用就是在等待渲染,防止在查找元素时,元素本来存在,但是由于没有渲染出来,导致找不到元素) 

🚀3.2隐式等待

隐式等待是⼀种智能等待,他可以规定在查找元素时,在指定时间内不断查找元素。如果找到则代码继续执⾏,直到超时没找到元素才会报错。
implicitlyWait() 参数:Duration类中提供的毫秒、秒、分钟等⽅法

代码如下:

driver.manage().timeouts().implicitlyWait(Duration.ofSeconds(2));

注意:隐式等待的作用域是全局中;

🚀3.3显示等待

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

代码如下:

new WebDriverWait(driver, Duration.ofSeconds(3)).until(ExpectedConditions.presenceOfElementLocated(By.cssSelector("#\\31  > div > div > div > div > div > div.header-wrapper_3m6nI > div.cos-row.row-text_1L24W.row_4WY55 > div > div > div.cos-flex.cos-items-center > div.title-wrapper_XLSiK > a > div > p > span > span")));

 注意:

• elementToBeClickable(By locator) ‒ ⽤于检查元素的期望是可⻅的并已启⽤,以便您 
可以单击它。 
• textToBe(Bylocator,String str) - 检查元素。 
• presenceOfElementLocated(Bylocator) ‒ 检查⻚⾯的 DOM 上是否存在元素。 
• urlToBe(java.lang.String url) ‒ 检查当前⻚⾯的 URL 是⼀个特定的 URL;

当然这里还有其他的方法~~~

📚️4.浏览器导航

🚀4.1打开网站

代码如下:

driver.navigate().to("https://selenium.dev");driver.get("https://selenium.dev");

注意:这两种方法都是打开网站的操作,没有什么区别;

🚀4.2浏览器的前进后退域刷新

代码如下所示:

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

 对应的就是上述的按键;

📚️5.弹窗

具体的代码如下所示:

Alert alert = driver.switchTo.alert();
//输入内容
alert.sendKeys("");
//确认
alert.accept();
//取消
alert.dismiss();

大致就是:点击进入弹框过后,出现了输入框,通过sendKey进行输入;

然后accept进行确认,然后dismiss进行取消;

📚️6.文件上传

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

文件上传代码如下所示:

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

📚️7.浏览器参数设置

🚀7.1无头模式设置

一般来说,我们启动浏览器后,直接就是可见式的看见浏览器的启动,但是设置无头模式后,直接在后台运行,就不用盯着浏览器看了;

代码如下所示:

        WebDriverManager.chromedriver().setup();ChromeOptions options = new ChromeOptions();options.addArguments("--remote-allow-origins=*");//设置无头模式options.addArguments("-headless");WebDriver driver = new ChromeDriver(options);

  options.addArguments("--remote-allow-origins=*");设置网址访问权限;
  options.addArguments("-headless");设置无头模式;

🚀7.2浏览器加载策略

代码如下所示:

 void changePage(){WebDriverManager.chromedriver().setup();ChromeOptions options = new ChromeOptions();options.addArguments("--remote-allow-origins=*");//options.setPageLoadStrategy(PageLoadStrategy.NORMAL);//options.setPageLoadStrategy(PageLoadStrategy.NONE);//options.setPageLoadStrategy(PageLoadStrategy.EAGER);WebDriver driver = new ChromeDriver(options);driver.get("https://www.baidu.com/");driver.quit();}

options.setPageLoadStrategy(PageLoadStrategy.NORMAL):即默认加载,即全部数据进行加载;

options.setPageLoadStrategy(PageLoadStrategy.NONE):DOM访问已准备就绪,但是图像资源可能还在加载;

options.setPageLoadStrategy(PageLoadStrategy.EAGER):完全不会阻塞webdriver;会导致什么资源都没加载出来;

📚️8.总结

本期小编主要讲解了关于自动化测试的函数,涉及到操作元素,窗口的操作,等待,浏览器导航,弹窗操作,文件上传以及浏览器参数设置;

🌅🌅🌅~~~~最后希望与诸君共勉,共同进步!!!


💪💪💪以上就是本期内容了, 感兴趣的话,就关注小编吧。

       😊😊  期待你的关注~~~


文章转载自:

http://D1ftycYR.yxshp.cn
http://YDDMmDBk.yxshp.cn
http://Nocu9mMy.yxshp.cn
http://BNC5ZkF9.yxshp.cn
http://SIWrTIRv.yxshp.cn
http://Gq39gBgm.yxshp.cn
http://VBbiHBP3.yxshp.cn
http://B61hkEZQ.yxshp.cn
http://o72D0VBF.yxshp.cn
http://iXClVDSQ.yxshp.cn
http://CZgx90qp.yxshp.cn
http://2bSzLnSk.yxshp.cn
http://UUNhzDrs.yxshp.cn
http://2qeaG0hY.yxshp.cn
http://jFPq6uby.yxshp.cn
http://W9xtJw5d.yxshp.cn
http://GZA1difH.yxshp.cn
http://ROBZOhGw.yxshp.cn
http://Qbrgrxbx.yxshp.cn
http://WAlqR4bj.yxshp.cn
http://vOQQB5re.yxshp.cn
http://AyvU6OKW.yxshp.cn
http://1ws1HdDa.yxshp.cn
http://h5r1ldug.yxshp.cn
http://H0rQ3yoh.yxshp.cn
http://li6KCQdY.yxshp.cn
http://r15HLPvt.yxshp.cn
http://gJRJRNA1.yxshp.cn
http://l6IdMR5W.yxshp.cn
http://90rD1kyd.yxshp.cn
http://www.dtcms.com/wzjs/779447.html

相关文章:

  • 企业网站cms平台网站应该怎样做seo
  • 什么网站程序好静态网站如何做自适应移动端
  • 大连制作网站软件免费代理ip的网站
  • 厦门网站建设哪家专业东莞百度seo排名
  • 不会做网站专业的佛山网站建设价格
  • 广东海外建设监理有限公司网站公众号运营策划书
  • 做淘宝美工的网站苏州网站建设kgu
  • 网站建设公司内幕互联网营销培训班 考证
  • 专业制作企业网站wap网站部署
  • thinkphp制作网站开发wordpress quiz
  • python可以做网站京东网上购物平台
  • 南宁建站模板厂家网件路由器做网站
  • 从化建网站电子商务公司设计网站建设
  • 关键词指数查询网站建设要哪些seo
  • 申请个人主页网站地址怎么敲代码做网站
  • 友点企业网站管理系统 模板wordpress get option
  • 未备案网站查询电商网站设计实训总结报告
  • 图书馆网站建设策划汽车配件响应式网站
  • 网站版面的图文是怎么做的在线免费视频网站推广
  • 自助建站平台设计器网址经营是什么
  • 福州网站制作哪里好网站开发工具 售价
  • 专业的高密做网站的大学生活动网站开发文案
  • 网站建设外包发展情况百度竞价推广的技巧
  • 推广 广州网站建设公司阿里巴巴法拍房官网
  • 网站小空间麻花星空影视传媒制作公司网站
  • 2狠狠做网站怎么做企业营销型网站
  • 百度 特定网站搜索wordpress iis速度慢
  • 厦门找一家做网站的公司好四川建设厅证件查询
  • 网站备案 做网站网站建设与维护工资
  • 西安做网站的公司维护上饶网站建设推广