第17åãªãã¡ã¯ã¿ãªã³ã°ãã©ãã¾ã§ãããâ â ããã¤ãããã åç°å人 2007-12-25
11æ4æ¥ã«å ¥ç¤¾ãã¾ããã¨ã³ã¸ãã¢ã®è¶å·ã§ãã æ¬æ¥ã¯ãç§ãã³ã¼ããæ¸ãéã«æ°ãã¤ãã¦ãããã¨ãæ¸ããã¨æã£ãã®ã§ãããã©ãæ¸ããã«è¿·ã£ãæ«ãããã°è¨äºé§åããã«ã½ã³ãè¡ããã¨ã§ãã®ããã»ã¹ã§èããããã¨ãªã©ãè¨äºã«ãããã¨ã«ãã¾ããã ç§ã¯ã³ã¼ããæ¸ãéã«ããã¦ãªãã®å¿ã大äºã ã¨æã£ã¦ãã¾ããããã¦ãªãã®å¿ã¯æçµçãªã¢ã¦ããããã«è§¦ããã¦ã¼ã¶ã¼ã¯ãã¡ããã®ãã¨ããã¼ã ã¡ã³ãã¼ãæªæ¥ã®èªèº«ã¸åããæãããã§ãã ä»å顿ã¨ããã®ã¯ãKPTãã¼ã«ã§ããKPTã¯ãæ¥ã ã®æ´»åãæ¯ãè¿ããKeepããã¹ããã¨ãProblemãã§ãããã¨ãTryãããããã¨ãä¸ãã¦ãæ´»åãæ¯ãè¿ãããã«ä½¿ããã¾ãã å æ¥è¡ãããããªã¬ãã¡ãç®æãâæå¼·ã®ã¨ã³ã¸ãã¢ããªãã³âããçµããå¾ã«æ¯ãè¿ãã§KPT使ã£ãã®ã§ããããWebã¢ããªã«ãã¦ã¿ã¾ãã ä»åã®ã³ã¼ãã¯ãã¹ã¦ãppworks/furikaeri/tree/
æè¡é¨ã®ç¦æ£®ã§ãã ã¯ãã¯ãããã§ã¯ RSpec 㨠Jenkins ãå©ç¨ã㦠CI ã«ããèªåãã¹ããè¡ãªã£ã¦ãã¾ãã ãã¹ãã®æ°ã¯ 12000 examples ãè¶ãã¦ãã¦ããã¹ãã«ãã£ã¦ã¯ç¨ã«å¤±æããç©ãåºã¦ãã¦ãã¾ã: æé帯ä¾åã§å¤±æãã¦ãã¾ããã® ä»ã«åæã«å®è¡ããããã¹ãã«ä¾åãã¦ãããã® (並åå®è¡ã§çµåããå¤ããåç¾ãã) ã¤ã³ãã°ã¬ã¼ã·ã§ã³ãã¹ãã§ã® ajax ãªã¯ã¨ã¹ãã®å¾®å¦ãªã¿ã¤ã ã¢ã¦ã etc ã¾ããæ¬çªç°å¢ãå£ããªãããã CI ã§æåãããªãã¸ã§ã³ã®ã¿ãããã¤å¯è½ã¨ãªã£ã¦ãããéçºè ã push ããããã¤ãããã¨æã£ã¦ããæã«ç¡é¢ä¿ãªåå ã§å¤±æããäºãé¿ãããã¨ããæ¬²æ±ãããã¾ãã ãªããªããå度ãã«ããå®è¡ããæé (ããã 10 å) ã®éå¾ ããããäºã«ãªãããã§ãã ããã§ããã®ãããªãã¹ãèµ·å ã§ã®å¤±æãæ¸ããããã¤éçºè ã«ããããä¿®æ£ãã¦ãããã
2014-10-17 TDDã諦ãããã¨ã¨ãRSpecããããã㨠Ruby on Rails Ruby RSpec éçºææ³ æè¿Webä¸ã§ãä»äºå ´ã§ããRSpecãããã¦å¥ã®ãã¹ããã¬ã¼ã ã¯ã¼ã¯ã«å¤ãããã¨æã£ã¦ããâ¦â¦ã¿ãããªè©±ãã¡ããã¡ããè¦èãããããã«ãªã£ããåãRuby on Railsã§éçºãå§ãã2012å¹´8æå½æããã§ã«RSpecã¯ãã¹ããã¬ã¼ã ã¯ã¼ã¯ã®ããã¡ã¯ãã¨è¨ã£ã¦ããã£ãã䏿ã風é¡ããRSpecãããªãä»è¦ç´ããå§ãã¦ããã®ãã ãã£ããã«ãªã£ãã®ã¯ä»å¹´4æã®ãRailsä½è ã§ããDavid Heinemeier Hansson(以ä¸DHH)ã«ããTDD is deadçºè¨ã ã¨æãã 5æã«ã¯ãã®çºè¨ã«ããTDDã¸ã®é¢¨è©è¢«å®³ãéãè¦ãKent Beck*1ããã¬ããªã¼ã«Martin Fowler*2ãè¿ããDHHã¨ç¸å¯¾ããããªã¼ã ããããéå¬ãããããã®ä¼è«ã®
æè¿ã® RSpec ã¯ãããã¾ã§ obj.stub(hoge: value) ã¨æ¸ãããã®ãã allow(obj).to receive(:hoge).and_return value ã¨æ¸ããªãã¨ãããªããªã£ããã¨ããæ£æ°ã®æ²æ±°ã¨ã¯æããªããããªå¤æ´ããããããã®ã§ãä½å¹´ãã¶ãã« Test::Unit ã使ã£ã¦ã¿ããã¨ãªãããªä¸ã§ãã RSpec ã¯ããã¹ãã±ã¼ã¹ãå ¥ãåã«ã§ãããããã¹ãã±ã¼ã¹ã example ãã¯ã©ã¹ãã¡ã½ããã§ã¯ãªããæååã§èªç±ã«æ¸ããã¨ãã§ãããããã®ãè¯ãã£ãã®ã§ãããæè¿ã® Test::Unit ã§ã¯ãããã§ããããã«ãªã£ã¦ãã¾ãã [ruby-list:48926] [ANN] test-unit 2.5.2 ãã®ãªãªã¼ã¹ã¯ã¨ã¿ãããã«ä½¿ã£ã¦ããããããã«æ¹è¯ãããªãªã¼ ã¹ã§ããæ°ãã追å ãã--locationã¯RSpecã®--line_number
忣ãã¹ãå®è¡ã·ã¹ãã RRRSpecããªãªã¼ã¹ãã¾ãã | ã¯ãã¯ãããéçºè ããã° å ¬éãããããããåå¿ããã£ã¦å¬ããã®ã ããã©ããã¡ãã£ã¨è£è¶³ãããã¨ããããã£ãããæ§ã ãªäºæ ã«ãã仿¸ãã¦ãã¾ãã®ã妥å½ãªã®ã§ãåäººã®æ¥è¨ã§ãã¨ã ã£ã½ãè£è¶³ããã åå RRRSpecã§ãã¨ãã·ããã¼ãããºã£ããã ãã·ã³ã®ã¹ã±ã¼ãªã³ã°ã«ã¤ã㦠ããªãã¨ãçè«ãã£ã¦æ¸ãã¦ããããå®éã®ã¨ãããããæ´»ç¨ãã¦ããããã§ã¯å ¨ããªããå°éã®äººãããããå°å¦çã§ãããã¨è¨ãããã¬ãã«ãªã®ã§ããæãã¨ãã¦å¤§å¦ã®å¦é¨çãæé¤ã§å¦ã¶ã¬ãã«ã¨ããå½¢ã«ãªã£ã¦ããã ãã ãããããã¹ã±ã¼ãªã³ã°ã«é¢ä¿ããã¨ããã§ãåæ©çãªæ¹æ³ã§ã¯ãã£ã¦ã"It works"ãªçµæãå¾ããã¦ããã®ã§ãåã¦ã°å®è»ãåãã°æ£ç¾©ãªã¨ããã¯ãããå®éããªã¼ã¯ã·ã§ã³ã®å¤æ®µã決ããã®ã«ãããããã§å ¥æããã®ãããããã¾ã§ã ã£ããå¤ä¸ãããã®ããè½æã§ããª
ããã³ã¾ãã¯ãRuby ã«é¢ããæè¡è¨äºã¯ãã¡ããã®ãã¨ãRubyist ã¸ã®ã¤ã³ã¿ãã¥ã¼ãã¨ãã»ã¤ããã®ä»ããå±ãããã¦ã§ãéèªã§ãã Rubyist Magazine ã«ã¤ã㦠ãRubyist Magazineããç¥ãã¦ããã³ã¾ãã¯ãæ¥æ¬ Ruby ã®ä¼ã®æå¿ã«ãã Rubyist ã® Rubyist ã«ãããRubyist ã¨ããã§ãªã人ã®ããã®ã¦ã§ãéèªã§ãã ææ°å· Rubyist Magazine 0058 å· ããã¯ãã³ãã¼ Rubyist Magazine 0058 å· RubyKaigi 2018 ç´åç¹éå· Rubyist Magazine 0057 å· RubyKaigi 2017 ç´åç¹éå· Rubyist Magazine 0056 å· Rubyist Magazine 0055 å· Rubyist Magazine 0054 å· æ±äº¬ Ruby ä¼è° 11 ç´
Railsã¸ã®å ¥å£ ⢠rvmã§é©å½ã«gemsetãä½ããrailsãã¤ã³ã¹ ãã¼ã« ⢠rails new appname -T -m <template gist> --skip-bundle ⢠bundle install --path vendor/bundle 2012å¹´5æ16æ¥æ°´ææ¥ ãã¹ãã®æºå ⢠bundle exec rails g rspec:install ⢠bundle exec guard init rspec (guard- rspec) ⢠bundle exec guard init spork (guard- spork) ⢠guard 'rspec', :version => 2, :cli => "-- format d --color --drb", :all_on_start => false, :all_after_pass => fa
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}