启动Selenium RC时,user-extensions.js中的自定义命令无法加载

时间:2012-06-29 10:16:09

标签: javascript selenium selenium-rc selenium-ide

我正在使用Selenium IDE来创建一些测试。在IDE的选项中,我已经指定了一个按预期工作的user-extensions.js文件。以下是其内容:

Selenium.prototype.doactivateEnv = function(nomDeVariable){
    storedVars[nomDeVariable] = "test";
}

当我开始使用“activateEnv”命令的测试时,它运行得很好,执行它并具有预期的行为。 另一方面,当我启动Selenium RC服务器时,它完全无法识别此命令的存在。我的所有测试都失败并出现同样的错误:

info: Starting test /selenium-server/tests/TestStaticID.html
info: Executing: |activateEnv | ENV |  |
error: Unknown command: 'activateEnv'
warn: currentTest.recordFailure: Unknown command: 'activateEnv'

这是我用来启动selenium RC服务器的:

D:\__Miroslav\OMC\tests>java -jar selenium-server-standalone-2.24.1.jar 
-userExtensions user-extensions.js -port 4545 -htmlsuite *chrome 
"http://localhost:8080/" TestSuite\tests.html results\results.html

user-extensions.js与服务器的jar文件在同一个文件夹中,我试过并且没有文件的绝对路径,它没有任何区别。 此外,我尝试使用Firefox,Chrome和IE,所有这些都以同样的方式失败。

我觉得我缺少一些非常基本和愚蠢的东西,但我似乎无法找到它。 任何帮助都会得到满足。

编辑:我刚刚测试了它,如果我在启用了用户扩展的交互模式下加载Selenium RC,它可以正常工作:

14:47:31.531 INFO - Command request: activateEnv[ENV, ] on session 887e2d2c6f884c81b0c39f32c24d523a
14:47:31.531 INFO - Got result: OK on session 887e2d2c6f884c81b0c39f32c24d523a

仍然无法在-htmlsuite模式下工作。

2 个答案:

答案 0 :(得分:1)

好的,我不知道如何以及为什么,但它现在突然起作用了: - / 我一直在为硒设置FirefoxProfile(主要是遵循本教程:this tutorial)并且在某些时候我注意到它突然开始通过测试,之前由于“未知命令”而失败在我的user-extensions.js中定义

我真的不知道触发它的是什么。起初我以为这是一个事实,有一个特殊的配置文件,然后我注意到我已经移动了一点点selenium-server的论点,起初我在这里引用的例子不起作用,但是因为我是故障排除,试图通过删除,更改和添加参数来找到原因,最后只是神奇地工作。

java -jar selenium-server-standalone-2.24.1.jar -port 4545 -userExtensions user-extensions.js -firefoxProfileTemplate FFProfileSelenium -htmlsuite *firefox http://localhost:8080 testSuite\tests.html testSuite\results.html
java -jar selenium-server-standalone-2.24.1.jar -port 4545 -userExtensions user-extensions.js -htmlsuite *firefox http://localhost:8080 testSuite\tests.html testSuite\results.html
java -jar selenium-server-standalone-2.24.1.jar -port 4545 -userExtensions user-extensions.js -htmlsuite *firefox http://localhost:8080/ TestSuite\tests.html results\results.html
java -jar selenium-server-standalone-2.24.1.jar -userExtensions user-extensions.js -port 4545 -htmlsuite *chrome "http://localhost:8080/" TestSuite\tests.html results\results.html

起初只有前两个命令正常工作,另外两个命令失败,但正如我所说,当我试图找到失败的原因时,他们就开始工作了。现在所有这些都完美地执行 我对这个答案一点也不满意,但至少它现在有效: - /

答案 1 :(得分:1)

从过去开始:

当它打开并挂起时,按Ctrl-Shift-J并查看其中的内容。对我来说,这是我的user-extensions.js文件中的一个问题,但对你来说可能有所不同。