java+selenium+autoit3自动化UI测试:修改edge浏览器的下载路径(页面方式)

网上许多修改chrome和firefox浏览器下载路径的方法,都是通过options修改的,对于edge浏览器,selenium中没有对应的方法,只好通过页面修改了。
思路就是:进入下载设置页面–>点击“更改”按钮—>通过autoit3生成控制windows窗口的exe文件—>java的Runtime()类执行exe文件
java代码如下:

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;

import org.openqa.selenium.edge.EdgeDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;

import java.io.IOException;
import java.util.concurrent.TimeUnit;

public class Liulanqi {
    public static void main(String[] args) {
        System.setProperty("webdriver.edge.driver","D:\\msedgedriver.exe");
        WebDriver dr=new EdgeDriver();
        //进入edge浏览器的下载设置页面
        dr.get("edge://settings/downloads");
        dr.manage().window().maximize();
        dr.manage().timeouts().implicitlyWait(8, TimeUnit.SECONDS);

        //点击更改按钮后会弹出windows的选择位置窗口
        dr.findElement(By.xpath("//button[@aria-label=\"更改位置\"]")).click();

        //执行使用autoit3调好的exe脚本,该脚本用于操作上一步弹出的windows窗口,输入路径后保存
        try {
            Runtime.getRuntime().exec("D:\\autoit-v3\\install\\changepath.exe");
        } catch (IOException  e) {
            e.printStackTrace();
        }

        //使用显示等待,直到路径保存成功了再执行下一步(这一步一定要有!!否则会导致位置修改保存不了)
        WebDriverWait wt=new WebDriverWait(dr,30);
        wt.until(ExpectedConditions.textToBe(By.xpath("//div[text()='位置']/../p"),"D:\\2012无量寿经讲解音频下载版"));

        //打开测试网址开始测试
        dr.get("https://www.baidu.com/");
        dr.close();
    }
}

changepath.exe的生成过程:
1.下载autoit3的包,我的是免安装的.
2.使用包中的Au3info工具作为辅助,写成如下脚本(可以写在txt文档中):

WinWait("位置","",10)
ControlFocus("位置","","[CLASS:Edit; INSTANCE:1]")
Sleep(1000)
ControlSetText("位置","","[CLASS:Edit; INSTANCE:1]","D:\2012无量寿经讲解音频下载版")
Sleep(1000)
ControlFocus("位置","","[CLASS:Button; INSTANCE:1]")
Sleep(1000)
ControlClick("位置","","[CLASS:Button; INSTANCE:1]")
Sleep(4000)

以上就是在位置弹出框中输入路径并保存的意思,该工具的在线文档:https://www.autoitx.com/Doc/

3.使用包中的Aut2Exe工具将txt文件转化为exe,转化好后自己双击执行下,看是否成功。
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于JavaSelenium的Web UI自动化测试框架是一种自动化测试工具,可以用于测试Web界面的功能和用户交互。以下是该框架的一些关键特性和优势。 1. 支持多浏览器和平台:这个框架可以在各种主流浏览器(如Chrome、Firefox、Safari等)和操作系统(如Windows、Mac、Linux等)上运行,确保网站在不同环境下的兼容性。 2. 灵活的对象识别:通过使用Selenium的定位策略(如ID、CSS选择器、XPath等),该框架可以准确地识别页面上的元素,从而使测试用例的编写更加简单和可靠。 3. 数据驱动测试:该框架支持数据驱动测试,可以从外部源(例如Excel、CSV等)中加载测试数据,并对每个数据组合执行相同的测试用例,从而提高测试效率和可重复性。 4. 测试报告和日志:这个框架提供了详细的测试报告和日志记录功能。测试报告会提供关键的测试执行结果,如成功率、失败率和跳过率,并展示每个用例的执行状态。日志记录则可以帮助开发人员在调试期间查找问题和进行错误分析。 5. 高可扩展性:该框架可以根据项目需要进行定制和扩展。开发人员可以编写自定义函数和库,以便进行特定的测试操作和验证。 总之,基于JavaSelenium的Web UI自动化测试框架提供了一种可靠、高效和可扩展的方式测试Web界面。它可以帮助团队快速检测和修复潜在的缺陷,提高软件质量和用户体验。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值