user_pref(
“extensions.yslow.optinBeacon”, true);
配置本地
YSlow
打开
Firefox 输入:about:config(我保证会很小心的)filter 中输入:yslow 修改以下三条
数据
extensions.yslow.beaconUrl = http://localhost/showslow/beacon/yslow/
如果测试和服务器不在同一机器上,请将
localhost 改成实际地址
extensions.yslow.beaconInfo = grade
extensions.yslow.optinBeacon = true
重启
Firefox,have fun :)
还 等 什 么
? 开 始 你 的 测 试 之 旅 吧 , 查 看 测 试 报 告 的 URL 是 :
http://localhost/showslow/
在这个地方遇到了一个问题就是所有配置都是正确的情况下,
ShowSlow 依然接收
不到
YSlow 发送的测试数据,后来在 RedHat 的服务器上搭建环境同样遇到了这个问题,
经过
SA 白非童鞋的帮助查看 Apache 的报错日志(/var/log/apache2 /error.log)发现罪魁祸首是
脚本中需要的几个模块必须是
PHP5.2 以上的版本,遂升级 PHP 至最新版本可解决问题。
test_harness.pl
这个脚本是用
Perl 语言写的,我也是刚接触这个语言,但是我还是推荐各位童鞋
看看他的文件结构,老外写的代码阅读起来还是比较舒服,附带着大量注释方便我这样的
小白也能轻松理解每个函数的意义。我们主要需要用到的是
display,profile,source 这三个
属性
(具体作用 ReadMe 有解释),可以参考下我运行这个脚本的方式:
perl test_harness.pl -display=:1 -source http://localhost/URLs -profile
/home/eric/FFProfiles
Can
’t locate POE.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.10.1
/usr/local/share/perl/5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10
/usr/local/lib/site_perl .) at test_harness.pl line 100.
BEGIN failed-compilation aborted at test_harness.pl line 100.
这个问题纠结了我好几天,百思不得其解,关键还是我第一次使用
Linux 和
Perl,对于很多报错信息都可以熟视无睹(请鄙视我),最后请教了 Sergey 童鞋,才恍然大悟
原来是没有安装
POE(请再次鄙视我),解决办法参考如下:
sudo perl -MCPAN -e shell (sudo 很关键啊,内牛满面)
cpan> install POE
如果提示
YAML 没有安装 (类似于 XML 的数据描述语言)
cpan>install YAML
cpan> exit
这个时候自动化脚本已经开始运行了,我们可以通过外部机器访问虚拟机搭建的
ShowSlow 查看测试结果 (Ubuntu 使用 ifconfig 查看本机 IP 地址,注意虚拟机网卡要设置成
Bridged 方式)
monitor.sh
自动调用之前编写
test_harness.pl 脚本,当我们将调用 test_harness 的一些参数添
加进
monitor 后使用 Linux 的 Cron 就可以实现自动化测试了:)
注意将脚本文件夹的绝对路径赋值给
Xvfb_PIDFILE,因为每次执行的时候系统会
自动生成一个
__xvfb.pid
2010-7-1 日更新
在
Ubuntu 和 RedHat 环境搭建下的 Showslow 平台点击测试 URL 进入 Detail Page