【问题标题】:How can I import a scala class into another using gatling?如何使用 gatling 将 scala 类导入另一个?
【发布时间】:2016-04-05 02:16:20
【问题描述】:

注意:我是 gatling 新手,对 Scala 几乎一无所知。

我正在开始将负载测试从 Jmeter 转换为 gatling。我被困在如何组织代码库上。我能找到的所有示例都是单文件示例。

如何将代码从一个模拟类导入另一个?

我现在有这个类和测试场景:

    package default

import scala.concurrent.duration._

import io.gatling.core.Predef._
import io.gatling.http.Predef._
import io.gatling.jdbc.Predef._

class createGuestUser extends Simulation {


    val userPrefix = System.getProperty("userPrefix", "gatling_load_test") + "_" + scala.util.Random.nextInt + "_"
    val password = System.getProperty("password", "1234567")
    val hostname = System.getProperty("hostname", "http://0.0.0.0")
    val blank_headers = Map("Accept" -> "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")


    val httpConf = http
        .baseURL("http://0.0.0.0")

    object GetClientToken {     
        val slash = exec(http("Slash")
        .get("/")
        .headers(blank_headers)
        .check(regex("""var appToken = '(.*)';""").find.saveAs("xGlooApplication")) // var appToken = '60e5814d-9271-43b4-8540-157d1c743651';       
        )
    }
.....

当我尝试将类导入到另一个模拟中时:

    package default

import scala.concurrent.duration._

import io.gatling.core.Predef._
import io.gatling.http.Predef._
import io.gatling.jdbc.Predef._

import createGuestUser._

class createAccount extends Simulation {

我在尝试导入时收到以下错误。

08:33:57.952 [错误] i.g.c.ZincCompiler$ - /Users/dclements/Dev/Gloo/load_testing/gatling/src/createAccount.scala:9: 未找到:对象 createGuestUser 08:33:57.954 [错误] i.g.c.ZincCompiler$ - 导入 createGuestUser._

【问题讨论】:

  • 我建议类名从大写开始

标签: scala gatling


【解决方案1】:

只是为了让编译器开心,

修改声明: class createGuestUser extends Simulation

到: object createGuestUser extends Simulation

然后你可以:

import default.createGuestUser._

模拟不应相互依赖。我会提取通用代码来分隔类,例如SimulationSetup, ...场景

【讨论】:

  • 我不会使用默认包,但在例如模拟。
【解决方案2】:

查看官方文档中的advanced tutorial。页面末尾还有一个来源链接。

【讨论】:

  • 感谢您的指点。但是高级教程并没有开始将测试套件分解为多个文件。例如:如果我可以在另一个不相关的场景中重用 Browse 对象,那就太好了。
  • 也许它曾经在文档中有这个用例? gatling.io/docs/1.5.6/user_documentation/tutorial/…
  • 我按照之前关于高级用法的 gatling 文档中的说明让它工作了。如果您将答案更改为指向那里,我会接受。
  • @digidigo 你也可以回答你自己的问题。我很想看看你的解决方案,因为我遇到了同样的问题。
猜你喜欢
  • 1970-01-01
  • 2021-12-01
  • 1970-01-01
  • 2019-08-08
  • 2015-05-23
  • 2019-08-28
  • 2015-08-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多