Mat*_*att 4 javascript load-testing k6
我是第一次使用 K6 负载测试工具。
我发送了一个 GET 请求,响应中发送了 html。然后我需要从这个 html 中提取一些值。
在 html 中执行此操作的最佳方法是什么?我在文档中看到以下 3 个命令可能有帮助:
Response.body
Selection.find(selector)
Response.json([selector])
Run Code Online (Sandbox Code Playgroud)
HTML如下所示。我想提取 csrf 和 transId 的值
<html lang="en">
<head>
<link rel="icon" href="data:;base64,iVBORw0KGgo=">
<script data-container="true" nonce="ekqlmSlKlpMlCSDxgP6erg==">
var SETTINGS = {
"csrf": "I NEED THIS VALUE",
"transId": "I ALSO NEED THIS VALUE",
};
</script>
</head>
<body>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我想我可以使用 Response.body 然后搜索子字符串来做到这一点。这是最好的方法吗?
首先,要获取脚本标签的内容,你可以这样做
const doc = parseHTML(res.body);
const script = doc.find('head script');
const scriptContent = script.text();
Run Code Online (Sandbox Code Playgroud)
现在从
var SETTINGS = {
"csrf": "I NEED THIS VALUE",
"transId": "I ALSO NEED THIS VALUE",
};
Run Code Online (Sandbox Code Playgroud)
您将不得不进行一些不推荐用于负载测试脚本的字符串操作。但是你可以
a.substr(28, 15)
Run Code Online (Sandbox Code Playgroud)
获取 csrf 值和
a.substr(57, 22)
Run Code Online (Sandbox Code Playgroud)
获取 transId 值。
| 归档时间: |
|
| 查看次数: |
1419 次 |
| 最近记录: |