web自动化测试(java+seleium)元素定位,全屏截图

这篇具有很好参考价值的文章主要介绍了web自动化测试(java+seleium)元素定位,全屏截图。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

元素定位

示例

  System.setProperty("webdriver.gecko.driver", "");
  ChromeOptions chromeOptions = new ChromeOptions();
  chromeOptions.setHeadless(true);
  WebDriver driver = new ChromeDriver(chromeOptions);
  driver.get("https://www.baidu.com/");
  //TODO 进行定位
	......
  // 关闭浏览器
  driver.quit()

1、id定位

根据元素的id属性来定位元素

  //通过id定位
  driver.findElement(By.id("kw")).sendKeys("selenium如何定位元素");

2、name定位

根据元素的name属性来定位元素,但是注意name的属性值在当前文档中可以不是唯一的

	//通过name定位
   driver.findElement(By.name("wd")).sendKeys("selenium如何定位元素");

3、class_name定位

通过class定位

	//通过class定位
  driver.findElement(By.className("s_ipt")).sendKeys("selenium如何定位元素");

4、tag_name定位

通过tag进行定位,tag定位比较模糊,多用于标题等特殊标签

driver.findElement(By.tagName("h1"))

5、link_text定位

定位超链接文本(文本值)

driver.findElement(By.linkText("hao123"))

6、partial_link_text定位

模糊的link_text定位

driver.findElement(By.partialLinkText("hao"))

7、xpath定位

能够实现路径定位(绝对路径,相对路径);
可以利用路径+元素属性进行定位

 driver.findElement(By.xpath("//input[@id='kw']"))

8、css定位

采用css的方式定位元素

driver.findElement(By.cssSelector("#id名称"))

常用api(操作标签)

1、元素单击

.click()

2、表单提交

.submit()

3、在输入框中输入指定内容

Input.sendkeys();

4、在输入框中清除所有的文字内容

Input.clear();

5、获得文本值

.getText()

全屏截图

问题

当我们要进行全屏截图时,我们需要滑动浏览器右边的滚轮,但是滑动太快,便会造成页面并没有加载完毕,最终截出来的图为页面加载中的图。因此需要需要慢慢进行滑动加载。文章来源地址https://www.toymoban.com/news/detail-478708.html

代码实现

 /**
     * 重置窗口大小(调整至可以正常截图)
     *
     * @param driver 驱动对象
     */
    private void resetWindowSizeToScreenshot(WebDriver driver) throws InterruptedException {
        JavascriptExecutor javascriptExecutor = (JavascriptExecutor) driver;
        //最高高度
        int lastHeight = 0;
        int k = 1;
        while (true) {
            // 获取当前高度
            Object thisHeightObject = javascriptExecutor.executeScript("return document.body.scrollHeight;");
            int thisHeight = Integer.parseInt(String.valueOf(thisHeightObject));
            // 判断滑动后的高度lastHeight,与当前高度是否发生变化,如果没有变化,说明滑动到了最底部
            if (lastHeight != thisHeight) {
                String jsMove = String.format("window.scrollBy(0,%s)", k * 300);
                // 向下滑动
                javascriptExecutor.executeScript(jsMove);
                // 滑动后赋值
                lastHeight = thisHeight;
                sleep(1000);
                k++;
            } else {
                // 高度相同,跳出
                break;
            }
        }
        sleep(3 * 1000);
        driver.manage().window().setSize(new Dimension(1920, lastHeight + 300));
    }

