==关键字的分层==
上图是我实际使用中创建关键字的层次关系,baseLib提供与SUT交互的最基本的方法,projectLib可以通过调用或继承自baseLib类,提供一些通用的关键字。因为我用RF是做接口测试,举例来说我的baseLib提供了发送请求的send方法,和一些随机生成名字,计算md5的工具方法。然后projectLib,每个项目的base_url,签名算法,默认参数都不同,基于每个项目实现一个lib,进行一些与处理提供get,post,delete,put,upload等关键字。
然后resource文件中,引用我们的projectLib,写一些针对业务的关键字和通用的变量,假如现在有一个支持购买的项目,可以写login,order,cancel_order等这类的关键字。
测试套件中是最高级的关键字,组合一些复杂的义务逻辑,比如购买并检查购物车order_and_check_cart这样的关键字。
这么写的好处提高了代码的可读性和可维护性,我们的testcase只需关注数据层面。
本文介绍了一种基于Robot Framework (RF) 的自动化测试框架设计思路,通过关键字分层提高代码可读性和可维护性。从基础库到项目库,再到业务关键字及测试套件,详细阐述了各层级的作用及如何组织关键字。
2352

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



