Rails3中的性能分析方法

(转帖请注明出处: http://taobaotest.ruoguschool.com/blogs/2064) 性能分析是Web应用开发中非常重要的一个环节,相比访问缓慢的站点,访问快速的站点拥有更好的用户体验,帮助用户节省更多时间,带来更多的用户访问。 作为当前十分流行的Web框架,rubyonrails当然也提供很多方式进行性能分析。 几种常见的方式 Rails日志文件 Rails日志文件中,清晰的打印出了总时间,以及MVC各层消耗的时间,这为性能瓶颈分析提供了最直接的数据。例如,从下面的日志可以看出DB:1.2ms,View: 4.3ms,总时间:13ms Started GET "/issues/attachments/86674" for 10.13.46.33 at 2012-0... 详情

搭建rubygem repository server

(转帖请注明 taobaotest.com) 这不是一个新鲜话题,已经有博文讲过用IIS搭建gem server,但我想讲个简单的办法,以及怎样使用nginx来搞 做rails开发通常需要gem install xxx/bundle install安装依赖的gems,我们通常访问这两个gem server: http://rubygems.org - ruby官方的gem server http://gems.github.com - github上托管的gem,包含很多第三方的gem,通常比rubygems.org上的还要多。 最近国外网络访问老是不正常,安装gem包相当痛苦。昨晚尝试搭建搭建自己的gem server,解决团队成员安装gem的问题,有两... 详情

每周分享-ruby下的COM自动化介绍与应用

Microsoft提供com方式进行自动化交互。 COM自动化也称ole自动化。ruby从1.8.0以后,提供了win32ole这个扩展类供自动化使用,从而可以非常方便的使用该扩展进行自动化的操作。 1. 标准的用法,相信大家也比较熟悉的: require 'win32ole' application = WIN32OLE.new('Excel.Application') application.visible = TRUE workbook = application.Workbooks.Add(); worksheet = workbook.Worksheets(1); worksheet.Range('A1:D1').value = ['North','South','E... 详情

Ruby中如何调用IE

Watir版本更新比较频繁,有时大版本更新时,框架结构都会发生变化,曾经出现过安装新版Watir后,以前写的测试代码很多测试程序无法执行。平时工作中写一些小脚本时,决定用Ruby直接调用IE。 Ruby调用IE其实可以通过Win32OLE的实现: require 'win32ole' ie = WIN32OLE.new('InternetExplorer.Application') 启动IE后,可以设置IE的属性,并进行相关操作: ie.visible = true ie.navigate('http://www.taobao.com') 除了navigate,还有很多methods,打印出来看一下: # 以下代码为了获得ie所有的方法,:) methods = ie.... 详情

每周分享之Automan页面拾取功能的实现

目的: PageModel的建立规则是Automan界面自动化的必修课。包括selector的填写,collection和submodel的选择。PageModel给大家提供了相当程度的灵活性来适应丰富多变的页面。 我写过一篇关于如何建好PageModel的文章,真正好的PageModel是没有固定招式可循的。但对于简单页面的非submodel&非collection元素(如搜索页面的搜索文本输入框和搜索按钮),我们还是可以找到一定的规律的。本文总结了简单selector的拼装规律,并介绍如何使用js结合ruby命令,来实现页面拾取的功能。末尾还介绍了后续可能的扩展方向,及如何自主扩展,教大家打造自己的拾取功能。 简单Selector的拼装过程分解: 例子一: http://... 详情

使用Hudson持续集成Ruby页面自动化测试脚本

前言 众所周知,Hudson一直以来都被认为是JAVA平台最流行,使用得最广泛的开源持续集成系统了,它以其人性化的界面功能,丰富的插件,高度的可扩展性,强大的分布式构建能力赢得了广泛称赞。 然而,正是因为Hudson在JAVA业界优秀表现,使得国内很少有人对它在其他语言领域的表现有所了解。其实Hudson本质上只是一个CI(continuous-integration)系统,通过其丰富的插件和高度的扩展能力,它同样可以在其他众多的语言领域有着优异的表现,昨天正好为我们组的Ruby页面自动化测试脚本搭建了Hudson的持续集成环境,所以这里就简单谈一下我是如何做到的 搭建Hudson的windows client 要做Ruby页面自动化的测试,目前的解决方案是使用开源框架——Watir... 详情

ruby脚本:新手上路

  最近在写脚本时,碰到几个问题,后在同事的帮助下解决了,现罗列出来,大家以后碰到了类似问题可以参考下。    1. 校验文本t**8,用check_text()或check_result()方法报错  原因:校验文本中含有限定字符*    解决办法:首先获取要校验的本文txt;再使用check_value_equ(t**8,txt)     2. 用checkbox(sym_type,sym_name)定位checkbox,再用getAttribute("checked")获取属性,看是否默选中,使用getAttribute(“”)报错     原因:前面定位checkbox是用pwatir方法,后面getAttribute()是dom方法,不兼容     解决办法:... 详情

ruby初学笔记

       随着ruby自动化测试在公司的推广,我们社区线也完成了部分的回归脚本。好多童鞋去阿软做新江湖了,师傅也去做性能测试了,帮派的日常暂时由我负责。帮派业务在做日常的同时也更加熟悉了,我开始思考向ruby进军。 在ruby学习的过程中,遇到了许多问题。入门,是从人手一篇的ruby.pdf文档着手。看了这篇文档,脑袋还是没有什么概念。看了ruby框架,搭建好环境后,看CCTest上别人写的ruby脚本。宝驹把一些类、方法封装起来了,由于对内部结构不了解,只是知道简单的调用一些公用函数就实现了。这对于熟悉ruby操作的人来说,是可以提升编写脚本的速度。但对于我们初学者来说,就感觉很迷茫。现在分享下我一步步成长过程中遇到的困惑:          1、 http://wiki.ope... 详情

eval 的用法——任芳 士忠

任芳问: require "watir" @window = Watir::IE.attach(:url,/www.google.cn/) ele = "@window.text_field(:name=>'q')" eval(ele).set("qqqqqqqqqqqqqq")   -------------------------------------------------------------- require "watir" @window = Watir::IE.attach(:url,/www.google.cn/) ele = "#{@window}.text_field(:name=>'q')" eval(ele).set("qqqqqqqqqq... 详情

ruby语言中代码块作为方法的参数使用

Ruby方法可以接受代码块作为参数是一种非常灵活的用法,也是一种非常优秀的设计思路。假设有如下图1所示的3个方法:                                                        图1 从图1中可以看出,方法A、方法B和方法C大量的代码块都是完全相同的。那么是不是需要定义3个方法?是不是还有更好的做法? 在软件开发领域,有一条重要的DRY规则:不要重复。在图1的3个方法中,可发现它们包含了大量的重复代码,为此,将上面3个方法合并成一个方法,而3个方法中特定的代码块则作为参数传入,这种做法如图2所示。                                                                   ... 详情

返回首页 博客 技术交流 产品 期刊下载 关于我们 意见反馈 无障碍

浙ICP备09109183号-14 Copyright © 2003-2015 TaobaoTesting.com 版权所有