使用字符串的邮递员包含带有环境变量的文本

Postman using string contains text with an environment variable

希望这非常简单,但我在任何地方都找不到直接的答案。

在 Postman 中,我想使用以下测试来确保正文返回正确的文本。

pm.test("Body matches string", function () {
    pm.expect(pm.response.text()).to.include("string_you_want_to_search");
});

但我想在开发和测试环境之间轻松切换,运行 测试并验证我得到了开发 URL 和测试 URL。

举个例子,我有一个名为 {{foobar}} 的变量。在测试中,该变量的 URL 将是 foo-test.bar.com 而在 Dev 中它将是 foo-dev.bar.com。然后我修改测试以采用变量而不是字符串,如下所示:

pm.test("Body matches string", function () {
    pm.expect(pm.response.text()).to.include("{{foobar}}");
});

我假设我可以通过切换环境使用一个环境变量来检查两个 url。但是我的语法一定不正确,因为我得到了一个以 "AssertionError: expected '\r\n\r\n"

开头的长错误

谁能提供帮助?谢谢

为了在测试中使用环境变量,您必须使用 pm.environment.get("varName") 方法,因此您的测试应该如下所示:

pm.test("Body matches string", function () {
   pm.expect(pm.response.text()).to.include(pm.environment.get("foobar"));
});