一种高效的应用程序脚本语言 API 自动化测试方法(下)

发表于:2010-7-15 16:54

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Monica Luke    来源:51Testing软件测试网采编

  清单 5. RFT 脚本

public void testMain(Object[] args) {
String fileName = "";
if (args != null && args.length != 1)
return;
else {
fileName = (String) args[0];
}
try {
 // 打开测试文件
 CommonTask.openFile("sample/Macro/" + fileName);
 //Sheet1 上的 StarMacro 按钮,根据类型 ID 进行查找
 VclButton btn = new VclButton(".find:58818 326 0");
 // 触发调用脚本语言 API
btn.click();
 // 释放资源,关闭这个测试文件
 CommonTask.discardAll();
} catch (Throwable t) {
// 异常处理
}

  // 处理 VBA 脚本生成的 Log 文本文件,放到 Log 目录下
 File logDir = new File(VBAConstant.OUT_DIR);
if(!logDir.exists())
logDir.mkdirs();
 File newLoc = new File(VBAConstant.OUT_DIR, fileName.substring(0,
 fileName.lastIndexOf(".xls")) + ".log");
 boolean ret = VBAUtil.copyFile(logFile, newLoc);
// 根据 Log 文件,分析脚本 API 执行结果
boolean result = false;
String excResult = VbaLogProcessor.analyzeLog(logFile);

if (excResult.equals(VbaLogProcessor.TEST_PASS)) {
result = true;
} else if (excResult.equals(VbaLogProcessor.TEST_FAIL)) {
result = false;
} else {
Logger.error("Error Occured");
}
Verify.verifyTrue(tcid + " result:", result);
}


  根据上文的描述和以上代码,只需要使用 RFT 根据文件路径和名称在 IBM Lotus Symphony 中打开一个 Excel 测试文件,并点击 Sheet1 中的 CommandButton:StartMacro 就可以 VBA 脚本运行。如图 6 所示

  图 6. Symphoy 中打开脚本文件


  StartMacro 触发的 VBA 脚本代码如下所示。

43/4<1234>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号