在自己的工作中经常碰到要做接口级别的功能和性能测试,soapUI是一款不错的工具,可以用来对soap接口和REST接口做测试。具体的操作步骤可以参考: http://www.ibm.com/developerworks/cn/opensource/os-cn-soapui/#listing2 当然,在soapUI的官网上也有说明。 对于REST接口,基本是按照project->service->resource->method来创建的,按照接口文档配置好各项参数以后,可以测试该接口的功能了。值的注意的是在project可以配置参数,一些全局的参数值可以放在这里,例如IP,端口,用户名等等,这样省去了有变化时每个接口都要修改。同样的,在配置接口参数时也可以在URL或者消息体中调用参数值,例如: { "user_id":"${#Project#UserName}", "value":"${#Project#Passwd}", "host_ip":"${#Project#LocalIp}" } 这代表消息体中的user_id取project参数中UserName的值,其他的value和host_ip类似。 在接口的URL中也可以定义本地化参数,例如{version}代表取接口中version参数的值。 对于接口的简单性能测试也可以用soapUI来做,相比于Loadrunner它更加轻量化,同时可以用自带的Groovy脚本做一些自动化的操作批量执行用例。例如: import groovy.util.XmlSlurper; import java.util.Date; //取得body中X-Auth-Token值 String response = testRunner.testCase.getTestStepByName("Login").testRequest.response.getContentAsXml(); log.info(response); body = new XmlSlurper().parseText(response) String Token = body.data log.info(Token) //将Token值赋给project变量,以便后面teststep获取使用 testRunner.testCase.testSuite.project.setPropertyValue("Token", Token); 接口的性能测试,主要依靠TestSuite中的LoadTest来做,在LoadTest中可以将多个接口或者脚本组装成一个完整的执行用例,配置线程并发数,执行次数,执行时间等,后的结果中可以看到每个step的执行状态。对于接口来说,主要的还是要看执行结果是否正确,以及每个接口的响应时间。