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.JSONResult
html test result
-
class
testbase.testresult.
JSONResult
(testcase)¶ 基类:
testbase.testresult.TestResultBase
JSON格式的结果
-
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_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.
XmlResult
(testcase)¶ 基类:
testbase.testresult.TestResultBase
xml格式的测试用例结果
-
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编码