我正在尝试在RFT中使用xpath。通过网络搜索将此代码扔给我 -
private static NodeList getNodesWithXPath(Document document, String xpathStr)
throws XPathExpressionException {
NodeList nodes = null;
XPathFactory factory = XPathFactory.newInstance();
XPath xpath = factory.newXPath();
if (xpathStr != null) {
XPathExpression expr = xpath.compile(xpathStr);
Object result = expr.evaluate(document, XPathConstants.NODESET);
nodes = (NodeList) result;
}
return nodes;
}
现在,我是RFT的新手,完全不知道如何访问'Document'对象?试图将TestObject强制转换为抛出异常会引发异常。我可以看到一些例子说明
Document doc = parse(xmlFileLocation)
但我不确定这个xmlFileLocation是什么意思。我有一个简单的网页,我需要使用xpath识别元素。
P.S。 - 我知道还有其他方法可以使用atDescendant等识别对象,但由于某些原因,我需要在这里明确使用xpath。
非常感谢任何帮助。
谢谢!
答案 0 :(得分:1)
它们是不同的Document
个对象。
我认为你got the code from IBM developerworks,这是一个从XML文件中获取的文档,因此可以使用XPATH浏览。
RFT 文件为com.rational.test.ft.object.interfaces.DocumentTestObject
而XML相关的可能是org.w3c.dom.Document
完全不同的课程。
XPath is not supported by RFT以及no answers in the forums。
如果您的网页中需要XPath查询,请尝试其他内容,例如Selenium。