Gatling 2.0:将CSV文件解析为POST方法

时间:2014-10-15 13:16:02

标签: scala csv gatling

我已经阅读了有关csv解析的以下文档。 http://gatling.io/docs/2.0.1/session/feeder.html#feeder

我仍然无法捕获以下实现:

  • 如何在Scala中创建变量,代表csv文件中的每一列?
  • 如果我有2个用户按顺序运行,Gatling如何解析两个用户的CSV文件?在解析了第一个值后,它会自动查找下一个值吗?

我想要实现的目标:

  1. Gatling读取包含SIM序列号和原因详细信息的CSV文件,由变量“SimSerial”和“ReasonID”表示
  2. CSV文件的值将插入下面代码中显示的参数

    package sim_replacement
    import scala.concurrent.duration._
    import io.gatling.core.Predef._
    import io.gatling.http.Predef._
    import io.gatling.jdbc.Predef._
    import io.gatling.core.feeder._
    
    class shakeout3a extends Simulation {
    
    val serialNumReasonID= csv("search2.csv")
    
    val scn = scenario("shakeout3")
            .group("5. Check SIM model"){
             exec(http("request_24")
                .post("""/SimReplacement/CheckSimModel""")
                .headers(headers_24)
                .formParam("""sim""", """${SimSerial}""")
                .resources(http("request_25")
                .post(uri2 + """/SIMReplacement/GetReasonDetails""")
                .headers(headers_25)
                .formParam("""strReasonId""", """${ReasonID}""")
            }}
    

1 个答案:

答案 0 :(得分:1)

  

如何在Scala中创建变量,代表csv文件中的每一列?

使用Feed。属性名称取自CSV标题(第一行)。

  

如果我有2个用户按顺序运行,Gatling如何解析两个用户的CSV文件?在解析了第一个值后它会自动查找下一个值吗?

内置实现在启动时读取内存中的所有内容。 Feeder是一个Iterator,所以是的,它会根据所选策略将光标移动到下一条记录(默认为队列)。

您提到的文档链接中已正确解释了所有内容。