gatling和csv(从csv获取数据)

时间:2014-10-30 21:16:57

标签: csv gatling

我正在努力创建一个从csv获取数据的加特林测试。我的测试是一个带有一个问题的调查,用户选择一个选项作为答案。它说测试通过但是我没有看到在调查中选择的选项(没有csv它可以正常工作)。这是我的示例代码:

 val uri = """http://localhost:8090/test"""    
val onlyone = csv("onlyone.csv").queue    
    val scn = scenario("onlyone")    
        .exec(http("request_0")
            .get("""/test/login""")
            .headers(headers_0))
        .pause(13)
        .feed(onlyone)
        .exec(http("request_1")
            .post("""/test/login-check""")
            .headers(headers_0)
            .formParam("""j_username""", """${username}""")
            .formParam("""j_password""", """${password}"""))
        .pause(4)
        .exec(http("request_36")
            .get("""/test/land/survey/view/${sid}""")
            .headers(headers_0))
        .pause(3)
        .exec(
            http("request_101")
            .post(uri + """/land/survey/showQuestion?mapping=app""")
            .headers(headers_2)
            .body(RawFileBody("onlyone_request_0101.txt"))) 
        .pause(3)
            .exec(http("request_133")
            .post(uri + """/land/survey/saveQuestion?mapping=app""")
            .headers(headers_2)
            .body(RawFileBody("onlyone_request_0133.txt")))
        .pause(4)

    setUp(scn.inject(atOnceUsers(1))).protocols(httpProtocol)
}

我的csv文件有

username,password,sid,qid,q1,a1
user1,testpwd1,1234567,2345678,3456789,4567890

这些是请求正文的内容

request_101: {"questionText":"only one","id":"${q1}"}
request_133: {"questionText":"only one","id":"${q1}","selectedOption":"${a1}"}

请帮助我找出我错过的地方和地点。谢谢!

1 个答案:

答案 0 :(得分:1)

您使用RawFileBody,其名称为states,将文件视为原始内容,而不是模板。 请阅读documentation并使用适合的Body类型,即ELFileBody。