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

如何在Squish Python脚本中处理已知Object not found error并继续执行

解决Squish脚本遇Object Not Found Error仍继续执行的问题

在Squish的Python测试脚本中,Object not found error本质是脚本抛出了ObjectNotFoundError异常,默认会终止执行。要让脚本继续运行,只需用Python的异常捕获机制包裹可能出错的代码块,针对性处理该异常即可。

核心实现思路

把涉及对象查找、操作的代码放在try-except块中,捕获squish.ObjectNotFoundError(或更通用的LookupError),在异常分支里做日志记录或跳过当前操作,之后脚本会自动继续执行后续代码。

代码示例

import squish

def test_main():
    # 正常执行的前置操作
    squish.clickButton(squish.waitForObject(":Login_Button"))
    
    # 可能出现对象找不到的代码块,用try-except包裹
    try:
        # 尝试查找一个可能不存在的对象
        user_menu = squish.waitForObject(":User_Menu")
        squish.click(user_menu)
    except squish.ObjectNotFoundError:
        # 捕获异常后做自定义处理,比如记录警告
        print("警告:用户菜单对象未找到,跳过该操作")
        squish.logWarning("用户菜单对象未找到,跳过点击操作")
    
    # 后续代码不受前面异常影响,会正常执行
    squish.clickButton(squish.waitForObject(":Logout_Button"))

额外提示

  • 优先捕获具体的ObjectNotFoundError,避免用Exception屏蔽其他未知异常,方便排查潜在问题。
  • 利用Squish自带的squish.logWarning()或squish.logError(),可以在测试报告中留下异常记录,便于后续分析。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 21:15:53