передача нескольких проверок в качестве переменных аргументов в Gatling - PullRequest
1 голос
/ 15 мая 2019

Я хотел бы иметь возможность передавать чеки методу, который делает пост гатлинга. У меня возникли проблемы с этим. Я попытался использовать несколько различных типов на чеках, но безуспешно. Я хотел бы иметь что-то вроде ниже на «странице» объекта, который будет использоваться в другом месте в приложении. Я думаю, что я кратко видел, что есть другие типы проверок помимо проверок на основе статуса. Я хотел бы, чтобы метод был достаточно гибким, чтобы справиться с такими вещами, если это возможно.

protected val commonChecks = Seq(status.not(404),status.not(503))
def login(checks:HttpCheck = commonChecks) = {
  exec(http("post login")
    .post("/login")
    .headers(someheader)
    .formParam("login", "${userName}")
    .formParam("password", "${password}")
    .check(commonChecks) //.check(commonChecks: _*) don't work
  )

}

1 Ответ

2 голосов
/ 15 мая 2019

Что если вы явно укажете тип commonChecks:

protected val commonChecks: Seq[HttpCheck] = Seq(status.not(404),status.not(503))
def login(checks:HttpCheck = commonChecks) = {
  exec(http("post login")
    .post("/login")
    .headers(someheader)
    .formParam("login", "${userName}")
    .formParam("password", "${password}")
    .check(commonChecks: _*)

  )

IntelliJ, по-видимому, выведет следующий тип: Seq[CheckBuilder[HttpCheck, Response, Response, Int] with SaveAs[HttpCheck, Response, Response, Int]], что приведет к ошибке компиляции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...