1. temepst简介
Tempest主要用于OpenStack的API功能测试。从代码的可见性角度来看,Tempest是针对OpenStack的黑盒测试,只能检测API返回结果是否合乎预期,而不能对OpenStack内部代码进行检查。
测试用例脚本包括装饰器、客户端调用、断言语句等组成部分。测试脚本中调用客户端向OpenStack平台发送HTTP报文,来完成资源的增、删、改、查。通过断言语句判断是否符合预期结果,决定测试用例是否通过。
1.1 tempest中的常用装饰器
@decorators.idempotent_id()
为测试用例标记UUID,每个tempest测试用例都有一个唯一的UUID。@decorators.attr()
标注测试用例类型,如“slow”、“smoke”、“negative”。@utils.services()
标记测试用例所需的服务。@testtools.skipIf()
符合条件时跳过用例。@testtools.skipUnless()
不符合条件时跳过用例
1.2 tempest中的断言
断言是指有条件地在程序代码中触发异常,用于检查测试时是否符合预期结果。在tempest脚本编写过程中,常用的断言有如下几种:
语句含义assertEqual(expected, expr)判断是否等于预期值assertNotEqual(expected, expr)判断是否不等于预期值assertGreater(a, b)判断a是否比b大assertLess(a, b)判断a是否比b小assertIn(a, b)判断a是否在b中assertNotIn(a, b)判断a是否不在b中assertRaise()判断是否抛出了异常
1.3 tempest自动化用例的执行过程
如下图完整的展示了tempest中每个自动化用例实际执行的过程
版权归原作者 98岁带病上岗 所有, 如有侵权,请联系我们删除。