通常,selenium不识别浏览器工具栏上的元素。但这是针对预构建浏览器工具栏的。浏览器工具栏(用于FF、IE和Chrome )是否可以这样开发: selenium可用于识别工具栏上的元素,然后在其上执行控制操作,如单击工具栏上的单选按钮。
发布于 2011-07-17 18:13:49
因为JavaScript只能控制JavaScript可以控制的东西,所以您需要了解Selenium是否可以控制工具栏。JavaScript有3个主要特性。我控制JavaScript处理、DOM (文档对象模型)和BOM (浏览器对象模型)。当HTML5和CS3问世时,JavaScript可能会有更多的控制权,但这是我对它的了解。
我认为你可能需要使用一个跨浏览器的扩展来制作你的侧边栏/工具栏。google-gears/silverlight/adobe-air/jnext。您可能需要使用DOM制作UI。我没有把握。你需要研究一下..以前从来没这么做过。
如果工具栏是BOM (和/或DOM)的一部分,则可以。只需创建一个自定义命令,名为Selenium.prototype.doControlToolbar或其他命令,并将您的JavaScript逻辑放在该函数中(类似于我下面的内容)。祝好运!
选项#1 -如果使用Selenium IDE:
在Selenium IDE > Options (menu) > Options (menu option) > General Tab下指定user-tensions.js文件,然后浏览到"Selenium Core Extensions“下的文件。
选项#2 -如果使用Selenium RC服务器:
如果您没有使用集成开发环境并使用带有客户机驱动程序的Selenium RC服务器(例如JUnit ),那么在命令行启动Selenium RC服务器时,必须使用-userExtensions参数指定*.js文件的路径。但是你说你只是想使用IDE,所以我会忽略这一点。要使用Selenium RC服务器,需要进行大量的其他设置。
java -jar selenium-server.jar -userExtensions用户扩展.js
=======================
我在我的自定义用户扩展.js文件中创建了以下自定义命令(JavaScript函数)。在IDE找到它之前,我必须退出并重启它。在IDE中的" command“字段中,键入"do”后面的所有内容以查找自定义命令。看起来它还添加了一个"customAlertAndWait“到集成开发环境中。
user-extsions.js文件中的代码:
Selenium.prototype.doCustomAlert = function( sTarget,sValue) {Selenium.prototype.doCustomAlert(‘目标:’+sTarget+‘...值:‘+ sValue);};
Selenium IDE命令详细信息:
命令: customAlert
目标:自定义警报目标
值:自定义警报值
https://stackoverflow.com/questions/6098023
复制相似问题