2009年4月13日星期一

[PerlChina] Re: 关于Perl下进行JavaScript的测试

我们要做的基本上就是页面基本功能的测试,还没有到考虑浏览器兼容性问题的时候。

看了上面的回复,Win32::IE::Mechanize用过,不太适合。

WWW::Selenium刚刚安装上了,还没有尝试,浏览了一下文档,按我理解,Selenium大概就是一个服务,帮你在本机上代替IE之类的浏览
器来帮你解析HTML+Javascript,不知道对不对?

对Firefox倒是很感兴趣,但是插件技术从来没接触过,怎么开头啊?


On 4月14日, 上午10时05分, agentzh <agen...@gmail.com> wrote:
> 2009/4/14 skier.tp <skier2...@gmail.com>
>
> > 公司最近要对公司产品中的webserver进行测试,因为会有大量的页面待测试,所以想用脚本进行部分的自动化,但是昨天看了下公司
> > 软件部门写的Html页面,大量使用了JavaScript来生成,就给解析带来了很大的困难,不知道这种时候怎么办才好啊?
>
> 我自己一直对此领域非常感兴趣,呵呵。几年前最早试过 Win32::IE::Mechanize 模块来自动化 Qzone
> 网站,但这个模块经常会有一些很诡异的不靠谱的时候。而后又为 Zorpia 网站基于 WWW::Selenium 和 Selenium IDE
> 做过自动化测试,但总是有随机的失败,且 Selenium RC 服务器至少在 ubuntu 上很不好装:
>
> http://blog.agentzh.org/#post-50
>
> 后来到 Yahoo 之后,我琢磨了 Firefox 插件技术很长时间,Firefox 的特权 JS 可以很可靠地自动化 AJAX 网站(比如在我的
> SearchAll 插件中就能轻松地自动化我们大量 JS 实现的易搜)。我也曾自动化校内里的纯 AJAX 组件:
>
> http://blog.agentzh.org/#post-91
>
> 不过这里主要都是 JS 编程了,不算 Perl 下的(当然,制做插件时若使用我的 XUL::App 框架,则除了写 JS 之外,就是写一些 Perl
> 了,呵呵)。
>
> 与此同时,我又启动了 ajaxperl 项目,致力于将 HTML::DOM 模块和 JavaScript::SpiderMonkey 模块结合为一个支持
> ajax 的 perl (信末有我回复 perl-javascr...@perl.org 邮件)。但这个项目眼下太不成熟了,呵呵,我后来也一直没得空继续
> :P
>
> 由于最近一个月,我们一直在玩 qt-webkit,我倒觉得这个更有前途一些,也更容易暴露到 perl 代码级别上。事实上,CPAN 上已经有
> webkit 的其他 port 的相关模块了:
>
> http://search.cpan.org/search?query=WebKit&mode=all
>
> 不过值得提醒的是,Wx 和 KDE port 的开发远不及 Mac 和 Qt port 活跃,毕竟后者都是有像 Apple, Nokia
> 这样的大公司的全职程序员支持的,呵呵 :)
>
> 等我忙过眼下的 webkit cluster 和 xhunter 浏览器之后,我会尝试基于 qt-webkit 为我的纯 JS 的博客(http://blog.agentzh.org)编写一个测试集 ;) 有兴趣的朋友欢迎跟我一起玩儿,呵呵
>
> 当然了,上面主要致力于网站根本的功能逻辑的测试,但如果要考虑浏览器兼容性问题,那就更复杂了,呵呵。
>
> 祝好运 :)
>
> Cheers,
> -agentzh
>
> ---------- Forwarded message ----------
> From: agentzh <agen...@gmail.com>
> Date: Fri, Feb 27, 2009 at 11:14 AM
> Subject: Re: Access from perl to a JavaScript function result
> To: Amel Kapetanovic <a.kapetano...@hispeed.ch>
>
> Cc: perl-javascr...@perl.org
>
> On Tue, Feb 24, 2009 at 3:46 AM, Amel Kapetanovic
> <a.kapetano...@hispeed.ch> wrote:
>
> > Hi,
>
> > I am trying to access from perl to HTML documents (LWP),
>
> I was doing an experimental project named ajaxperl using
> JavaScript::SpiderMonkey and HTML::DOM:
>
> http://svn.openfoundry.org/ajaxperl/trunk/
>
> It looks like a good start and tests were already passing. Note that
> you need HTML::DOM 0.005 here:
>
> http://backpan.perl.org/authors/id/S/SP/SPROUT/HTML-DOM-0.005.tar.gz
>
> Later versions won't fly because its API has changed significantly and
> I haven't had to tuits to update my ajaxperl yet.
>
> > and I want to
> > get the result of some JavaScript functions, which are in the HTML page,
> > simply like
>
> > document.write('hello');
>
> Happily this test case is included in its test suite (in JavaScript):
>
> http://svn.openfoundry.org/ajaxperl/trunk/test.t
>
> > Could someone please help me?
>
> Hope this helps ;) In case that you need a commit bit to ajaxperl,
> please let me know ;)
>
> Perl really needs something that can be as mature as Java's HtmlUnit
> which is based on Rhino :) Full-featured browsers in Perl is always a
> buzzword ;)
>
> Cheers,
> -agentzh
>
> P.S. Sorry for the delay. I was experiencing serious issues with Gmail-- :(
--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛"PerlChina Mongers 讨论组"论坛。
要在此论坛发帖,请发电子邮件到 perlchina@googlegroups.com
要退订此论坛,请发邮件至 perlchina+unsubscribe@googlegroups.com
更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛
-~----------~----~----~----~------~----~------~--~---

没有评论: