我在Firefox中使用Selenium 2.0 IDE来记录我的测试用例。我编写了一些支持JavaScript来帮助使程序更具动态性。
我遇到的问题是,每当我尝试在测试....()部分中导出到C#或Java Webdriver代码时,它都无法识别我的JavaScript函数。在生成的Webdriver代码中,它有一个注释行,类似于
//错误:捕获异常[未知命令[navigateDashboard]]
所以我想我的第一个问题是,如果有JavaScript,甚至可以将Selenium IDE测试用例导出到Webdriver代码,第二个问题是如何,那么如何?
谢谢,我到处寻找答案,但似乎无法找到确认这一点。
编辑(回应arran): 在IDE中,我有一个这样的命令:
navigateDischarges | |
“navigateDischarges”是一个JavaScript函数:
Selenium.prototype.doNavigateDashboard = function() {
this.browserbot.openLocation(this.getURL(dashboard)) ;
}
Selenium.prototype.getURL = function(input) {
return (prefix + input);
}
我知道这是一个简单的例子,但我希望用它来做更高级的事情。
答案 0 :(得分:2)
虽然doNavigateDashboard
Javascript函数在Selenium IDE中有效,但我编写的WebDriver导出器不知道如何将navigateDischarges
命令导出到另一种语言,因为很明显,该命令不存在于该语言的WebDriver库。
请记住,WebDriver不支持用户扩展。因此,您需要找到一种方法,以您选择的语言对函数进行编码(在本例中为c#)。完成后,您可以导出测试用例并手动添加对函数的调用。有时格式化程序中的“显示Selenese”选项很有用。