自动化测试---即selenium

自动化测试

自动化测试的意思就是:本来是人去做测试的,现在让机器来帮你做测试。

优点体现在:

  • 节约成本
  • 提高效率
  • 减少人工去做事
  • 提高复用性

UI自动化

1、关于UI自动化大家常见工具或者框架有:AutoIt V3 、selenium、uiautomator2、Appium、adb、ATX-Test、Airtest、ATXServer2、STF、TestCafe、Robot Framework、QTP、Playwright 等等

UI 自动化测试

背景

UI自动化测试,能确保你的 UI 界面逻辑操作正常运行。UI 界面的情况是非常多的,不同用户使用不同数据在不同的浏览器和端上做一些操作,不定因素非常多,所以 UI 自动化测试是一个对于 UI 界面检验的一个非常好的办法,比较 UI 测试的工作量是非常大的。

UI 自动化测试,让你增加许多测试用例、测试套件,减少重复操作,提升测试的整体的效率。

面临的挑战

  • UI 的频繁更改:页面的 UI 很可能随时更改的,这意味着自动化测试的配置需要频繁做出改变。
  • 多种浏览器的兼容性:UI 页面涉及到许多浏览器的展示,不同浏览器就会有不同的情况产生。
  • UI 测试工具的选择:UI 测试需要选取一些 UI 测试工具来进行测试,这样可以解放双手,提高效率。

selenium使用

Selenium 是一个免费(开源)的自动化测试框架,用于验证不同浏览器和平台上的 web 应用程序。你可以使用多种编程语言,如 Java、C#、Python 等来创建 Selenium 测试脚本。使用Selenium测试工具进行的测试通常被称为 Selenium Testing。

痛处1,selenium webdriver 需要与浏览器版本一致,解决办法自动下载驱动,但是有网络等其它原来肯能无法下载

复制代码
        //下载浏览器驱动
		WebDriverManager.chromedriver().setup();

痛处2,selenium.NoSuchElementException: no such element 无法定位

元素表达式正确但是始终需要切换表达,具体解决办法请参考如下两边文章

第一个链接:本人在实战经常遇到一些问题

selenium+webdriver+HTML 经常遇到的问题_html页面调用selenium-webdriver_Aimin2022的博客-CSDN博客

第一个链接:主要记录selenium基础知识

selenium + appium 自动化测试_自动化测试selenium_Aimin2022的博客-CSDN博客

代码演示(已封装)

复制代码
/**
 * 刷新浏览器---刷新
 */
复制代码
    public void refreshB(String time) {
        try {

            driver.navigate().refresh();
        } catch (Exception e) {
            log.error("刷新浏览器出现错误,报错内容:" + e.fillInStackTrace());
        }
    }
复制代码
/**
 * 默认元素定位方法用xpath进行输入----输入
 * @param xpath 定位xpath
 * @param content 输入内容(匹配输入验证/订单号/流水号/指定编码)
 */
复制代码
    public void inputContent(String xpath, String content) {
        try {
            String param= updateParamValue(content);
            Thread.sleep(900);
            //log.info("输入内容:"+content);
            WebElement element = driver.findElement(By.xpath(xpath));
            element.clear();
            element.sendKeys(replaceParam(param));
        } catch (Exception e) {
            log.error(format("向%s元素输入%s失败", xpath, content)+",报错内容是:"+e.fillInStackTrace());
        }
    }
复制代码
/**
 * 默认使用xpath方法定位元素点击----点击
 * @param xpath 位置
 */
复制代码
    public void click(String xpath) {
        try {
            driver.findElement(By.xpath(xpath)).click();
            setPass();
        } catch (Exception e) {
            log.error(format("点击元素:%s 失败,报错内容:",xpath)+e.fillInStackTrace());
            setFail();
        }
    }
相关推荐
P1Browser4 天前
Puppeteer 与 Selenium 技术对比:多账号自动化管理如何做环境隔离?
selenium·测试工具·自动化
Data_Journal8 天前
如何使用 Selenium 和 Node.js 绕过 CAPTCHA
selenium
郝学胜-神的一滴8 天前
Python浏览器自动化:Selenium与Playwright实战对比,网页爬虫&自动操作一站式指南
开发语言·爬虫·python·selenium·程序人生·自动化
Wokoo710 天前
Selenium 核心 API 解析(三)
python·功能测试·selenium
技术人生00110 天前
Selenium 工程化模板(日志+异常截图,可直接复制使用)
python·selenium·测试工具
Wokoo710 天前
Selenium:元素定位、动态适配与性能优化(二)
前端·selenium·自动化
代码不停12 天前
自动化测试(java)
java·开发语言·selenium·自动化
han688914 天前
selenium之实战
笔记·python·selenium·测试工具·自动化
Madison-No714 天前
多语言聊天大模型--测试报告
linux·git·python·selenium·jmeter·自动化·postman
落魄大学生之流水线上谋生计17 天前
Selenium 入门到实战:用 Python 写出稳定的浏览器自动化
python·selenium·自动化