【发布时间】:2011-09-01 19:02:31
【问题描述】:
我一直在编写一个使用大量 ExtJS 的应用程序的测试自动化(在 Selenium2 Java、Firefox 3.6 中)。我已经能够很好地解决强大的变形元素 id,但是在一页上,代码行为让我很难过。有一个可以设置用户名的文本字段。在单击编辑按钮之前它是不可单击的,然后 Firebug 可以找到文本字段。如果输入文本然后保存,则该文本在页面上可见,但不会出现在 HTML 代码中的任何位置。即使再次单击编辑按钮以使文本字段可访问,我也无法获取文本字段的值。这是编辑模式下标签和文本字段的代码:
<div class="x-form-item " tabindex="-1">
<label class="x-form-item-label" style="width: 250px;" for="ext-comp-1022">Interface Username:</label>
<div id="x-form-el-ext-comp-1022" class="x-form-element" style="padding-left: 255px;">
<input id="ext-comp-1022" class=" x-form-text x-form-field " type="text" name="interfaceUsername" autocomplete="off" size="20" style="width: 292px;">
</div>
请注意,标签“用户名:”按预期显示在 HTML 中,但文本字段本身没有任何内容。我怀疑一个 javascript 调用正在获取并显示文本字段中的文本,但我对 ExtJS 一点也不熟悉。我检查了this post,但它不适用于获取文本,主要是更改 ID 问题。所以,我想了解如何弄清楚正在调用什么脚本,以及如何使用 executeScript 来获取文本字段文本。我可以用 Selenium 在字段中输入文本,用 Selenium 保存它,然后通过眼球在页面上看到它,所以我没有遇到 Selenium 代码本身定位元素的问题。
谢谢, 萨布丽娜
【问题讨论】:
标签: javascript selenium selenium-webdriver