我正在我的ElasticSearch索引上写一系列负载测试。我需要在负载测试中设置并删除索引。为此我写了这段代码
before {
println("going to setup index")
scenario("SetupIndex")
.exec(
http("createindex")
.put("/test")
)
.inject(atOnceUsers(1))
.protocols(httpConf)
}
setUp(
scn
.inject(
constantUsersPerSec(10) during (60 seconds) randomized
)
.protocols(httpConf)
)
after {
scenario("DeleteIndex")
.exec(
http("deleteindex")
.delete("/test")
)
.inject(atOnceUsers(1))
.protocols(httpConf)
println("finished executing cleanup....")
}
我看到它打印“已完成执行清理”,但它并没有真正执行删除。我可以通过curl-XDELETE轻松删除索引http://localhost:9200/test
当我运行我的模拟时。它运行成功。但是我可以看到测试索引仍然存在。
您可以使用在库中添加的jar,例如okhttp。例如:
import okhttp3.{OkHttpClient,Request}
before {
println("Simulation is about to start!")
val request = new Request.Builder().url("http://computer-database.gatling.io").build
val response = new OkHttpClient().newCall(request).execute()
println(response.body().string())
if (response != null) response.close()
println("Simulation initialized!")
}
Gatling使用导入io.gatling.http.client.HttpClient。如果没有添加lib,您应该可以使用这个。
你不能在之前
和
之后
内部使用Gatling DSL,或者更准确地说,你可以,但它不会像你期望的那样工作。Gatling DLS方法不执行用于创建ScenarioBuilder对象的任何操作(它更像一个配置,而不是可执行代码),然后可以将其传递给
setUp
方法来执行(也不是直接执行)。但是在before
和after
方法中,您使用的是纯Scala,因此如果您在那里放置场景
方法,您将只创建从未使用过的新ScenarioBuilder对象。因此,如果您想从这些方法中运行一些API调用,那么您必须使用一些http客户端。
我有一个对服务器的Authenticate post调用,如下所示: 用这样的尸体: 我总是必须在Postman中执行两次这个Authenticate调用,以正确填充我的全局var“安全令牌”,并在此后的下一次调用中使用该令牌进行身份验证,因此,似乎预请求脚本实际上是在脚本之后运行的,或者是预请求脚本中设置的全局var对当前请求不容易可用? 我做错了什么? 以下是预先请求的SRIPT:
我正在尝试设置Azure Application Insights以监视Azure App Services中承载的ASP.NET Core Web App和Web API的以下指标的性能计数器: null 我相当肯定Application Insights的配置是正确的,因为我可以看到门户中显示的其他度量。是不是有什么原因,这些特定的度量似乎没有出现?我甚至尝试使用一个默认的ASP.NET核心模
这个请求在postman中工作得非常好,所以我认为它与cors相关,并安装了fastify-cors,但我仍然得到同样的错误。 有人有什么建议如何解决这个问题吗?
在一些请求中,我们会做一些日志的推送、用户数据的统计等和返回给终端数据无关的操作。而这些操作,即使你用异步非阻塞的方式,在终端看来,也是会影响速度的。这个和我们的原则:终端请求,需要用最快的速度返回给终端,是冲突的。 这时候,最理想的是,获取完给终端返回的数据后,就断开连接,后面的日志和统计等动作,在断开连接后,后台继续完成即可。 怎么做到呢?我们先看其中的一种方法: local response
问题内容: 我有这个代理地址: 如何使用cURL之类的来执行HTTP请求,但指定网络的代理地址? 问题答案: 一般方式: 然后,您可以通过来自(许多)应用程序的代理进行连接。 并且,按照下面的注释,对于https:
问题内容: 我想要的是从具有HTTP(例如jQuery的AJAX)请求的API到外部api的对象。我该如何开始?我曾对Google先生进行过调查,但找不到任何帮助。 我开始怀疑这是否可能?在这篇文章中,Laravel4发出了从控制器到外部url的发布请求,并发出了看起来可以完成的数据。但是没有示例,也没有任何来源可以找到一些文档。 请帮帮我吗? 问题答案: 看看Guzzle