如何从JSON文件获取值到变量?

时间:2015-05-28 11:29:32

标签: json vbscript

当我运行量角器测试用例时,我得到了测试用例结果的以下JSON响应,该结果存储在combined.json文件中。

案例1:对于通过的测试案例:

{"description":"tests the case when the login was successful|E2E test Login and search users with different search criteria",
"passed":true,
"os":"XP",
"browser": chrome
}

案例2:对于失败的测试用例:

{"description":"tests the case when the login was successful|E2E test Login and search users with different search criteria",
"passed":false,
"os":"XP",
"browser": chrome
}

在上述情况下,测试结果存储在passed JSON对象中。

我正在HPALM中编写一个VAPI测试用例,为此我需要传递测试用例状态。我想将passed的值设为变量。

1 个答案:

答案 0 :(得分:2)

我认为VBScript没有JSON解析器,所以你必须自己解析文件。因为你有一个非常简单的场景(提取特定键的值)使用正则表达式应该没问题,但是:

Set fso = CreateObject("Scripting.FileSystemObject")

json = fso.OpenTextFile("C:\path\to\combined.json").ReadAll

Set re = New RegExp
re.Pattern = """passed"":(true|false),"
re.IgnoreCase = True

For Each m In re.Execute(json)
  passed = CBool(m.SubMatches(0))
Next