当前位置: 首页 > 知识库问答 >
问题:

如何在机器人框架中设置路径铬驱动器?

谷奕
2023-03-14

现在,我设置路径变量

path  : D:..;C:\Program Files\Google\Chrome\Application
Chrome : C:\Program Files\Google\Chrome\Application\chromedriver.exe

我可以在命令行中调用openChrome

但在RIDE

FAIL: WebDriver异常:消息:未知错误:Chrome未能启动:崩溃(驱动程序信息:chromeDrive=2.13.307647 (5a7d0541ebc58e69994a6fb2ed930f45261f3c29),平台=Windows NT 6.1 SP1 x86)

共有3个答案

曹振
2023-03-14

如果您需要针对特定的浏览器版本运行测试,例如,因为您的客户有一个托管环境,并且每次都使用相同的浏览器版本,您可以在源代码存储库中维护浏览器驱动程序,并在测试执行期间将相应的文件夹添加到路径中。

我的验收测试文件夹“atest”包含一个“bin”文件夹,其中包含浏览器驱动程序:

atest
  bin
    chromedriver.exe
    geckodriver.exe
    ...

现在,我可以在套件设置期间将其添加到PATH变量中:

*** Settings ***
Library          OperatingSystem
Suite Setup      Include Browser Drivers


*** Keywords ***
Include Browser Drivers
    Append To Environment Variable    PATH    ${EXECDIR}/bin
戴建义
2023-03-14

下载Chromedriver。exe从其官方网站下载并保存此文件。“C:\Python27\Scripts”目录中的exe文件。现在将此路径作为环境变量,例如C:\Python27\Scripts\chromedriver。现在重新启动计算机并执行测试用例。

益泰平
2023-03-14

你需要的是chrome驱动程序而不是Chrome。从下载chrome驱动程序开始。

https://sites.google.com/a/chromium.org/chromedriver/downloads

把它放在测试可以访问的地方(例如,与测试相关的bin文件夹)。

现在您需要设置环境变量来指向chrome驱动程序。

您可以从测试外部(例如,作为桌面的全局设置)或从测试设置中执行此操作。

从测试之外

只需设置环境变量webdriver。铬。驱动程序指向可执行文件。

(控制面板-

从内部测试

如果你使用jython,你需要创建一个小的java库来为你做这件事

public void setSystemProperty(String key, String value) {
    System.getProperties().setProperty(key,value);
}

用你的测试结果

Prepare Selenium Driver
  Set System Property  webdriver.chrome.driver    ${EXECDIR}/chromedriver.exe

如果您使用的是Python,那么可以使用OperatingSystem库

*** Settings ***
Library  OperatingSystem
Suite Setup  Setup chromedriver
*** Keywords ****
Setup chromedriver
  Set Environment Variable  webdriver.chrome.driver  ${EXECDIR}/chromedriver.exe   
 类似资料:
  • 嗨,我对硒很陌生。所以请原谅我的技术错误。我有一个适合IE的项目,但我也需要使用firefox进行测试。在IE中执行时,项目是否需要指向驱动程序(如IEDriver)的指针?

  • 当我将mysql jdbc驱动程序复制到JDK的\jre\lib\ext时,它执行得非常好。现在,我想通过指定环境变量的类路径来使用jdbc。但是,这样做之后,我的程序抛出异常: “java.sql.SQLException:找不到适合jdbc的驱动程序:mysql://localhost/books" 如何设置类路径?

  • 我正在尝试设置一个容器,以便在Chrome上使用RobotFramework进行测试。 但是当我运行容器时,我总是得到一个WebDriverException。我已经找过了,但找不到任何对我有效的修复方法。 这是我的Dockerfile

  • 问题内容: 考虑以下源代码, 如何检索列表变量中的两个名称(Name1,Name2)?我为“ Get Text”关键字尝试了以下xpath,但仅返回第一个。 请建议 问题答案: 您可以遍历以下元素: 这种方法有效,但是在有许多匹配项时速度很慢。

  • 问题内容: 因此,我阅读了有关将chromedriver添加到我的路径中的所有文档,并遵循了所有文档。我在装有selenium2,maven,eclipse和所有最新驱动程序的Mac上: 我将chromedriver放在我的Applications文件夹中,路径如下: 我想念什么?我根本无法使用chrome驱动程序运行。任何帮助都会很棒,我现在正在尝试随机的东西。 这是我关于selenium的po

  • 我正在尝试使用模块和模块写入映射的网络驱动器。 如何获取写入远程位置的连接和路径? 我需要通过驱动器号吗?如果是,我如何找到它? (节点: 4796)未处理的promise拒绝警告: ChildProcessError:命令失败:net use Z:"\server" /P: Yes /user:用户名密码系统错误67已经发生。 找不到网络名称。 (退出时出现错误代码2) 在回调时(C:\app\