如何在Firefox14中使用Selenium IDE在TinyMCE编辑器中输入文本

如何在Firefox14中使用Selenium IDE在TinyMCE编辑器中输入文本,tinymce,selenium-ide,Tinymce,Selenium Ide,我做了一个测试,它在更新或更旧的firefox版本中工作,较慢或更快的internet连接(至少我说我在vmware中的虚拟机的internet很慢),但我不知道是什么原因导致另一台计算机中的typeKeys命令失败。不知何故,文本没有在TinyMCE编辑器中写入,因此断言失败 有谁能告诉我是什么导致了这样的事情,或者可能有不兼容的命令 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//D

我做了一个测试,它在更新或更旧的firefox版本中工作,较慢或更快的internet连接(至少我说我在vmware中的虚拟机的internet很慢),但我不知道是什么原因导致另一台计算机中的typeKeys命令失败。不知何故,文本没有在TinyMCE编辑器中写入,因此断言失败

有谁能告诉我是什么导致了这样的事情,或者可能有不兼容的命令

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="selenium.base" href="http://tinymce.com" />
<title>New Test</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">New Test</td></tr>
</thead><tbody>
<tr>
    <td>open</td>
    <td>http://tinymce.com/tryit</td>
    <td></td>
</tr>
<tr>
    <td>waitForPageToLoad</td>
    <td>15000</td>
    <td></td>
</tr>
<tr>
    <td>assertElementPresent</td>
    <td>id=demo_tab</td>
    <td></td>
</tr>
<tr>
    <td>waitForElementPresent</td>
    <td>id=content_ifr</td>
    <td></td>
</tr>
<tr>
    <td>selectFrame</td>
    <td>id=content_ifr</td>
    <td></td>
</tr>
<tr>
    <td>focus</td>
    <td>//body[@id='tinymce']</td>
    <td></td>
</tr>
<tr>
    <td>clickAt</td>
    <td>//body[@id='tinymce']</td>
    <td>(1,1)</td>
</tr>
<tr>
    <td>typeKeys</td>
    <td>//body[@id='tinymce']</td>
    <td>writing something in this silly form</td>
</tr>
<tr>
    <td>fireEvent</td>
    <td>//body[@id='tinymce']</td>
    <td>blur</td>
</tr>
<tr>
    <td>assertTextPresent</td>
    <td>writing something</td>
    <td></td>
</tr>
<tr>
    <td>selectFrame</td>
    <td>relative=parent</td>
    <td></td>
</tr>
<tr>
    <td>assertElementPresent</td>
    <td>id=submitbtn</td>
    <td></td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>id=submitbtn</td>
    <td></td>
</tr>
<tr>
    <td>waitForTextPresent</td>
    <td>Post dump</td>
    <td></td>
</tr>
<tr>
    <td>assertTextPresent</td>
    <td>HTML output from post</td>
    <td></td>
</tr>
<tr>
    <td>verifyTextPresent</td>
    <td>writing something</td>
    <td></td>
</tr>
</tbody></table>
</body>
</html>

新测试
新测试
打开
http://tinymce.com/tryit
waitForPageToLoad
15000
资产负债表
id=演示选项卡
侍者
id=内容
选择框
id=内容
集中
//正文[@id='tinymce']
点击
//正文[@id='tinymce']
(1,1)
打字键
//正文[@id='tinymce']
用这种愚蠢的形式写东西
火灾事件
//正文[@id='tinymce']
变得模糊不清
assertTextPresent
写东西
选择框
相对=父
资产负债表
id=submitbtn
单击并等待
id=submitbtn
waitForTextPresent
后转储
assertTextPresent
来自post的HTML输出
验证文本当前
写东西
如果我不够清楚,请尽管问


感谢您提前回复

这是我的工作原理,本质上,通过选择帧(其他人建议这样做),然后单击和聚焦命令将使其成为活动编辑器,允许sendKeys命令工作。在本例中,我将向编辑器传递一个变量,并将iframe TinyMCE创建的内容保存为变量。对于多个实例,我将基于${frame}变量对它们进行循环。

选择窗口 无效的 选择框 xpath=/*[包含(@id,${frame}')] 点击 xpath=/*[包含(@id,'tinymce')] 集中 xpath=/*[包含(@id,'tinymce')] 发送键 xpath=/*[包含(@id,'tinymce')] ${date}${frame}
以下是对我有效的方法,本质上,通过选择帧(其他人建议这样做),然后单击和聚焦命令将使其成为活动编辑器,允许sendKeys命令工作。在本例中,我将向编辑器传递一个变量,并将iframe TinyMCE创建的内容保存为变量。对于多个实例,我将基于${frame}变量对它们进行循环。

选择窗口 无效的 选择框 xpath=/*[包含(@id,${frame}')] 点击 xpath=/*[包含(@id,'tinymce')] 集中 xpath=/*[包含(@id,'tinymce')] 发送键 xpath=/*[包含(@id,'tinymce')] ${date}${frame} 尝试使用
命令| runScript
Target | tinyMCE.get('text_area_id_not_iframe_id')。setContent('Your text')
哪种方法适用于特定的tinyMCE,或者如果您在一个页面上有多个tinyMCE

否则,如果您只有一个tinyMCE,请运行script | tinyMCE.activeEditor.setContent(“您的文本”)

尝试使用
命令| runScript
Target | tinyMCE.get('text_area_id_not_iframe_id')。setContent('Your text')
哪种方法适用于特定的tinyMCE,或者如果您在一个页面上有多个tinyMCE


否则,如果您只有一个tinyMCE,runScript | tinyMCE.activeEditor.setContent(“您的文本”)

我刚刚发现,我的测试并不专门适用于firefox 14.0.1。而且“typeKeys”这一行也变成灰色——没有找到它的意思。这个浏览器有什么解决方案吗?我刚刚发现我的测试并不是专门针对Firefox14.0.1的。而且“typeKeys”这一行也变成灰色——没有找到它的意思。这个浏览器有什么解决方案吗?
tr>
    <td>selectWindow</td>
    <td>null</td>
    <td></td>
</tr>
<tr>
    <td>selectFrame</td>
    <td>xpath=//*[contains (@id, '${frame}')]</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>xpath=//*[contains (@id, 'tinymce')]</td>
    <td></td>
</tr>
<tr>
    <td>focus</td>
    <td>xpath=//*[contains (@id, 'tinymce')]</td>
    <td></td>
</tr>
<tr>
    <td>sendKeys</td>
    <td>xpath=//*[contains (@id, 'tinymce')]</td>
    <td>${date} ${frame}</td>
</tr>