对于web接口测试,做一下总结。
  接口测试总结
  1. 接口url格式:http://www.xxx.com/a/bbb.html
  2. 接口url后面接的参数格式:“?参数名=参数值&参数名=参数值”;
  3. 要清楚不同的参数名分别对应有多少种参数值;
  4. 要清楚不同的参数值组合分别对应有多少种接口返回结果(即访问url后返回的json对象)。
  比如:有一个参数名为userName,一个userName的参数值对应的是数据库表中一条用户记录的userName字段值,所以为了能够有足够的参数值作为测试数据,我们需要在数据库表中添加足够条数的用户记录。对于有多少种参数值,要在数据库表中做多少条记录。这一部分,是接口测试的数据准备部分。
  在准备好接口测试的测试数据后,我们可以用PowerShell写一个脚本用来测试我们的接口,PowerShell 3.0提供了Invoke-WebRequest命令,可以很好的实现对于web的访问。但是Win7下默认的PowerShell是2.0.我们可以在PowerShell中输入$psversiontable查看当前PowerShell的版本。将PowerShell升级到3.0的过程可以在网上查到,只需按教程上的顺序进行下载安装即可(若遇到无法安装的错误信息,可能是因为Services中Windows Update服务被禁用了,需要手动开启)。重启电脑后,PowerShell完成了到3.0的升级。之后我们可以用Invoke-WebRequest命令来编写web接口测试的脚本了。
  接口测试脚本
  代码如下(本地文件名为iUriTest.ps1):
chcp 936
Write-Host "请输入以下接口信息" -ForegroundColor Yellow
$iUri = Read-Host "接口uri"
$i1Name = Read-Host "接口参数名1"
$i2Name = Read-Host "接口参数名2"
while($true){
$tip1 = "输入接口参数"+$i1Name+"的值:"
Write-Host $tip1 -ForegroundColor Cyan
$i1Value = Read-Host
$tip2 = "输入接口参数 "+$i2Name+"的值:"
Write-Host $tip2 -ForegroundColor Cyan
$i2Value = Read-Host
$uri = $iUri+"?"+$i1Name+"="+$i1Value+"&"+$i2Name+"="+$i2Value
$back = Invoke-WebRequest -Uri $uri
$back.Content
}
  在iUriTest.ps1文件上右键用PowerShell运行,如下: