Ultron使用手册

1. 开发背景

在一次与其他压测工具比较的过程中,我无意发现之前使用的Locust有致命的性能问题:对于极快的GET接口,其产生的压力比AB、JMeter等少了几个量级,再加上我本身不满因Locust使用Python开发只能利用单核而导致经常需要多实例部署的情况,我决定利用Golang原生的高并发能力来重写一个压测工具。

我希望它满足以下特性:

  1. 单实力高并发能力
  2. 支持分布式部署
  3. 支持接入多种协议
  4. 脚本层面借鉴Locust的方式,高度的定制化能力

Read More

Python接口测试实战02 - 接口测试的本质

在上一篇简单的介绍了接口测试里用到的工具、类库后,本篇正式开始讲用Python进行接口测试实战。

1. 从一个登录接口了解接口调用的方法

现在假设有一个登录接口POST /api/login,该接口有两个入参usernamepassword,分别表示帐号的用户名以及密码,那该如何调用该接口呢?

以下该登录接口都以一个临时的url:http://requestbin.qahub.net/z3m6v8z3来替代

1.1 curl做接口调用:

先用curl来做一个简单的例子:

Read More

Python接口测试实战01:七种武器

工欲善其事必先利其器,在正式开始介绍使用Python做接口测试前,我们先准备好相应的工具,这样就能快速上手接口测试了。

0. Python

在测试领域Python其实大有可为,不管是Web、移动端、接口、嵌入式测试都能看到Python的身影。而且因为Python语法的简单性,用Python做自动化测试的效率极高。

有人可能会说:Python运行效率低啊。可是你想想,在自动化测试应用时,我们需要在乎底层脚本语言的运行效率吗?与其在乎运行效率,还不如思考下如何快速提高自动化测试的覆盖率,也就是自动化case的开发效率。

Python有Python2以及Python3两个大版本,Python2行将就木,本系列文章都以Python3为基础,而且有可能会使用到Python3.5以上版本的特性。

Read More