世界的瞭望哨

“认识自己 认识世界”

Http接口测试框架架构设想

序言

按照惯例,谷歌了几个来回,没找到合适的开源框架

于是乎,自己折腾一个!?

框架要点

  1. 是否易于上手,学习和迁移成本要低,要不然潜在用户手头上一堆旧用例怎么愿意换框架呢
  2. 可以以尽量少的代码写出丰富用例来,这一点我现在认为是非常重要的;代码越少,用例本身越清晰明了,写得时候轻松自如,code review及以后维护起来也是大大的方便;这种精简,可以通过框架提供简单优雅的API实现,也可以通过设计一个灵活而不失强大的数据驱动模型实现,也可以通过合理封装被测试产品的业务逻辑实现;实践表明,写测试用例的时候,是非常容易出现冗余代码的,如何消除这种冗余,是个关键问题
  3. 框架本身的代码也要精简,原理基本同上
  4. 框架要灵活,不能因为框架而把大家写用例的思路限制住;产品各不相同,业务千差万别,测试人员也各具特长,写出来的用例大一统,不现实,也不该
  5. 一个比较激进的设想,使用Ruby来架构及写用例;与Java相较,Ruby天然具有灵活性和精简性;但是要迁移语言体系,风险与收益共存

框架模块

  1. HttpClient封装,可自己封装,也可采用优秀库
  2. 断言封装,可自己封装,也可采用优秀库,例如:直接使用TestNg
  3. 测试数据组织形式,xml?excel?写在代码里?
  4. 业务逻辑相关封装
  5. 用例组织与执行,不出意外,采用现成框架即可,例如:TestNg

其中第三第四点很难把握,直接关系到大家如何设计和架构测试用例,以及是否方便使用这个框架写用例和维护用例

尤其是第四点,倾向于由实际用例编写人自主设计

小调查

在周边人群中进行了一次小调查,如图所示

小调查

尝试

利用业余时间在使用Ruby进行折腾,请看这里

Comments