对于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运行,如下: