有没有办法动态取消设置环境变量? 我想访问环境变量并执行查找和替换/删除操作,以便我可以进行更动态的测试。
例如,假设我想测试用户的创建,我创建了 {{tmp-username}}、{{tmp-email}} 等变量...将它们替换为下一次测试的其他值,然后完成后将它们移除。
如果我知道如何使用代码访问这些内容,我会在 tmp 上进行字符串搜索...
提前感谢任何回复
澄清一下,这个问题是不同的:Postman: How to delete/clear postman environment variable at run-time 这涉及了解您希望取消设置的 var 的确切名称。我想搜索或遍历变量以删除或编辑它们。
最佳答案
您能否使用 Tests
选项卡中的函数来循环访问变量并在最后一次测试运行后清除它们?
例如:
function cleanup() {
const clean = _.keys(pm.environment.toObject())
_.each(clean, (arrItem) => {
pm.environment.unset(arrItem)
})
}
cleanup()
这不会“替换”这些值,但这会让您确信在运行期间设置的值不会再次使用。
编辑
如果你想清除一组特定的变量,那些你给了特定前缀的变量,你可以使用这个:
function cleanup() {
const clean = _.keys(pm.environment.toObject())
_.each(clean, (arrItem) => {
if (arrItem.startsWith("tmp")) {
pm.environment.unset(arrItem)
}
})
}
cleanup()
如果您想查看所有键和值,您可以使用它来将它们记录到控制台:
_.map(pm.environment.toObject(), (value, key) => console.log(`The key is '${key}' and the value is '${value}'`))
关于 postman 动态取消设置环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51024746/