TDD---测试驱动开发,简单的一点认识
TDD,就是 Test Driven Development(测试驱动开发)一个牛人说了:“什么是TDD?TDD就是把你的需求用测试给描述出来。”我现在工作的这个公司还没有用到这个技术,测试驱动开发,开发人员认为可笑,项目经理认为没必要,部门经理认为自己的需求都没做好,还用不着这么搞。一个成功的项目,或者说让用户和该项目的工作人员觉得舒心的项目,它必定有一个很好很好的需求,我想,那份需求一定很直白,很明了,很清晰,很细致,很有指导性,让任何一个人看了之后立刻就在脑海中浮想联翩,马上就可以知道这个产品是什么样子,有什么功能,每个功
Rails的Application模板中获取当前控制器的名字
方法如下:<%=@controller.controller_name%>[@more@]
Rails--方法间通过session传递参数
def plan_member session[:member]=params[:member]||session[:member] if session[:member] mid||=session[:member] @member||=Member.find(mid) @plan_member_page,@plan_member=paginate(:Plan,:conditions=>["member_id=?",mid],:order_by=>:id) else flash[:error]="请选择人员." redirect_to :action=> "show_member" end end这段代码很重要,告诉我们方法间的临时参数可以保存在session中,但的确浪费![@more@]
Rails的模板
一般来说layout有如下五种: gobal layout,controller layout,shared layout,dynamic layout,action layout假设我们有一个views/projects/index.rhtml页面: 代码<h2>Projects</h2> <ul> <% for project in @projects %> <li><%= project.name %></li> <% end %> </ul> 下面来看看各种layout的用法。 1,global layout 添加views/layouts/application.rhtml: 代码<h1>Application Layout!</h1> <%= yield %> 在layouts目录下添加application.rhtml
Rails中Ajax的四个标签
link_to_remoteform_remote_tagobserve_fieldperiodically_call_remote[@more@]
Rails-找不到外键的原因(严肃的错误)
class Scenario < ActiveRecord::Basehas_one :Planendclass Plan < ActiveRecord::Basebelongs_to :Scenarioend一对一的关系,数据库表名是正确的(事后证明),View和Controller中的代码也是正确的,问题在哪里?在Model中has_one和belongs_to后面的标号,这个标号不是类名而是表名的单数形式 ,表名是小写的(mysql中),所以标号也要小写,所以上面是错的!PS:Rails中有这么一个问题就是Model类如果是Scenario,那么它认为表名应该是Scenarios而不是Scenarioes。[@more@]
Rails的select_tag
<% form_tag :action => 'create' do %><select name="post[category_id]"> <% @post_categories.each do |c| %> <option value="<%=c.id%>"><%=c.name%></option> <% end %> </select> <%= submit_tag "Create" %><% end %>[@more@]
Rails分页
@page_scenario,@scenario=paginate(:Scenario,:per_page=>perpage,:order_by=>"id")@page_scenario保存了paginate相关的信息,@scenario保存了这一页的model实例,本例中model类是通过:Scenaro指定的,perpage是一页中显示的个数。在View视图文件中,分页表格附近某个位置加上这句<%= pagination_links(@page_scenario) %>[@more@]
ActiveRecord笔记【z】
find()方法1、:all找出所有符合条件的记录2、:first找出符合条件的一条记录,不一定是应用程序创建的第一条记录3、:conditions指定SQL语句中的where子句的查询条件,其值可以是一个SQL字符串;也可以是一个数组,其中包含带有占位符的SQL语句,以及各个占位符实际的值。如:orders=Orders.find(:all,:conditions=> "name='Dave'") #值为SQL字符串name=params[:name]orders=Orders.find(:all,:conditions=> ["name=?",name]) #值为数组,?是占位符,name是占位符的实际值orders=Orders.find(:all,:conditions
LoadRunner Proxy
LR中设置代理的方法如下:web_set_proxy("bkj-station4.jaring.my:80");[@more@]
Rails中文化不需要瞎折腾
环境:Rails 1.2.5ruby 1.8.5 (2006-08-25) [i386-mswin32]MySQL:mysql> status--------------mysql Ver 14.12 Distrib 5.0.27, for Win32 (ia32)Connection id: 13Current database: Current user: root@localhostSSL: Not in useUsing delimiter: ;Server version: 5.0.27-community-ntProtocol version: 10Connection: localhost via TCP/IPServer characterset: utf8Db characterset: utf8Client characterset: utf8Conn. characterset: utf8TCP port: 3306Uptime: 23 min 37 secThreads: 3 Questions: 242 Slow
mysql备份
mysqldump -u[user] -p[password] [databasename] > [dump_name] 在将 dump_name 这个档案复制到另一台计算机上 另一台计算机上先进入mysql 建立一个 database 再执行下列指令 mysql -u[user] -p[password] [database_name] < [dump_name][@more@]
text_field用法
text_field(object_name, method, options = {}) object_name是model名 method传递你要显示的字段就可以了 options 和html下的名字形同 rails会自动为该text增加默认值。 text_field( "post ", "title ", "size " = > 20) = <input type= "text " id= "post_title " name= "post[title] " size= "20 " value= "#{@post.title} " / >[@more@]
Rails中删除数据对象
<%= link_to 'Destroy', { :action => 'destroy', :id => feature }, :confirm => '请确认是否删除', :post => true %>[@more@]
SQL语句基础学习之Alter Table [记不住呀呵呵]
在表格被建立在资料库中后,我们常常会发现,这个表格的结构需要有所改变。常见的改变如下:加一个栏位 删去一个栏位 改变栏位名称 改变栏位的资料种类 以上列出的改变并不是所有可能的改变。ALTER TABLE 也可以被用来作其他的改变,例如改变主键定义。ALTER TABLE 的语法如下:ALTER TABLE "table_name"[改变方式][改变方式] 的详细写法会依我们想要达到的目标而有所不同。再以上列出的改变中,[改变方式] 如下:加一个栏位: ADD "栏位 1" "栏位 1 资料种类" 删去一个栏位: DROP "栏位 1" 改变栏
Selenium视频操作演示
下面的链接是SeleniumIDE的一个视频操作演示,感觉Selenium还需要大力发展,IDE录制的脚本到了RC中怎么就无法执行?希望有同好之人能一起讨论讨论哪里出了问题。http://wiki.openqa.org/download/attachments/400/Selenium+IDE.swf?version=1[@more@]
Ruby----RMagick安装报错
报错是什么什么Error我忘记了排错的方法是gem update --system原因是gem版本太旧之后再进入RMagick的下载目录运行gem install rmagick --local[@more@]
loadruner参数化的记载[转]
loadruner参数化的记载关键词: loadruner参数化的记载 1、 说明书中loadruner参数化的记载 update value on each iteration(迭代或者循环) :运行时,在每一次的循环中都取相同的值。 实践一(与定义的相反),对所有用户第一次执行迭代时取第一个值,第二次执行迭代时取第二个值........一直下去,比喻:一个参数的值为,kim,david,michael......,第一个循环时,取kim,第二次循环时,取david........ ,单次迭代时都是一个值; each occurrence (出现):运行时,每遇到一个
关于性能测试的一般性分类[Z]
关于性能测试的一般性分类作者:杨博日期:2007-3-31约束:文档数据为举例数据,实际项目数据需要按实际需求设计性能测试一般情况下性能测试是指被测试系统在特定硬件,软件,网络环境条件下,在系统允许的负载情况下,通过不同数量的v user所需要的总体时间。例如:系统允许的最大负载为320 v user.可以测试的v user数据为: [@more@] 特定用户量时 总体与平均响应时间。1 . 50 v user, total time, average response time.2 .100 v user, total time, average response time.3 .200 v user, total time,
Loadrunner学习笔记之ip欺骗[Z]
ip欺骗设置:1.在总控机上使用loadrunner->tools->ip wizard工具设置虚拟ip,其中server ip指要监控的服务器的ip,添加ip时选择A、B或C类ip,设置开始ip和要添加的虚拟ip的个数,并选中verify the new ip addresses are not already use,已检查添加的ip是否与局域网中的其它ip冲突2.重启机器3.在controller的scenario中勾选enable ip spoofer,启用虚拟ip3.在controller的tools中选中expert mode,在options->general中设置multiple ip address mode与run-time settings中的multithreading设置保持一致4.在load generators中选择