Web应用的集成测试
我想对一个网页应用进行全面的集成测试。我想测试很多东西,比如AJAX、某些短语和HTML元素的位置和存在情况,还想用几个不同的浏览器来测试。我在寻找一个可以进行这种自动化测试的工具。
另一方面,这是我第一次进行集成测试。在进行这种测试时,有没有什么特别的建议?有没有相关的教程呢?
(顺便说一下:我的后台代码是用Perl、Python和Django写的。)
谢谢!
9 个回答
6
在这篇文章中,Noah Gift很好地介绍了三种主要的网页应用集成测试工具:Windmill、Selenium和Twill。Twill不支持Javascript,所以主要的选择就剩下Selenium和Windmill了。Gift对这两者的使用做了足够的说明,帮助你做出选择。
不过,Gift没有提到的是,Selenium的受欢迎程度要高得多。如果你只是简单地在网上搜索“windmill”和“selenium”,可能看不出来这一点,因为每个词的搜索结果数量不同,可能会出现一些误导性的结果。[windmill javascript]的搜索结果有32.5万,而[selenium javascript]的搜索结果有120万,这个比例更能反映实际情况。总之,如果你觉得这两者在使用上都差不多、功能也足够强大,以至于难以选择的话,选择Selenium(也就是跟大多数人走)可能会有一些好处,比如周围有更多的专家可以帮助你解答问题,这比选择相对不那么受欢迎的工具要好。
12
Selenium
是一个很不错的工具。如果你想用 Perl 来使用它,可以使用 Test::WWW::Selenium
这个 CPAN 模块。
这里有一个来自它的文档的 示例:
use WWW::Selenium;
my $sel = WWW::Selenium->new( host => "localhost",
port => 4444,
browser => "*iexplore",
browser_url => "http://www.google.com",
);
$sel->start;
$sel->open("http://www.google.com");
$sel->type("q", "hello world");
$sel->click("btnG");
$sel->wait_for_page_to_load(5000);
print $sel->get_title;
$sel->stop;
还有一些额外的链接,可能会对你有帮助:
/I3az/