测试--自动化测试selenium

web自动化–selenium

了解自动化和selenium

自动化简介

在这里插入图片描述

selenium优点

1)开源免费
2)支持多浏览器
3)支持多系统
4)提供很多API
5)支持多语言

环境部署

在这里插入图片描述

驱动工作原理

在这里插入图片描述
在这里插入图片描述
eg.一个简单的自动化

public class Util {
    public void test() throws InterruptedException {
        ChromeDriver driver = new ChromeDriver();
        Thread.sleep(3000);
        driver.get("https://www.baidu.com/");
        driver.findElement(By.cssSelector("#kw")).sendKeys("喜羊羊");
        Thread.sleep(3000);
        driver.findElement(By.cssSelector("#su")).click();
        Thread.sleep(3000);
        driver.quit();
    }
}
public class FirstTest {
    public static void main(String[] args) throws InterruptedException {
        Util u = new Util();
        u.test();
    }
}

掌握selenium的基础语法

元素的定位方法

css选择器
driver.findElement(By.cssSelector("#kw")).sendKeys("喜羊羊");

在这里插入图片描述

xpath

在这里插入图片描述
在这里插入图片描述

元素的操作

点击–click、提交–submit

在这里插入图片描述

模拟按键输入–send_keys
driver.findElement(By.cssSelector("#kw")).sendKeys("喜羊羊");
清除对象输入的文本内容–clear()
driver.findElement(By.cssSelector("#kw")).sendKeys("喜羊羊");
driver.findElement(By.cssSelector("#kw")).clear();
driver.findElement(By.cssSelector("#kw")).sendKeys("-----");
获取文本–gettext

在这里插入图片描述

等待

代码执行速度很快,页面渲染速度相对较慢,故代码需要等待渲染完成,否则页面元素找不到

强制等待–线程sleep方法

在这里插入图片描述

隐式等待

在规定的时间范围内。轮询等待元素出现之后立即结束,如果在规定时间仍没出来,抛出异常NoSuchElementException。

显示等待

针对某一个元素进行测试

在这里插入图片描述
在这里插入图片描述
【显示和隐式不可一起使用,等待时间无法确定】

信息的打印

/**
     * 信息打印
     */
    public void  printTest(){
        String title = this.driver.getTitle();//打印标题
        System.out.println("title" + title);
        String currentUrl = this.driver.getCurrentUrl();
        System.out.println("currentUrl" + currentUrl);//打印URL
    }

窗口

在这里插入图片描述
1)获取当前页的句柄–getWindowHandle()

System.out.println(this.driver.getWindowHandle());//获取当前页的句柄,即唯一标识

2)获取所有标签页的句柄 --getWindowHandles()

Set<String> windowHandles = this.driver.getWindowHandles();
        for (String s:windowHandles) {
            System.out.println(s);
        }
窗口切换–switchTo.window
switchTo().window("")// ”“中->是目标句柄
设置窗口大小–manage.window
driver.manage().window().maximize();//最大化
driver.manage().window().minimize();//最小化
driver.manage().window().setSize(new Dimension(1000,800));//自定义,宽   高

在这里插入图片描述

//编译js
driver.executeScript("window.scroll(0,document.body.scrollHeight)");//scrip:置底
driver.executeScript("window.scroll(0,document.body.scrollTop)");//scrip:置顶

导航–navigate

driver.navigate().back();//后退
driver.navigate().forward();//前进

弹窗–Alert接口

在这里插入图片描述

鼠标、键盘的操作–Actions接口

在这里插入图片描述

选择框–select接口

在这里插入图片描述

文件上传

在这里插入图片描述

屏幕截图

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值