Нужно передать аргументы из командной строки при запуске gatling.sh в тестировании производительности Gatling

У меня есть сценарий, когда выполняется гатлинг. Ш, мне нужно передать авторизацию с терминала, а не идти и всегда менять файл situ.scala, потому что авторизация указана только для конкретного пользователя, и как только пользователь выходит из системы, нам нужно предоставить новый ключ авторизации для входа. По сути, мы можем передать аргументы из командной строки при запуске gatling.sh в тестировании производительности Gatling. Пожалуйста, проверьте файл simulation.scala для справки. ""authorization" -> " Необходимо передать значение из терминала во время работы gatling.sh","

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("baseURL")
        .inferHtmlResources()

    val headers_0 = Map(
        "accept" -> "*/*",
        "accept-encoding" -> "gzip, deflate, br",
        "accept-language" -> "en-US,en;q=0.9",
        "access-control-request-headers" -> "access-control-allow-origin,authorization,content-type",
        "access-control-request-method" -> "GET",
        "origin" -> "URL_LINK",
        "user-agent" -> "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36")

    val headers_1 = Map(
        "accept" -> "*/*",
        "accept-encoding" -> "gzip, deflate, br",
        "accept-language" -> "en-US,en;q=0.9",
        "access-control-allow-origin" -> "*",
        **"authorization" -> "Need to pass value from the terminal while running the gatling.sh",**
        "content-type" -> "application/json",
        "origin" -> "ORIGIN_URL",
        "referer" -> "REFERER_URL",
        "user-agent" -> "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36")

2 ответа

Согласно документам, вы можете сдать дополнительные JAVA_OPTS либо отредактировав скрипт запуска (gatling.sh), либо указав их в командной строке перед вызовом скрипта запуска.

Я бы посоветовал указать их через командную строку, так как это кажется более понятным и явно видимым.


Определение JAVA_OPTS через командную строку:

Предполагая, что вы работаете в системе на основе Unix (из вашего пользовательского агента вы работаете в OS X), вы можете определить дополнительные JAVA_OPTS перед вызовом gatling.sh, как описано здесь:

JAVA_OPTS="-Dauthorization=foobar" bin/gatling.sh

Предполагая, что значение, к которому вы хотите получить доступ, является строкой, вы должны иметь возможность использовать дополнительное значение следующим образом:

"authorization" -> System.getProperty("authorization")

Вы также можете редактировать сам скрипт запуска. Поэтому откройте gatling.sh в любом текстовом редакторе и добавьте выше JAVA_OPTS там.

Ваш файл scala

class abcdClass extends Simulation { val environment = System.getProperty("environment", "Performance Env.") // here "Performance Env." is default value .... .... }

Приставка:

Для Linux

export JAVA_OPTS = "- Denvironment = LoadTest Env"

./gatling.sh

Для Windows

set JAVA_OPTS = "- Denvironment = LoadTest Env"

gatling.bat

Другие вопросы по тегам