分享自动化测试系统3:基于模型的测试
zstack吧
全部回复
仅看楼主
level 1
1.模型测试系统是zstack-woodpecker中的一个子项目。通过有限状态机和行为选择策略,它可以产生随机的API操作,一直运行下去,直到遇到一个缺陷或者预定义的退出条件。ZStack依赖模型测试去测试真实世界中难以遇到的边界用例,在测试覆盖方面补充集成测试和系统测试。
2.测试覆盖率是一个判断一个测试系统品质的重要指示器。常规测试方法论,例如单元测试,集成测试,系统测试,都是由人类逻辑思考构建的,难以覆盖软件中的边界场景。这个问题在IaaS软件中变得更加明显,因为管理不同的子系统会导致极为复杂的场景。
3.ZStack通过引入基于模型的测试来解决这个问题。它可以产生由随机API组合构成的场景,会持续运行知道遇到预定义的退出条件或者找到一个缺陷。作为机器驱动的测试,基于模型的测试可以克服人类逻辑思考的缺陷来执行一些,看起来反人类逻辑,但是API完全
正确的
测试,帮助发现难以被人类主导的测试发现的边界问题。
4. 基于模型的测试系统,因为由机器驱动,也被称为机器人测试。当这个系统运行时,它从一个模型(在下面几节中也被称为阶段)移动到另一个模型,通过执行被动作选择策略选出的动作(也被称为操作)。在每一个模型完成之后,检查器将会验证测试结果,测试退出条件。如果任何失败被发现,或者退出条件被满足,系统将会退出。否则,它将会移动到下一个模型,然后重复。"
2017年12月22日 03点12分 1
1