例外處理

概述

WebRunner 提供自訂例外階層結構。所有例外繼承自 WebRunnerException

例外階層

WebRunnerException(基底)
├── WebRunnerWebDriverNotFoundException
├── WebRunnerOptionsWrongTypeException
├── WebRunnerArgumentWrongTypeException
├── WebRunnerWebDriverIsNoneException
├── WebRunnerExecuteException
├── WebRunnerAssertException
├── WebRunnerHTMLException
├── WebRunnerAddCommandException
├── WebRunnerJsonException
│   └── WebRunnerGenerateJsonReportException
├── XMLException
│   └── XMLTypeException
└── CallbackExecutorException

例外參考

例外

說明

WebRunnerException

所有 WebRunner 錯誤的基底例外

WebRunnerWebDriverNotFoundException

找不到 WebDriver 或不支援的瀏覽器名稱

WebRunnerOptionsWrongTypeException

提供了無效的選項型別

WebRunnerArgumentWrongTypeException

提供了無效的參數型別

WebRunnerWebDriverIsNoneException

WebDriver 為 None(未初始化)

WebRunnerExecuteException

動作執行錯誤(未知指令、無效格式)

WebRunnerJsonException

JSON 處理錯誤

WebRunnerGenerateJsonReportException

JSON 報告產生錯誤

WebRunnerAssertException

斷言驗證失敗

WebRunnerHTMLException

HTML 報告產生錯誤

WebRunnerAddCommandException

註冊自訂指令錯誤(非函式/方法)

XMLException

XML 處理錯誤

XMLTypeException

無效的 XML 類型

CallbackExecutorException

回調執行錯誤

範例

from je_web_runner import get_webdriver_manager
from je_web_runner.utils.exception.exceptions import (
    WebRunnerException,
    WebRunnerWebDriverNotFoundException,
)

try:
    manager = get_webdriver_manager("unsupported_browser")
except WebRunnerWebDriverNotFoundException as e:
    print(f"不支援的瀏覽器: {e}")
except WebRunnerException as e:
    print(f"WebRunner 錯誤: {e}")