1、初始化和清除
Steup是测试一个用例或者是测试套件之前要做的事情
Teardown是测试后要做的事情
比如要添加一个用户,是否先要登陆系统才可以添加,那么对于测试添加用户来说,是否就要先登陆系统,就是steup
是否需要teardown 只要看这个用例执行之后是否会影响接下来要执行的用例
在RF中,每个测试套间目录、测试套件文件、测试用例都可以有自己的steup teardown
所有的steup 和 teardown操作只能由一个关键字语句构成
2、测试用例的steup跟teardown写在测试用例表的配置项中
简单地例子
*** Test Cases ***
测试1
[Setup] log to console \n***测试用例1 setup***
log to console 测试用例1的主体部分
[Teardown] log to console \n *** 测试用例1 teardown***
*** Test Cases ***
测试1
[Setup] log to console \n***测试用例1 setup***
log to console 测试用例1的主体部分
[Teardown] log to console \n *** 测试用例1 teardown***
测试2
#测试2 跟测试3 里面没有 steup 跟 teardown
log to console 测试用例的主题2部分
测试3
log to console 测试用例的主题3部分
3、测试套件文件的setup teardown
写在测试套件文件的setting表中
两种类型:
第一种:Suite Setup Suite Teardown
进入和退出这个suite执行用例前后必须执行且分别执行一次
*** Settings ***
Suite Setup log to console ---- Suite st2 Setup----
Suite Teardown log to console ---- Suite st2 Teardown----
*** Test Cases ***
测试1
[Setup] log to console \n***测试用例1setup***
log to console 测试用例1的主体部分
[Teardown] log to console \n *** 测试用例teardown***
测试2
log to console 测试用例的主题2部分
测试3
log to console 测试用例的主题3部分

第二种:Test Setup Test Teardown
如果suite内的用例本身没有setup 和 teardown 才执行
*** Settings ***
Suite Setup log to console ---- Suite st2 Setup----
Suite Teardown log to console ---- Suite st2 Teardown----
Test Setup log to console \n---Test st Default Steup---
Test Teardown log to console \n---Test st Default Teardown---
*** Test Cases ***
测试1
#测试1里面有 steup 跟 teardown 所以就不会用到Test 里面的 [Setup] 跟 [Teardown]
[Setup] log to console \n***测试用例1 setup***
log to console 测试用例1的主体部分
[Teardown] log to console \n *** 测试用例1 teardown***
测试2
#测试2 跟测试3 里面没有 steup 跟 teardown 所以就会用到Test 里面的 [Setup] 跟 [Teardown]
log to console 测试用例的主题2部分
测试3
log to console 测试用例的主题3部分

4、测试套件目录的Steup + Teardown
在其目录下的初始化文件__init__.txt 或者是__init__.robot里面的settings表中

比如:创建一个包suite , suite下面创建一个__init__.robot文件
*** Settings ***
Suite Setup log to console \n---- Suite big Setup----
Suite Teardown log to console \n---- Suite big Teardown----
Test Setup log to console \n---Test big Default Steup---
Test Teardown log to console \n---Test big Default Teardown---

再创建一个文件st1.robot
*** Settings ***
Suite Setup log to console \n---- Suite little Setup----
Suite Teardown log to console \n---- Suite little Teardown----
Test Setup log to console \n---Test little Default Steup---
Test Teardown log to console \n---Test little Default Teardown---
*** Test Cases ***
测试1
#测试1里面有 steup 跟 teardown 所以就不会用到Test 里面的 [Setup] 跟 [Teardown]
[Setup] log to console \n***测试用例1 setup***
log to console 测试用例1的主体部分
[Teardown] log to console \n *** 测试用例1 teardown***
测试2
#测试2 里面没有 steup 跟 teardown 所以就会用到Test 里面的 [Setup] 跟 [Teardown]
log to console 测试用例的主题2部分

再创建一个st2.robot文件
*** Test Cases ***
测试3
#测试3里面有 steup 跟 teardown 所以就不会用到Test 里面的 [Setup] 跟 [Teardown]
[Setup] log to console \n***测试用例3 setup***
log to console 测试用例1的主体部分
[Teardown] log to console \n *** 测试用例3 teardown***
测试4
#测试4 里面没有 steup 跟 teardown 所以就会用到__init.robot__ Test 里面的 [Setup] 跟 [Teardown]
log to console 测试用例的主题4部分

执行的时候,直接输命令 robot suite
如果只想执行st1.robot 但是又要用到 init.robot,可以用命令:
robot --suite 文件名 包名
robot --suite st1 suite
如果是多个就用
robot --suite 文件名 --suite 文件名 包名
本文详细介绍了Robot Framework中的初始化(Setup)和清除(Teardown)概念,包括它们在测试用例、测试套件文件及测试套件目录中的应用。强调了Setup是测试前的准备,Teardown是测试后的清理工作,且每个层级的Setup和Teardown都只允许一个关键字。还讲解了如何在不同层级设置这些操作,并提供了执行示例。

5925

被折叠的 条评论
为什么被折叠?



