读书人

迅捷开发流程

发布时间: 2012-12-24 10:43:14 作者: rapoo

敏捷开发流程

即fill_in方法会自动去找页面中用户名对应的输入框,并且将值输入,

#单独运行feature中的某个scenariocucumber --language zh-CN features/manage_calling_events.feature -s 更新来电#查看test日志,以便跟踪测试过程出现的问题tail -f log/test.log
编写Rspec单元测试代码
#生成实体script/generate rspec_model event phone:string timing:datetime#打开event_spec.rb编写测试代码#测试的一般内容为:#测试是否能够正常保存(加感叹号表示出现错误时抛异常)Event.create!(@valid_attributes)#测试记录数变化情况lambda do  Call.create!(@valid_attributes)end.should change(Case, :count).by(1)#测试数据的准备,所有实体都有对应的fixture,文件名如cases.ymlnoise:  content: 楼下太吵了#在rspec中调用测试记录#先在describe Call do下一行定义fixtures :cases #之后就可以这样调用了cases(:noise)
验收测试

安装selenium firefox插件
安装rselenese格式

#rselenese格式安装详细说明#在firefox菜单中打开[Tools]-[Selenium IDE]#在Selenium IDE菜单中打开[Options]-[Options...]-[Formats]#点击左下角的[Add]#在Name of the format:中输入rsel#将下载的rselenese.js的内容粘贴到文本框中#点击右下角的[OK]按钮保存,退出
#每次手动测试时,都打开firefox菜单Tools=>Selenium IDE#录制测试脚本后,以rsel格式保存至spec/selenium/中的某个子目录(如admin)#运行以下语句,系统打开浏览器,自动运行测试脚本mongrel_rails start -e test -drake test:acceptance#注意,如果测试过程需要修改程序代码,则修改后要重启服务器,修改rsel除外mongrel_rails restart
代码覆盖率应经常查看测试代码的覆盖情况
#安装rcovsudo gem install spicycode-rcov --no-ri --no-rdoc#运行rspec rakerake spec:rcov#查看报告firefox coverage/index.html#之后就补充测试代码了
常用测试策略
    数据库记录正常保存,则记录数会加1
结对编程

利用ssh,screen,vim实现结对编程

#screen配置文件,以支持256colorwget http://saberma.github.com/file/dot/screenrc -O ~/.screenrc#安装autossh,避免ssh闲时等待过长自动断开连接sudo apt-get install autossh#下载rscreen脚本,调用autossh登录后直接运行screenwget http://saberma.github.com/file/bin/rscreen -O /usr/local/bin/rscreensudo chmod a+x /usr/local/bin/rscreen#测试一下screen -xRvim#另开一个terminalrscreen localhost#会看到两个terminal显示相同vim
其他

在测试用例,单元测试都通过,而手动测试出现错误的时候,一定不能直接修正
应该先补充测试,让测试失败,再修正问题

出现疑难问题时,为便于相互协作,可通过ssh远程连至问题机后直接操作

#问题机安装ssh服务sudo apt-get install openssh-server#其他机连接问题机(ip为191,用户名为saberma)ssh 192.168.1.191 -l saberma#输入密码
参考资料

Selenium Reference
Selectors

<script type="text/javascript"> var disqus_url = "http://saberma.me/rails/agile/2009/07/17/rails-agile.html"; var disqus_developer = 1;</script>

迅捷开发流程迅捷开发流程

读书人网 >软件开发

热点推荐