我正在尝试通过基于Automation Object Model的vbscript文件运行我的API测试。我能够启动,打开和运行我的GUI测试,但是对于API测试,我得到一个错误"无法打开测试"代码:800A03EE。 我在某处读过我的测试用例可能已损坏,所以我将测试保存为新测试但仍然无效。
以下是我的vbscript:
testPath = "absolute address to my API-test folder"
Set objUFTapp = CreateObject("QuickTest.Application")
objUFTapp.Launch
objUFTapp.Visible = TRUE
objUFTapp.Open testPath, TRUE '------> throws the error
Set pDefColl = qtApp.Test.ParameterDefinitions
Set rtParams = pDefColl.GetParameters()
Set rtParam = rtParams.Item("param1")
rtParam.Value = "value1"
objUFTapp.Test.Run uftResultsOpt,True, rtParams
objUFTapp.Test.Close
objUFTapp.Quit
答案 0 :(得分:1)
由于某些未知原因,我也面临着类似的问题 作为一种解决方法,我创建了一个GUI测试,我从中调用API测试:
RunAPITest "API_Test_Name"
这样做:
1。创建新的GUI测试
2。转到 Design
- >的 Call to existing API test
强>
3。在 Test path
中提供API测试的路径
4。为 <Entire Test>
选择 Call to
5. 您可以在此屏幕中传递任何 Input
或 Output
参数
5. 点击“确定”
现在,您可以使用自己的VBScript来调用此GUI测试,该测试将运行您所需的API测试。
我知道这样做并不是一个好主意,但它会完成工作。
答案 1 :(得分:0)
到UFT安装时,我们可以选择其他自动化工具LeanFT。
作为LeanFT的主要特性,我们可以将测试环境放在我们的开发环境旁边,无论是Java(Eclipse)还是C#.net(Visual Studio)。此外,我们还提供了一个对象识别工具(GUI间谍),它使得不再在VBScript中开发GUI测试成为可能,而是在最强大的现代语言之一(Java或C#)中。通过这个非常简短的总结,让我们看看我们如何在UFT IDE之外执行API测试。 成功安装LeanFT工具后,我们可以在Eclipse或Visual Studio中创建LeanFT项目。 Create a new LeanFT project
C#代码:
using HP.LFT.SDK;
using HP.LFT.SDK.APITesting.UFT;
......
[TestMethod]
public void TestMethod1()
{
Dictionary<string, object> InputParameters = new Dictionary<string, object>();
InputParameters.Add("environment", "TEST");
APITestResult ExecutionResult = APITestRunner.Run("UFT Test Path" , InputParameters);
MessageBox.Show(ExecutionResult.Status.ToString());
.....
}
当然,上面的代码只是为了给你一个见解,虽然它工作得很好。为了更好的诊断,我们可以利用其他图书馆,例如&#34; HP.LFT.Verifications&#34;用于检查结果 重要提示:您不能在运行时引擎的同时使用UFT和LeanFT!