嘿我曾试图寻找如何解决这个问题几个小时,我一直空白。
我使用Selenium IDE尝试进行一些简单的自动化测试(基本上测试将访问网站,创建内容并提交,以确保它仍然有效)
但网站的一部分是javascript文本框,我需要在其中输入文字。
然而,Selenium无法识别我在框的文本编辑部分中所做的任何操作。它会识别我是否按下BOLD或ITALICS之类的东西。 当我选择BOLD时,它返回:点击| //一个[@ id ='mce_editor_1_bold'] / img |
但就像我说的那样,当我选择框的文本编辑部分时它不会识别。 我在网上进行了一些研究后尝试使用xpath(和firebug),但我似乎无法做到这一点。
有人提供帮助或想法吗?
答案 0 :(得分:0)
您还可以使用javascript与Selenium合作。例如,如果您的富文本框有id="RichText"
,您可以通过javascript获取该元素并在那里输入您的值。
代码看起来像这样:
| verifyEval | javascript{this.browserbot.getCurrentWindow().document.getElementById('RichText').value = 'Foo Bar'} ||
但是,我发现this.browserbot
部分的语法可能会有所不同。让事情进展需要一些工作。您还可以查看The Automated Tester中的这篇文章,其中包含您正在尝试执行的操作的信息。
此问题还可以帮助您:Selenium: How do I use javascript to clear a value from a form field?
答案 1 :(得分:0)
我建议坚持使用Firebug。打开测试页面并使用Firebug的“Inspect”功能找到HTML源代码中的文本框。然后你应该能够找到一种使用id,xpath或css找到盒子的方法。
例如: 如果它有id ='textBox',你可以使用id = textbox找到它。 如果它有class ='jsTextBox',你可以使用css = .jsTextBox找到它
否则您可以使用XPath - 我建议您使用XPath Checker extension,这样您就可以右键单击文本框并查找XPath。您可能想要使用结果来使其成为更智能的XPath。
找到位置后,您应该能够使用type或typeKeys命令输入数据。 type更改了值,typeKeys为每个字符向上/向下触发键 - 它更慢但有时需要,具体取决于被测试的应用程序。
type | id=textBox | myValue
verifyValue | id=textBox | myValue
希望这有帮助, 戴夫。