自动化测试框架理论

自动化测试框架理论

​ 1.什么是框架

​ 框架是介于编程语言原生代码和最终产品的一个半成品。作用是提高开发效率,提升产品质量。如,unittest单元测试框架、selenium网页操作框架、自研框架…

​ 2.框架评判标准

​ *独立性:可以直接拿来用,不需要再去依赖其他的第三方库(不用导其他第三方库)

​ *重用性:测试步骤;测试脚本、测试数据、测试环境

​ *可用性:测试数据易于定制;测试脚本易于定制;测试脚本易于维护(POM思想);良好的异常处理机制和操作日志(日志loging);

​ *可移植性:测试脚本以及框架本身在不同系统下的移植性

​ *无人值守:设置代码运行时间。在特定时间代码自然运行,并记录错误信息,将测试报告发给相应人员

​ *是否适于团队开发

​ 3.当前流行的测试框架设计思路

​ *数据驱动(Data Driver Testing)DDT

​ *关键字驱动(Keyword Driven Testing)KDT

​ *行为驱动(Behavior Driven Development)BDD

​ *业务驱动(Business Process Testing)BPT

​ *页面对象模式(Page Object Model)POM

​ *基于组件驱动(Component Based Testing)CBT

​ 4.分层思想

​ 核心思想是相同的业务尽可能的划分在一起,不同的业务分层处理。层与层之间通过接口来发生关系,同一层只专注一件事情,相邻层中间有数据的交换,非相邻层之间没有关系。

​ 在测试领域分层思想存在广义的分层和狭义的分层两种,广义的分层其实就是测试阶段的划分(单元测试、集成测试、系统测试、验收测试、回归测试),狭义的分层就是测试代码的分层设计(如没有特殊说明,就指的是狭义的分层)。

​ 分层的指导原则:

​ *层与层之间只有相邻层发生关系,非相邻层没有任何交集。

​ *一切从系统的业务需求来分析

​ *每一层定义明确的功能,制定接口规范

​ *只要层与层之间的接口规范没有变化,那么具体层的具体实现不受限制

​ 5.现有框架存在的问题

​ *框架只针对特定的领域。如,selenium只对Web的UI界面操作

​ *某些框架一味追求使用简单,为了降低学习成本,减少脚本编写难度,基于测试脚本稳定性和健壮性考虑,就难免需要做一些限制,而这些限制往往会制约框架的扩展性和灵活性,反倒对于一些“高端”用户就显得不够“友好”

​ *某些框架为了获取更多的用户,就会不断的向“通用化”方向发展,随着通用化变强,那么其专业性就相对弱化了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值