我尝试在QTP中设置<input type="file" name="file007">
中的值
但是这个元素在iframe
之下,并且无法通过xpath获取它
来自页面:
<iframe id="file_007" src="javascript:''" style="position:absolute;width:0;height:0;border:0">
#document
<html>
<head>
</head>
<body>
<form action="/file/upload" method="POST" target="_self" enctype="multipart/form-data">
<input name="files" type="text">
<input type="hidden" name="name1" value="1">
<input type="hidden" name="name2" value="2">
<input type="hidden" name="name3" value="3">
<input type="hidden" name="name4" value="4">
<input type="hidden" name="name5" value="5">
<input type="hidden" name="name6" value="6">
<input type="hidden" name="name7" value="false">
<input type="file" name="file007">
</form>
</body>
</html>
</iframe>
我在//iframe[contains(@id, 'File')]
找到了iframe,但#documents
内的元素不可见
如何在页面上找到此元素 谢谢
答案 0 :(得分:0)
为什么使用XPath?似乎QTP的默认对象识别应该适合您。
Browser("title:=.*").Page("title:=.*").Frame("html id:=file_007").WebFile("name:= file007").Set "C:\file.txt"
如果你需要使用XPath,那么我认为QTP只支持文档中的XPath,所以你需要识别Frame
(可选择通过XPath),然后在它下面识别相对于其所有者Frame
。