首页 > 代码库 > Gatling:开源压力测试框架之入门
Gatling:开源压力测试框架之入门
Gatling是一款开源的压力测试工具,基于Scala, Akka and Netty。
- 可录制测试脚本,也可以手动编写脚本,适合有编程经验的测试人员使用;
- 支持测试用例的参数化,可以使用csv、json、jdbc、redis等多样的数据源;
- 能够模拟各种并发场景;
- 能够生成比较详细的测试报表。
示例脚本:
import scala.concurrent.duration._import io.gatling.core.Predef._import io.gatling.http.Predef._import io.gatling.jdbc.Predef._class RecordedSimulation extends Simulation { val httpProtocol = http .baseURL("http://192.168.1.117/") .acceptHeader("""*/*""") .acceptEncodingHeader("""gzip, deflate""") .acceptLanguageHeader("""zh-CN""") .userAgentHeader("""Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)""") val headers_2 = Map("""Accept""" -> """text/html, application/xhtml+xml, */*""") val scn = scenario("RecordedSimulation") .repeat(1){ //.forever{ feed(csv("large_files.csv").circular) .exec(http("request_"+"${id}") .get("${uri}") .headers(headers_2) //.check(status.is(200))) .check(status.in(200 to 399))) .pause(1) } setUp( scn.inject(atOnceUsers(1000)) ) .protocols(httpProtocol)}
large_files.csv默认放在user-files/data/下面
文件内容:
id,uri
1,index.html
2,download/file.zip
Gatling:开源压力测试框架之入门
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。