初始化和清除:
setup 是测试一个用例(或者套件)前要做的事情,提供用例所需的数据环境
teardown 是测试后要做的事情,还原测试环境
一个例子:
- 要测试登录功能,需要先注册一个用户,用这个用户验证登录功能
- 那么对于测试登录功能的套件(或者用例)来说,前面先注册好一个用户的操作,就是setup
- 是否需要teardown,主要看这个用例执行后的结果是否会影响下面要执行的用例
初始化动作---注册用户
用例1---登录步骤执行完毕
清除---登出用户
清除的目的是为了避免用例/套件生成的数据对其他用例/套件造成影响
在RF中,每个测试套件目录,测试套件文件,测试用例,都可以有自己的setup和teardown
所有的setup和teardown操作都只能由一个关键字语句构成
测试用例的setup,teardown
写在测试用例表的配置项中
*** Test Cases ***
setupAndteardown
#如果setup失败,用例主体不会执行
[Setup] log to console 执行用例初始化动作###
log to console 执行用例主体
#任何情况下setup和teardown都会执行,即使用例主题出错
[Teardown] log to console 执行用例清除动作###
setupAndteardown1
[Setup] log to console 执行用例初始化动作###
log to console 执行用例主体
测试套件的setup和teardown
写在测试套件文件的settings表中
两种类型:
Suite setup/teardown
进入和退出这个suite执行用例前后必须执行且只分别执行一次
Test setup/teardown
如果suite内的用例本身没有setup/teardown,才执行
*** Settings ***
Suite Setup log to console 执行套件初始化~~~~~
Suite Teardown log to console 执行套件清除动作~~~~~
Test Setup log to console 执行默认初始化~~~~~
Test Teardown log to console 执行默认清除动作~~~~~
*** Test Cases ***
setupAndteardown
#如果setup失败,用例主体不会执行
[Setup] log to console 执行用例初始化动作###
log to console 执行用例主体
#任何情况下setup和teardown都会执行,即使用例主题出错
[Teardown] log to console 执行用例清除动作###
setupAndteardown1
[Setup] log to console 执行用例初始化动作###
log to console 执行用例主体
setupAndteardown2
[Teardown] log to console 执行用例清除动作¥¥¥
log to console 执行用例主体
测试套件目录的setup和teardown
在其目录下的初始化文件__init__.txt或者__init__.robot里的settings表中
两种类型:
Suite setup/teardown
进入和退出这个suite执行用例前后必须执行且只分别执行一次
Test setup/teardown
如果suite内的用例或者子套件本身没有setup/teardown,才执行
__init__.robot文件:
*** Settings ***
Suite Setup log to console 执行套件目录初始化~~~~~
Suite Teardown log to console 执行套件目录清除动作~~~~~
Test Setup log to console 执行默认初始化~~~~~
Test Teardown log to console 执行默认清除动作~~~~~