使用Robot Framework更改下载目录 [英] Change download directory using Robot Framework
本文介绍了使用Robot Framework更改下载目录的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
推荐答案
您必须覆盖浏览器的默认下载目录。这可以通过配置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
设置的浏览器参数:
browser.download.folderList
设置为2
WHERE2
表示自定义(参见:browser.download.dir)文件夹browser.download.dir
是自定义文件夹的路径。请确保按照文档中的说明传递路径。我在此示例中使用了Python原始字符串。browser.helperApps.neverAsk.saveToDisk
为application/zip
,这表示将保存任何下载的zip,而不提示指定下载位置。
您可以在此堆栈溢出答案中找到指向Chrome和Firefox参数列表的链接:List of Firefox and Chrome arguments/preferences。
这篇关于使用Robot Framework更改下载目录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文