到了这里,关于web自动化测试(java+seleium)元素定位,全屏截图的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • IOS自动化测试元素定位

    一、元素属性介绍   1、元素属性   2、查看各定位方式执行效率 二、iOS常用定位方法   1、accessibility_id   2、class_name   3、Xpath   4、ios_class_chain(类型链)   5、ios_predicate(谓词) 一个页面最基本组成单元是元素,想要定位一个元素,我们需要特定的信息来说明这个元素的唯一特

    2024年01月18日
    浏览(49)
  • 【web自动化】selenium+python八大元素定位

    推荐:b站软件测试老白 注意点 1.有id才能能使用id定位 2.id不能重复 通过百度页面,演示如何查找id确定id是否重复,其他方式定位也可以这样搜索 代码如下(示例): 如果有多个class_name,可以使用 find_elements 和取下标的方式 例如:打开哔哩哔哩页面,有番剧,电影等等,他

    2024年01月21日
    浏览(84)
  • Web自动化 —— Selenium元素定位与防踩坑

    2. 基本元素定位二 3. CSS选择器定位法一 4. CSS选择器定位法二 浏览器完整的打开-关闭调用流程 5. xpath定位法 1、相对路径定位 //标签名[@属性名=\\\"属性值\\\"] 2、定位某个元素的父级元素 元素xpath/parent::\\\"父级元素标签名\\\" //*[@id=\\\"list\\\"]/dl/a/parent::dl 3、定位一组元素的第几个 xpath[数字

    2024年02月09日
    浏览(45)
  • 【selenium模块-WEB自动化】八大网页元素定位方法(三)

    一、id 定位 标签的 id 具有唯一性,就像人的身份证。 二、name 定位 name 指定标签的名称,在页面中可以不唯一。 三、class 定位 class 指定标签的类名,在页面中可以不唯一。 四、tag 定位 每个 tag 往往用来定义一类功能,所以通过 tag 来识别某个元素的成功率很低,每个页面

    2024年02月15日
    浏览(51)
  • python ui自动化测试元素定位常用语法

    第一部分是css样式定位方法 选择器 示例 示例说明 CSS . class .intro 选择所有class=\\\"intro\\\"的元素 1 # id #firstname 选择所有id=\\\"firstname\\\"的元素 1 * * 选择所有元素 2 element p 选择所有p元素 1 element,element div,p 选择所有div元素和p元素 1 element   element div p 选择div元素内的所有p元素 1 element

    2024年02月13日
    浏览(51)
  • 【selenium自动化测试】如何定位页面元素,及对页面元素的操作方法

    selenium元素定位 ​selenium定位元素的方式有8种。 fild_element(by,value):by表示使用的定位方式,定位方式可以参见By类。value表示值,例如:根据id定位 By.ID,value=id属性的值。该方法返回元素对象,返回值如下: 这个返回结果说明:返回值为WebElement类的对象,元素在使用方法时

    2024年02月10日
    浏览(68)
  • App自动化测试笔记(四):UIAutomatorViewer与元素定位API

    1、应用场景 定位元素的时候必须根据元素的相关特征来进行定位,而 UIAutomatorViewer 就是用来获取元素特征的。 如何使用UIAutomatorViewer 1、保证想要查看的元素在当前的频幕上 2、打开UIAutomatorViewer工具 3、点击左上角左数第二个按钮 4、点击想要获取特征的元素 5、查看工具右

    2024年03月17日
    浏览(54)
  • 自动化测试学习(六)-selenium定位元素之CSS选择器详细用法

    目录 1.通过class属性定位 2.通过id属性定位 3.通过标签名定位 4.其他方法定位    CSS是一种语言,它可以比较灵活的选择控件的任意属性,一般情况下比Xpath快,下面我们详细介绍CSS的用法。CSS常见语法如下表所示:  选择器 示例 描述 .class .s_ipt 选择class=\\\"s_ipt\\\"的所有元素 #i

    2024年01月17日
    浏览(52)
  • Selenium元素定位全攻略,让你轻松玩转自动化测试!

    一、什么是元素定位 元素定位就是查找HTML元素的过程,操作页面元素之前,首先要对元素进行定位,所以定位是自动化脚本编写的开始。 通常使用find_element或find_elements方法来定位元素(find_element 使用给定的方法定位和查找一个元素;find_elements 使用给定的方法定位和查找所

    2024年02月04日
    浏览(46)
  • Web自动化测试——XAPTH高级定位

    XPath 是一门在 XML 文档中查找信息的语言 XPath 使用路径表达式在 XML 文档中进行导航 XPath 的应用非常广泛 XPath 可以应用在UI自动化测试 web自动化测试 app自动化测试 可维护性更强 语法更加简洁 相比于css可以支持更多的方式 浏览器-console $x(\\\"xpath表达式\\\") 浏览器-elements ctrl+f 输

    2024年02月03日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包