使用Robot Framework更改下载目录 [英] Change download directory using Robot Framework

查看:30
本文介绍了使用Robot Framework更改下载目录的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我当前可以访问网页并单击下载按钮。 当我执行此操作时,下载将在默认目录中启动(Download.显然)

我想在我的桌面上创建一个文件夹,并默认下载里面的每个文件。我能做些什么呢?我需要什么?

推荐答案

您必须覆盖浏览器的默认下载目录。这可以通过配置Web驱动程序来完成。SeleniumLibrary的关键字Open Browser为此目的为Firefox(ff_profile_dir)和Chrome(options)提供了单独的参数。

此外,您还必须根据您使用的特定浏览器启用自动保存和其他浏览器配置。

请注意,在Windows上工作时,需要特别注意传递的路径:

请注意,如果选项字符串包含反斜杠,则示例 Windows操作系统路径,Robot Framework中的反斜杠都需要转义 数据和Python端。这意味着必须写入单个反斜杠 使用四个反斜杠字符。示例,Windows路径: "C:path oprofile"必须写为"C:\\path\ o\\profile"。 编写反斜杠的另一种方法是使用Python原始字符串和示例 写入:r"C:\path\to\profile"

以下是使用Firefox和SeleniumLibrary 4.3.0下载source of Robot Framework from GitHub的示例。

*** Settings ***
Library    SeleniumLibrary

*** Test Case ***
Download Robot Framework into predefined folder
    Open Browser    https://github.com/robotframework/robotframework    Firefox   
    ...    ff_profile_dir=set_preference("browser.download.folderList", 2);set_preference("browser.download.dir", r"C:\Users\myuser\Documents\Robotframework\SO_material");set_preference("browser.helperApps.neverAsk.saveToDisk", "application/zip")
    
    Click Element    //summary[contains(.,'Code')]
    Click Element    //a[contains(.,'Download ZIP')]
    [Teardown]    Close Browser

设置的浏览器参数:

  1. browser.download.folderList设置为2WHERE

    2表示自定义(参见:browser.download.dir)文件夹

    来源:Download Manager preferences

  2. browser.download.dir是自定义文件夹的路径。请确保按照文档中的说明传递路径。我在此示例中使用了Python原始字符串。

  3. browser.helperApps.neverAsk.saveToDiskapplication/zip,这表示将保存任何下载的zip,而不提示指定下载位置。

您可以在此堆栈溢出答案中找到指向Chrome和Firefox参数列表的链接:List of Firefox and Chrome arguments/preferences

这篇关于使用Robot Framework更改下载目录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