【发布时间】:2018-08-20 05:57:15
【问题描述】:
任务是从 HTML 文件中获取数据,当我们点击提交按钮时,将下载包含输入数据的文件,并打开 QTP 并将下载的文件用作测试数据。在下面的代码中 案例1:当我在 Chrome 中使用时,文件已下载,但 QTP 未打开 Case2:我在IE中使用时,QTP是openend但文件没有下载。
请建议更改代码,以便两者都能正常工作
<html>
<head>
<script language="javascript">
function exportF() {
document.getElementById("input").innerHTML =
document.getElementById("text").value;
document.getElementById("input1").innerHTML =
document.getElementById("text1").value;
document.getElementById("input2").innerHTML =
document.getElementById("text2").value;
var table = document.getElementById("table");
var html = table.outerHTML;
var url = 'data:application/vnd.C:\\Users\patilch\Desktop\test.xlsx,' +
escape(html); // Set your html table into url
var link = document.getElementById("downloadLink");
link.setAttribute("href", url);
link.setAttribute("download", "export.xls"); // Choose the file name
link.click(); // Download your excel file
var qtApp = new ActiveXObject("QuickTest.Application");
qtApp.Launch(); // Start QuickTest
qtApp.Visible = true;
return false;
}
</script>
</head>
<body>
<div class="container">
<header>
<h1>Payment Processing</h1>
</header>
</div>
<content>
<form onsubmit="return exportF()">
<table>
<tr>
<td>File Path</td>
<td>Sap Generated Path</td>
<td>Result</td>
</tr>
<tr>
<td> <input id="text" type="text" /></td>
<td> <input id="text1" type="text" /></td>
<td> <input id="text2" type="text" /></td>
<td><input type="submit" value="RUN"/></td>
</tr>
</table>
</form>
</content>
<table id="table" style="display: none">
<tr>
<td id="input">
<td id="input1">
<td id="input2">
</td>
</tr>
</table>
<a style="display: none" id="downloadLink"></a>
</body>
</div>
</html>
【问题讨论】:
-
您没有告诉 QuickTest.Application 使用文件启动,也没有告诉 Chrome 启动 QuickTest.Application,因为它不运行 activeX
-
我应该在代码中做些什么改变
-
或许
qtApp.Open("C:\\Users\patilch\Desktop\test.xlsx") -
我想在 chrome 中启动 QTP...我不能像你说的那样使用因为 Chrome 不支持 ActiveX
-
那么你就是 sol 除非你可以发送一个可以让 chrome 打开 qtp 的矿类型
标签: javascript html vbscript qtp hp-uft