我目前正在使用Selenium来测试我们的web应用程序的界面。然而,它不是很可靠(很难设置一个好的等待超时,在任何涉及框架的网页中处理起来绝对是一场噩梦),并且缺乏许多功能(弹出/下载)。
我看了一下http://sikuli.csail.mit.edu/,非常喜欢它,但它又不是很可靠,因为它经常无法识别正确的按钮/链接。
测试web应用程序的好方法是什么?
PS:我追求的是那些允许测试的代码,即使测试人员对代码的内部一无所知(甚至连方法签名都不知道)。
发布于 2010-01-22 17:07:06
不幸的是,UI测试通常不是很可靠。必须使用XPath,因为没有在页面上的元素上设置ID。不得不使用框架(我讨厌框架,很高兴它在HTML5中被弃用了)。
不幸的是,这是野兽的本性,我发现Selenium的一个主要问题是,人们从Selenium IDE开始,它试图记录您所做的一切,但它只能做这么多事情,从而使测试不可靠。Selenium是我在浏览器中首选的UI测试工具。
记录/重放工具应该被称为记录/调整/重放,这样它就可以正确地处理测试。
为Selenium RC或WebDriver编写测试(它们目前正在合并以创建Selenium 2)允许您处理您可能在Selenium IDE中看到的问题。它使你可以使用Java、Python、C#等编程语言来编写测试。因为你可以在你的测试中添加条件。
我让较少的技术人员使用Selenium的方法是创建一个供他们使用的DSL,以便在编写测试时使其成为一种更自然的语言。
发布于 2010-01-30 13:49:57
看看Sahi吧。
在过去的一年里,Sahi已经发布了七个公共版本,论坛上的支持很迅速。
免责声明:我是Sahi的作者。
发布于 2010-02-02 15:13:22
不是使用selenium.waitForPageToLoad("30000");,而是像这样使用
超时(
selenium.waitForPageToLoad);
并且不要忘记使用settimeout选项设置超时
超时(
selenium.setTimeout);
我也面临着与超时相同的问题。设置超时后,一切运行正常。
https://stackoverflow.com/questions/2114548
复制相似问题