如何使用 UFT 测试 Restful 服务,其中 returns JSON 响应?
How to test a Restful service which returns a JSON Response using UFT?
我一直在使用 QTP 11,现在我们不得不迁移到 UFT 12.02。
我们有一些用于测试的 REST 服务,问题是它在手动完成时会给出 JSON 响应。我之前没有使用过 C#,所以有什么方法可以使用 UFT API 配置此服务并使用我习惯的 VB 脚本验证响应。
我尝试了以下方法:
Dim lib, url, xmlHttp, json, JsonConvert, xmlDoc
lib = "C:\Bin\Net35\Newtonsoft.Json.dll"
url = "http://api.geonames.org/citiesJSON?north=44.1&south=-9.9&east=-22.4&west=55.2&lang=de&username=demo"
Set xmlHttp = CreateObject("Microsoft.XMLHTTP")
xmlHttp.open "POST", url, False
xmlHttp.send
json = "{ ""?xml"": { ""@version"": ""1.0"", ""@standalone"": ""no"" }, ""root"":" & xmlHttp.responseText & "}"
Set JsonConvert = DOTNetFactory.CreateInstance("Newtonsoft.Json.JsonConvert", lib)
Set xmlDoc = JsonConvert.DeserializeXmlNode(json)
MsgBox xmlDoc.InnerXml
但是我没有可用的 dll,我无法用它测试 URL。
如果这是正确的方法,那么谁能告诉我如何安装这个 dll。
UFT 内部使用 Newtonsoft.Json 框架(与许多其他 HPE 产品一样),因此它已经包含此类 DLL。
您只需要将路径更新为指向 UFT\bin 目录,默认情况下为:
lib = "C:\Program Files (x86)\HP\Unified Functional Testing\bin\Newtonsoft.Json.dll"
现在,从 API 测试的角度来看,您可以使用检查点来验证结果。 See Image
我一直在使用 QTP 11,现在我们不得不迁移到 UFT 12.02。
我们有一些用于测试的 REST 服务,问题是它在手动完成时会给出 JSON 响应。我之前没有使用过 C#,所以有什么方法可以使用 UFT API 配置此服务并使用我习惯的 VB 脚本验证响应。
我尝试了以下方法:
Dim lib, url, xmlHttp, json, JsonConvert, xmlDoc
lib = "C:\Bin\Net35\Newtonsoft.Json.dll"
url = "http://api.geonames.org/citiesJSON?north=44.1&south=-9.9&east=-22.4&west=55.2&lang=de&username=demo"
Set xmlHttp = CreateObject("Microsoft.XMLHTTP")
xmlHttp.open "POST", url, False
xmlHttp.send
json = "{ ""?xml"": { ""@version"": ""1.0"", ""@standalone"": ""no"" }, ""root"":" & xmlHttp.responseText & "}"
Set JsonConvert = DOTNetFactory.CreateInstance("Newtonsoft.Json.JsonConvert", lib)
Set xmlDoc = JsonConvert.DeserializeXmlNode(json)
MsgBox xmlDoc.InnerXml
但是我没有可用的 dll,我无法用它测试 URL。 如果这是正确的方法,那么谁能告诉我如何安装这个 dll。
UFT 内部使用 Newtonsoft.Json 框架(与许多其他 HPE 产品一样),因此它已经包含此类 DLL。 您只需要将路径更新为指向 UFT\bin 目录,默认情况下为:
lib = "C:\Program Files (x86)\HP\Unified Functional Testing\bin\Newtonsoft.Json.dll"
现在,从 API 测试的角度来看,您可以使用检查点来验证结果。 See Image