自动化测试【软件测试】

自动化测试

什么是自动化

有效减少人力的消耗,同时提高生活的质量

通过自动化测试有效减少人力的投入,同时提高了测试的质量和效率

由于回归测试,版本越来越多,版本回归的压力越来越大,仅仅通过人工测试来回归所有版本是不现实的,所以自动化测试就变得需要。

自动化测试分类

  • 接口自动化测试
  • UI自动化测试(界面测试)
    • 移动端自动化测试
    • web端自动化测试 (selenium)

selenium工具

自动化测试工具有许多,那么我们为什么选择selenium作为我们的web自动化测试工具?

  • 开源免费
  • 跨平台、多平台支持: linux、windows、mac
  • 支持多浏览器 :Firefox、Internet Explorer、Safari、Opera、Chrome、Edge
  • 核心功能:就是可以在多个浏览器上进行自动化测试
  • 可以搭配多种编程语言使用:Java、Python、C#、JavaScript、Ruby等
  • selenium包提供了很多可供测试使用的API

环境部署【Java】—— 环境部署博客

  • 浏览器
  • 浏览器驱动
  • selenium工具包

jdk版本最低要求8

关于环境部署常见问题总结

  1. SessionNotCreatedException在这里插入图片描述

原因:selenium找不到Chrome.exe的安装路径

解决办法:
前提:请先确认您下载的谷歌浏览器不是盗版。
驱动实例化中使用绝对路径:

ChromeDriver driver = new ChromeDriver("E:/browser/Google/Chrome/Application/chrome.exe);//注意:这里放同学自己的Chrome.exe所在路径哦,不要盲目复制粘贴~~
  1. The version of ChromeDriver only support xxxxxxxxx
    在这里插入图片描述

原因:浏览器版本和驱动版本不匹配,重新在官网下载对应版本的驱动

下载地址:浏览器驱动下载
3. The path to the driver executable the path to
在这里插入图片描述

原因:浏览器驱动没有放到系统环境变量下

解决办法(二选一即可):
1)找到驱动所在路径,复制路径并添加系统环境变量
2)将驱动放到jdk路径下

selenium编写的自动化脚本是如何打开浏览器的【案例】

这里说的就是 selenium、 驱动 、 浏览器 三者之间的关系。

  1. 使用selenium编写自动化脚本代码
  2. 驱动要接收selenium脚本发过来的http请求,并且解析请求

创建Maven项目

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bKgvR248-1673931435499)(C:\Users\17512\AppData\Roaming\Typora\typora-user-images\1673929399396.png)]

引用selenium依赖包

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GqP4ea8u-1673931435501)(C:\Users\17512\AppData\Roaming\Typora\typora-user-images\1673929545893.png)]

创建自动化实例

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-s7AMeNSa-1673931435501)(C:\Users\17512\AppData\Roaming\Typora\typora-user-images\1673930365056.png)]

AutoTest.java

import org.openqa.selenium.By;
import org.openqa.selenium.chrome.ChromeDriver;

/**
 * @author SunYuHang
 * @date 2023-01-17 12:26
 * @ClassName : AutoTest  //类名
 */

public class AutoTest {
    //打开我自己发布的博客网站 登录博客网站   
    public void Test() throws InterruptedException {
        //打开浏览器
        ChromeDriver chromeDriver = new ChromeDriver();
        //在浏览器访问 http://43.140.252.242:8080/blog_system/blog_login.html
        chromeDriver.get("http://43.140.252.242:8080/blog_system/blog_login.html");
        //找到用户名输入框并输入用户名
        chromeDriver.findElement(By.cssSelector("#username")).sendKeys("admin");
        Thread.sleep(5000);
        //找到密码输入框并输入密码
        chromeDriver.findElement(By.cssSelector("#password")).sendKeys("123456");
        Thread.sleep(5000);
        //点击登录按钮
        chromeDriver.findElement(By.cssSelector("#submit")).click();
        Thread.sleep(5000);
        //结束会话
        chromeDriver.quit();
    }
}

RunAutoTest.java

/**
 * @author SunYuHang
 * @date 2023-01-17 12:26
 * @ClassName : RunAutoTest  //类名
 */

public class RunAutoTest {
    public static void main(String[] args) throws InterruptedException {
        AutoTest autoTest = new AutoTest();
        autoTest.Test();
    }
}

效果展示

请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孙宇航_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值