You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RobotFramework使用Browser库执行Playwright操作报无打开页面错误

问题根因

你遇到的报错核心是测试用例的语法结构错误,Robot Framework 把你写的 [Arguments] ${Date} 识别成了一个独立的新测试用例,这个新用例执行时没有打开任何页面,所以调用页面操作关键词就报错了。

具体错误点说明

在RF的语法规则里:

  • 测试用例表下,所有没有缩进的行都会被识别为测试用例名称
  • [Arguments] 属于测试用例/用户关键词的配置项,必须紧跟在测试用例名称的下一行、且带缩进,不能放在测试用例步骤的中间位置

你现有代码的结构被RF解析成了两个测试用例:

  1. 第一个测试用例叫 Find the future christmasday,执行完Sleep 3s就结束了,结束时Browser库会自动关闭打开的页面
  2. 第二个测试用例叫 [Arguments] 2023-12-25 00:00:00.000000,执行时没有任何打开页面的步骤,所以调用Click、Fill Text等操作直接报错
排查思路
  • 先看执行日志里的用例数量:你原本只写了1个用例,但日志里显示执行了两个用例,一个PASS一个FAIL,直接说明解析出了多余用例
  • 检查测试用例的缩进和配置项位置:RF对缩进敏感,所有用例步骤、配置项都必须缩进,配置项必须放在用例的最开头位置
  • 检查关键词拼写:RF关键词大小写敏感,全小写的sleep会被识别为无效关键词
解决方案

修正测试用例的结构,把参数声明移到测试用例开头,同时修正关键词拼写,修正后的代码示例:

*** Settings ***
Library    Browser  enable_presenter_mode=True
Library    XML
Library    Collections
Library    String
Library    DateTime

Documentation     FUTURE CHRISTMAS
*** Variables ***
${Date}=  2023-12-25 00:00:00.000000

*** Test Cases ***
Find the future christmasday
    [Arguments]    ${Date}=${Date}
    Open Browser    https://obstaclecourse.tricentis.com/Obstacles/21269
    Sleep    3s
    ${Day}=    Convert Date    ${Date}    result_format=%A
    Click    id=christmasday
    Fill Text    id=christmasday    ${Day}
    Sleep    2s

内容的提问来源于stack exchange,提问作者LTL

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 05:54:03