你可以使用 Robot Framework 的 RequestsLibrary 来发送 HTTP 请求,从而测试 EMQ Neuron 的 metrics 功能。以下是一个示例测试案例:
*** Settings ***
Library RequestsLibrary
*** Test Cases ***
Test Metrics API
# 发送 GET 请求获取 metrics 数据
${response} = Get Request http://localhost:8080/api/v1/metrics
Should Be Equal As Strings ${response.status_code} 200
# 检查返回数据中是否包含特定指标名称和值
${metrics} = Set Variable ${response.json()}
Dictionary Should Contain Key ${metrics} mqtt_connections_current
Dictionary Should Contain Key ${metrics} mqtt_messages_received_total
Should Be Greater Than ${metrics}[mqtt_connections_current] 0
Should Be Greater Than Or Equal To ${metrics}[mqtt_messages_received_total] 0
在这个测试案例中,我们首先使用 Get Request 方法发送一个 GET 请求来获取 metrics 数据。然后,我们使用 Should Be Equal As Strings 断言来检查响应的状态码是否为 200。接下来,我们将返回的 JSON 格式数据存储到 ${metrics} 变量中,并使用 Dictionary Should Contain Key 和 Should Be Greater Than 等断言方法来验证其中包含的指标名称和值是否符合预期。
请注意,在实际测试时,你需要将测试用例中的 URL、指标名称和预期值等参数替换为你自己的实际情况。




