0

我一直在使用 Artillery 进行一些 HTTP 测试,并且效果惊人。现在我正在尝试使用自定义函数在 WebSocket 上运行测试。我们有一个自定义客户端来连接到 WS 服务,所以我想在函数调用之前打开客户端连接并在所有测试完成后关闭该客户端连接,所以我不需要为每个请求打开/关闭客户端. 我的测试如下:

config:
  target: "ws://localhost:8888"
  processor: "customTest.js"
  phases:
    - duration: 300
      arrivalRate: 500
      name: Sustained load

scenarios:
  - name: "Testing WebSocket implementation"
    engine: ws
    flow:
      - function: "wsCustomTest"

wsCustomTest 就像

module.exports = { wsCustomTest }
const { CustomClient } = require("aCustomClient");

async function wsCustomTest(context, ee, next) {
  const client = new CustomClient();
  try {
    await client.open();
    await client.send("some information");
  } catch (err) {
    console.log(err);
  } finally {
    await client.close();
  }

  return next();
}
4

0 回答 0