在深入了解fixture之前,让我们先看看什么是测试
。
一、测试的构成
其实说白了,测试就是在特定的环境、特定的场景下、执行特定的行为,然后确认结果与期望的是否一致。
就拿最常见的登录来说,完成一次正常的登录场景,需要可用的测试环境,可以正常登录的账号和密码。
然后,用这个账号密码进行登录操作,结果登录成功,符合这次正常登录场景的预期结果,测试完成。
这样看来,通常就可以把测试分为4个步骤:
- Arrange
- Act
- Assert
- Cleanup
Arrange,可以理解为 除了执行测试之外的任何事情。比如上面例子中,我得有个可用的测试环境跟可用的账号密码,这些都要事先准备好。
此外,还有可能是:启动/终止服务、将记录输入数据库、定义要查询的URL、为还不存在的用户生成一些凭据等等。
总之,就是为了能够进行测试要准备好的事情。
Act,相比准备前置环境,Act
做的事情就相对单一些,其实就是开始测试动作。比如,接口测试里,调用被测试的api接口。
Assert,Assert
是我们查看结果的地方,看看是否像我们预期的那样。比如接口请求成功后,数据的接口会返回“success”
,assert status == "success"
。
Cleanup,在测试结束后,做清理工作,为了其他的测试不会意外的受到本次测试的影响。比如,测试之前我插入了一条测试数据,测试完后,我把它删掉。
总得来说,测试就是Act+Assert
,而其他要安排的事情,放在Arrange
里。