testbase.testresult Package¶
测试结果模块
参考logging模块的设计,使用示例如下:
result = TestResult()
result.add_handler(StreamResultHandler())
result.begin_test()
result.start_step('a step')
result.info('test')
result.end_test()
其中result.info接口可以传record扩展信息,比如:
result.error('', '异常发生', traceback=traceback.format_exc())
同logger一样,TestResult对象保证对所有的ITestResultHandler的调用都是线程安全的,可以通过实现 ITestResultHandler来实现一个新的Handler,详细请参考ITestResultHandler接口
-
class
testbase.testresult.EmptyResult¶ 基类:
testbase.testresult.TestResultBase不输出
-
class
testbase.testresult.EnumLogLevel¶ 基类:
object日志级别
-
class
testbase.testresult.HtmlResult(testcase)¶ 基类:
testbase.testresult.JSONResulthtml test result
-
class
testbase.testresult.JSONResult(testcase)¶ 基类:
testbase.testresult.TestResultBaseJSON格式的结果
-
handle_log_record(level, msg, record, attachments)¶ 处理一个日志记录
参数: - level (string) -- 日志级别,参考EnumLogLevel
- msg (string) -- 日志消息
- record (dict) -- 日志记录
- attachments (dict) -- 附件
-
handle_step_begin(msg)¶ 处理一个测试步骤的开始
参数: msg (string) -- 测试步骤名称
-
handle_step_end(passed)¶ 处理一个测试步骤的结束
参数: passed (boolean) -- 测试步骤是否通过
-
handle_test_end(passed)¶ 处理一个测试用例执行的结束
参数: passed (boolean) -- 测试用例是否通过
-
-
class
testbase.testresult.StreamResult(stream=<open file '<stdout>', mode 'w'>)¶ 基类:
testbase.testresult.TestResultBase测试用例stream输出
-
handle_log_record(level, msg, record, attachments)¶ 处理一个日志记录
参数: - level (string) -- 日志级别,参考EnumLogLevel
- msg (string) -- 日志消息
- record (dict) -- 日志记录
- attachments (dict) -- 附件
-
handle_step_begin(msg)¶ 处理一个测试步骤的开始
参数: msg (string) -- 测试步骤名称
-
handle_step_end(passed)¶ 处理一个测试步骤的结束
参数: passed (boolean) -- 测试步骤是否通过
-
handle_test_end(passed)¶ 处理一个测试用例执行的结束
参数: passed (boolean) -- 测试用例是否通过
-
-
class
testbase.testresult.TestResultBase¶ 基类:
object测试结果基类
此类的职责如下: 1、提供测试结果基本接口 2、保证线程安全 2、测试是否通过之逻辑判断
-
begin_step(msg)¶ 开始一个测试步骤
参数: msg (string) -- 测试步骤名称
-
begin_time¶ 测试用例开始时间
返回: float
-
debug(msg, record=None, attachments=None)¶ 处理一个DEBUG日志
-
end_test()¶ 结束执行测试用例
-
end_time¶ 测试用例结束时间
返回: float
-
error(msg, record=None, attachments=None)¶ 处理一个ERROR日志
-
exception(msg, record=None, attachments=None)¶ 处理一个DEBUG日志
-
failed_info¶ 测试用例失败时的执行状况
返回: str
-
failed_reason¶ 用例测试不通过的错误原因
返回: str
-
handle_log_record(level, msg, record, attachments)¶ 处理一个日志记录
参数: - level (string) -- 日志级别,参考EnumLogLevel
- msg (string) -- 日志消息
- record (dict) -- 日志记录
- attachments (dict) -- 附件
-
handle_step_begin(msg)¶ 处理一个测试步骤的开始
参数: msg (string) -- 测试步骤名称
-
handle_step_end(passed)¶ 处理一个测试步骤的结束
参数: passed (boolean) -- 测试步骤是否通过
-
handle_test_end(passed)¶ 处理一个测试用例执行的结束
参数: passed (boolean) -- 测试用例是否通过
-
info(msg, record=None, attachments=None)¶ 处理一个INFO日志
-
log_record(level, msg, record=None, attachments=None)¶ 处理一个日志记录
参数: - level (string) -- 日志级别,参考EnumLogLevel
- msg (string) -- 日志消息
- record (dict) -- 日志记录
- attachments (dict) -- 附件
-
passed¶ 测试是否通过
返回: True or False
-
testcase¶ 对应的测试用例 :returns: TestCase
-
warning(msg, record=None, attachments=None)¶ 处理一个WARNING日志
-
-
class
testbase.testresult.TestResultCollection(results, passed)¶ 基类:
list测试结果集合
-
passed¶ 测试是否通过
返回: boolean
-
-
class
testbase.testresult.TestResultType¶ 基类:
object扩展用例状态
-
class
testbase.testresult.XmlResult(testcase)¶ 基类:
testbase.testresult.TestResultBasexml格式的测试用例结果
-
file_path¶ xml文件路径
返回: str
-
handle_log_record(level, msg, record, attachments)¶ 处理一个日志记录
参数: - level (string) -- 日志级别,参考EnumLogLevel
- msg (string) -- 日志消息
- record (dict) -- 日志记录
- attachments (dict) -- 附件
-
handle_step_begin(msg)¶ 处理一个测试步骤的开始
参数: msg (string) -- 测试步骤名称
-
handle_step_end(passed)¶ 处理一个测试步骤的结束
参数: passed (boolean) -- 测试步骤是否通过
-
handle_test_end(passed)¶ 处理一个测试用例执行的结束
参数: passed (boolean) -- 测试用例是否通过
-
toxml()¶ 返回xml文本
:returns string - xml文本
-
-
testbase.testresult.smart_text_by_lines(s)¶ 将任意字符串转换为UTF-8编码