关于使用Selenium webdriver自动化ExtJS应用程序的测试用例,我有一些问题。
两年前,我被要求使用HP UFT自动化相同的ExtJS应用程序。为此,我为ExtJS组件开发了一个自定义的UFT插件。现在我被要求继续自动化,但使用selenium webdriver而不是UFT。今天,我尝试了一些控件,我发现Selenium无法识别使用xpath的一些控件,比如ExtJS树节点、ExtJS标签等等。
当我在其中输入定位器值时,我看到firepath会将我带到正确的控件。但是,如果我在Java代码中使用相同的定位器值,则会得到Selenium抛出的nosuchelement异常。
下面是我在列表中选择特定节点的代码。
<div>
<span class="x-tree-node-text">Circuit</span>
</div>
By.xpath("//span[contains(text(),'Circuit')])[1]") // there are two circuits like我自动化使用Selenium的工作会很困难吗?我只学了爪哇。我是否应该学习新技术来自动化此应用程序?
请让我知道。
发布于 2015-08-07 07:53:55
当涉及到硒的自动化时,ExtJS是一种动物。我用CSS和jquery选择器做了几个ExtJS应用。Jasmine是推荐的方法,但我没有研究过它,因为我没有发现需要它。如果您包含sizzle库,它将允许您使用jquery选择器,这非常有用。要选择jquery提供的元素,它应该是:
$("span.x-tree-node-text:contains('Circuit')")我在我的手机上,不能提供链接,但可以考虑在你的框架中添加sizzle。它将极大地提高您自动化ExtJS的成功。
您提供的选择器不起作用,因为您正在为没有id的div/span指定id。
我还遇到了ExtJS的时间问题,Selenium没有等待dom完成加载就会爆炸。解决方案是添加一个等待ExpectedConditions.visibilityofElementLocated.
https://stackoverflow.com/questions/31864953
复制相似问题