Создание питателя gatling из списка - PullRequest
0 голосов
/ 14 апреля 2020

Я новичок ie для Гатлинга и scala. У меня есть список, где я отслеживаю setupValues. Я хочу повторить этот список позже, чтобы проверить операции get. Как мне это сделать.

Я хочу, чтобы фидер непрерывно повторялся для данных в списке.

Я попытался создать фидер ниже, ниже. но его исключение

      val setupDeleteExtensions = List.empty[String]

     // I populated some values to setupDeleteExtensions List 



      val extensionIds = Iterator.continually(for (extensionId<-extmgrChain.setupInstallExtensions) yield {
        Map("extensionId" -> extensionId)
      })

    val extMgrScenerio = scenario("extensionMgr - Scenario")
        .during(Configuration.duration) {
          exitBlockOnFail(
            group("load-test") {
              exec(
                pace(Configuration.paceFrom, Configuration.paceTo),
                feed(extensionIds)
                  randomSwitch(                
                  50.00 -> group("get and Acknowledge") {
                    exec(
                      extmgrChain.getExtension(),
                      extmgrChain.getAcknowledgement()
                    )
                  },
                  50.00 -> extmgrChain.getResource(),                  
                )
              )
            }
          )
        }

exception : 
 found   : Iterator[List[scala.collection.immutable.Map[String,String]]]
 required: io.gatling.core.feeder.FeederBuilder
    (which expands to)  () => Iterator[scala.collection.immutable.Map[String,Any]]

Может кто-нибудь помочь, как создать фидер из списка

1 Ответ

1 голос
/ 15 апреля 2020

Когда у вас есть

val extensionIds = Iterator.continually(for (extensionId<-extmgrChain.setupInstallExtensions) yield {
    Map("extensionId" -> extensionId)
})

каждый раз, когда вы .feed и получаете следующее значение от итератора, он будет запускать для l oop через ваши setupInstallExtensions - это будет возвращать список карт, тогда как gatling требуется только карта, как

val extensionIds = extmgrChain.setupInstallExtensions.map(id => Map("extensionId" -> id)).iterator
...