| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- from core.exceptions.element_exceptions import AutomationFrameworkException
- class SecurityTestException(AutomationFrameworkException):
- """安全测试基础异常类"""
- def __init__(self, message="安全测试发生错误", details=None):
- super().__init__(message)
- self.details = details or {}
- def __str__(self):
- if self.details:
- return f"{self.message} | 详情: {self.details}"
- return self.message
- class VulnerabilityFoundException(SecurityTestException):
- """发现安全漏洞异常"""
- def __init__(self, vulnerability_type, url, details=None):
- message = f"发现安全漏洞: {vulnerability_type} 于 {url}"
- super().__init__(message, details)
- self.vulnerability_type = vulnerability_type
- self.url = url
- class SecurityScanTimeoutException(SecurityTestException):
- """安全扫描超时异常"""
- def __init__(self, scan_type, timeout_duration, details=None):
- message = f"{scan_type} 扫描超时,已超过 {timeout_duration} 秒"
- super().__init__(message, details)
- self.scan_type = scan_type
- self.timeout_duration = timeout_duration
- class SecurityConfigException(SecurityTestException):
- """安全配置异常"""
- def __init__(self, config_key, expected_value=None, actual_value=None, details=None):
- if expected_value and actual_value:
- message = f"安全配置错误: {config_key} 应为 {expected_value},但为 {actual_value}"
- else:
- message = f"安全配置错误: {config_key}"
- super().__init__(message, details)
- self.config_key = config_key
- self.expected_value = expected_value
- self.actual_value = actual_value
- class SecurityToolNotFoundException(SecurityTestException):
- """安全工具未找到异常"""
- def __init__(self, tool_name, installation_guide=None, details=None):
- message = f"安全测试工具未找到: {tool_name}"
- super().__init__(message, details)
- self.tool_name = tool_name
- self.installation_guide = installation_guide or f"请安装 {tool_name} 工具"
- class AuthenticationException(SecurityTestException):
- """认证失败异常"""
- def __init__(self, auth_type, endpoint, details=None):
- message = f"{auth_type} 认证失败于 {endpoint}"
- super().__init__(message, details)
- self.auth_type = auth_type
- self.endpoint = endpoint
|