我第一次使用Gatling。我有用java / cucumber编写的功能测试。我想从Gatling-scala脚本运行这些功能测试来对我的应用程序进行性能测试。有没有办法这样做? 我们的想法是使用现有的功能测试并将它们包装在gatling脚本中,以便它们可以同时为多个用户执行。
答案 0 :(得分:1)
答案 1 :(得分:0)
如果您是第一次使用Gatling,您是否考虑过使用其他可以为您提供此类选项的性能工具?作为你的情况下Gatling的模拟(如果你想在Java上创建功能测试)并在以后使用加载工具运行它我建议你检查蝗虫。
使用Locust,您可以使用Java甚至Kotlin编写测试。您可以通过以下链接找到方便的教程:
https://www.blazemeter.com/blog/locust-performance-testing-using-java-and-kotlin
另一个更好的选择可能是使用Taurus框架,它允许您立即运行JUnit / TestNG测试: https://gettaurus.org/docs/JUnit/ https://www.blazemeter.com/blog/navigating-your-first-steps-using-taurus
答案 2 :(得分:0)
Gatling主要用于http测试。我要做的是从加特林测试中调用Java代码,该测试将返回我检查的值:我从下面的Java代码返回一个布尔值以进行性能测试(功能测试也是如此,需要扩展GatlingHttpFunSpec模拟类)。还需要使用一个虚拟端点(例如运行状况检查网址,它将始终返回200)。
val myJavaTest: MyJavaTest = new MyJavaTest()
val baseURL="http://localhost:8080"
val endpoint_headers=Map("header1" -> "val1")
val endPoint="/myurl/healthcheck"
setUp(scenario("Scenario ")
.exec(
http("run first test")
.get(endpoint)
.headers(endpoint_headers)
.check(bodyString.transform(str => {
myJavaTest.runTest1()//should return boolean
}).is(true)))
.inject(atOnceUsers(1))).protocols(http
.baseURL(baseURL))