我正在使用 loadtest nodejs 模块来测试 nodejs 脚本中 API 的压力测试。Get 调用语法有效,但调用后无效。代码如下。
function optionsObject() {
return {
url: 'http://localhost:3000/api/v2/signup',
maxRequests: 1,
concurrency: 1,
method: 'POST',
contentType: 'applicaton/json',
body: {
password: 'test',
email: 'testobject_1@signup2.com',
name: 'kPYgJ6Rg5wnExt8hTXQIHDn2LaCMsytjhQzp'
}
}
Run Code Online (Sandbox Code Playgroud)
}
loadtest.loadTest(optionsObject(), function (error, result) {
if (error) {
console.log('Got an error: %s', error);
} else {
console.log(result);
}
});
Results:
{
totalRequests: 1,
totalErrors: 1,
totalTimeSeconds: 0.025545716,
rps: 39,
meanLatencyMs: 20,
maxLatencyMs: 20,
percentiles: { '50': 20, '90': 20, '95': 20, '99': 20 },
errorCodes: …Run Code Online (Sandbox Code Playgroud) 拜托,我需要有关如何有效测试已完成的 Node.js 应用程序的专家建议。我想做的是
1.我想运行测试来刺激例如100个用户都在向一个mongoDB中插入数据
2. 100 个用户从数据库中检索记录
3.可能有 100 个用户从数据库中删除,我想检查系统在这种情况下的表现。我在 npm 中读到了 loadtest,在我看来它是一个不错的候选人,但我不知道我是否可以使用它来将数据(post/get)请求传递到数据库中,看看系统将如何响应情况像 100 个用户都将真实数据发布到数据库中。我想,loadtest 有助于检查例如 20 秒的响应时间,可能有 40 个并发请求,这是我对该模块的基本理解,我不知道它是否具有其他功能,例如我期望做的。任何有关此问题的建议或线索将不胜感激,因为我希望尽可能避免重新设计车轮谢谢
jmeter在 bash 脚本中使用,如果任何断言失败,我如何管理它返回非零值?
jmeter -n -t someFile.jmx
echo $?
# always returns 0, even if an assertion failed
Run Code Online (Sandbox Code Playgroud)
我尝试Bean Shell Assertion使用脚本:
if (ResponseCode.equals("200") == false) {
System.exit(-1);
}
Run Code Online (Sandbox Code Playgroud)
但这甚至没有返回0,它只会终止进程(我猜?)
有人可以帮我吗?
我们需要测试一个交互式广播解决方案,该解决方案允许观众通过实时视频和语音通信与演示者互动,同样的内容也将广播给更多观众(100 个用户)。该解决方案将使用 OPENTOK API 实施(WEBRTC 视频流)并且仅在移动设备上可用
是否有一个负载/压力/性能测试工具可以处理这个要求,并且基本上允许我生成这 100 个可以流式传输交互式广播的虚拟用户?
我们需要进行全栈负载测试。而数据之旅是从 mqtt 客户端开始的。有没有什么好的服务可以对这种情况进行负载测试?
在非 gui 模式下使用 Jmeter 3.3 进行分布式测试期间,我收到错误,我该如何解决这个问题:
我在 Master 和 Slave 机器上使用相同版本的 JMeter 和 JDK。
JVM 应该已经退出但没有退出。以下非守护进程线程仍在运行(DestroyJavaVM 是可以的): Thread[main,5,main],
stackTrace:java.net.SocketInputStream#socketRead0
java.net.SocketInputStream#socketRead
java.net.SocketInputStream#read
java.net.SocketInputStream#read
java.io.BufferedInputStream#fill
java.io.BufferedInputStream#read
java.io.DataInputStream#readByte
sun.rmi.transport.StreamRemoteCall#executeCall
sun.rmi.server.UnicastRef#invoke
java.rmi.server.RemoteObjectInvocationHandler#invokeRemoteMethod
java.rmi.server.RemoteObjectInvocationHandler#invoke
com.sun.proxy.$Proxy19#rrunTest
org.apache.jmeter.engine.ClientJMeterEngine#runTest at line:149
org.apache.jmeter.engine.DistributedRunner#start at line:132
org.apache.jmeter.engine.DistributedRunner#start at line:149
org.apache.jmeter.JMeter#runNonGui at line:1005
org.apache.jmeter.JMeter#startNonGui at line:910
org.apache.jmeter.JMeter#start at line:538
sun.reflect.NativeMethodAccessorImpl#invoke0
sun.reflect.NativeMethodAccessorImpl#invoke
sun.reflect.DelegatingMethodAccessorImpl#invoke
java.lang.reflect.Method#invoke
org.apache.jmeter.NewDriver#main at line:248
Run Code Online (Sandbox Code Playgroud) 我想用 Locust 进行一些负载测试,以了解我的系统如何响应并行请求。
假设我的系统同时收到 10 个请求。我的第一个反应是测量这 10 个请求中每一个的响应时间。我做了一个简单locustfile.py的衡量:
from locust import HttpLocust, TaskSet, task
class UserBehavior(TaskSet):
def on_start(self):
pass
def on_stop(self):
pass
@task(1)
def content_query(self):
self.client.get('/content')
class WebsiteUser(HttpLocust):
task_set = UserBehavior
min_wait = 1000
max_wait = 1000
Run Code Online (Sandbox Code Playgroud)
我使用了这个文件并生成了 10 只蝗虫。我能够得到我想要的测量结果。
但后来我意识到我想知道的是我的系统对所有这 10 个请求的回复速度有多快。如果每个请求需要 20 毫秒才能得到回复,我不知道:
为了衡量这一点,我有以下想法:我希望我的系统在 1 小时内始终处于 10 个请求的负载上,并测量在此期间处理了多少请求。
换句话说,只要 10 个请求中的一个成功,就应该执行另一个请求来代替它。
我怎么能用 Locust 做到这一点?
我有使用请求成功处理程序的想法,如 Locust 文档中所述:
from locust import HttpLocust, TaskSet, task, events
def my_success_handler(request_type, name, response_time, response_lenght, **kw): …Run Code Online (Sandbox Code Playgroud) I am trying to run jmeter to load test vaadin13 application following the article here How to perform an Load Test/Performance Test with Vaadin 10 (is it possible with Jmeter?) which is absolutely very helpful. However, i encounter being return for(;;);[{"meta":{"sessionExpired":true}}] for every request which i am clueless.
I check that Vaadin-Security-Key is extracted correctly. Check the request data csrfToken, node is replaced with the value correctly. I am clueless on what i am missing here. Would like to seek …
我想知道我的服务器每秒可以使用 Jmeter 处理多少个 HTTP 请求。
我的吞吐量为 128/分钟,这意味着每秒 2/3 请求。但是我的采样器出了点问题,你能告诉我需要做什么来测试登录 URL 吗?
load-testing ×10
jmeter ×5
node.js ×2
bash ×1
distributed ×1
javascript ×1
json ×1
jvm ×1
locust ×1
mongodb ×1
mqtt ×1
opentok ×1
performance ×1
post ×1
python ×1
service ×1
vaadin10 ×1
webrtc ×1