Railsã§Javascript/CoffeeScriptããã¹ãããã¨ãã®æ±ºå®çï¼ã«ãããï¼ï¼Konacha
ã¨ããããã§Konachaã§ããhttps://github.com/jfirebaugh/konacha
ãªã«ãããç²è¶ï¼
Javascriptã®ãã¹ãã£ã³ã°ãã¬ã¼ã ã¯ã¼ã¯ã¨ãã¦ã¯JasmineããMochaããããã¡ã¸ã£ã¼ã©ããã®ããã ãã©ãã»ããã¢ãããé£ããã£ãããã¦ãããã ï¼ãã¨ãããã®ããªãã£ããå人çã«ã¯ã
ã§ãä»åããã¼ãããç¶ããCoffeeScriptæ¸ãã¡ãããã¼ï¼ã¨ããã¿ã¤ãã³ã°ã«ããã£ã¦ãããä¸åããããæ¢ãã¦ã¿ãã¨ããããããä¸çªã¹ã¸ãããã£ã½ãã£ãã
Konachaã¯Railsã§Mochaã¨chaiã使ããããããGemããããMochaã¨chaiã¯ä½¿ã£ããã¨ãªãã£ããã©ãå
¬å¼ã5ç§ã»ã©ã¿ãã¨ãããnodeã§ãããrspecã©ã¤ã¯ãªãã¹ãã£ã³ã°ãã¬ã¼ã ã¯ã¼ã¯ã¨ãããã¨ã§Jasmineã¨ãã¨ããã¾ããããªãããããªããã¨æ¨æ¸¬ãchaiã¯ãããã£ã¼ã®ã©ã¤ãã©ãªã®ãããªã®ã¦Hamcrestã¿ãããªããããªã
ã¤ã³ã¹ãã¼ã«
group :test, :development do gem 'konacha' end
bundle installã§ãããã
ä½¿ãæ¹
ãã¹ããä½ã
- spec/javascriptsãã£ã¬ã¯ããªãä½ã
- ãã®ä¸ã«_specï¼ãããã¯_testï¼ãµãã£ãã¯ã¹ãã¤ããjs or CoffeeScriptãã¹ããã¡ã¤ã«ãä½ãã以ä¸ãããã§ã¯å
¨é¨CoffeeScriptã®ä¾ã§ãã
- ä¾ï¼
# hello_konacha_spec.js.coffee #= require application describe "HelloKonacha#sayHello", -> it "says 'Hello World!'", -> konacha = new HelloKonacha() konacha.sayHello().should.eql("Hello World!") # hello_konacha.js.coffee $ -> class window.HelloKonacha sayHello: () -> "Hello World!"
ãã®ã¨ãããRSpecã©ã¤ã¯ã«ãã¹ããæ¸ãããã¡ãªã¿ã«15åãããããã£ããã¤ã³ãããã£ã¦ãshouldã¨eqlã¯é¢ãã¡ãã ãã ããããããã§ã¤ãªãã£ã¦ããããRSpecã®å å ¥è¦³ã§é¢ãã¦æ¸ãã¦ã¦ããã¹ãéããªãã¦ç¦ã£ãããã
ãã¹ããåãã
- serverãèµ·åããæ¹æ³
- éçºä¸ã¯ãã®æ¹æ³ããªã¹ã¹ã¡
$ bundle exec rake konacha:serve Your tests are here: http://localhost:3500/ [2013-01-22 13:22:49] INFO WEBrick 1.3.1 [2013-01-22 13:22:49] INFO ruby 1.9.3 (2012-11-10) [x86_64-darwin12.2.1] [2013-01-22 13:22:49] INFO WEBrick::HTTPServer#start: pid=30777 port=3500
-
- ãã©ã¦ã¶ã§http://localhost:3500/ ã«ã¢ã¯ã»ã¹ããã¨ãã¹ããåãããªãã¼ãããã°åå®è¡ã
- http://localhost:3500/array_sum_specãã¨ããhttp://localhost:3500/modelsãã¨ãã¢ã¯ã»ã¹URLãå¤ããã¨ãé¨åçã«ãã¹ããå®è¡ã§ãã
- ãã¹ãã¯specãã¡ã¤ã«ãã¨ï¼ãã¶ãï¼ã«iframeå ã§åãã®ã§ãã¿ã°å ¨ä½ããã¹ãã«ä½¿ããã¨ãã§ãããã¿ã°è¦ç´ ã¯ãã¹ããã¨ã«ãªã»ãããããã
- javascriptã³ã³ã½ã¼ã«ã§ã³ã¼ããåããã¨ãã¯ã対象ã®iframeã鏿ããã®ãå¿ããªãããã«ãããã¨ã
- ããã®Runningã®ç« ãè¦ãã°ãã¶ãããããhttps://github.com/jfirebaugh/konacha
- ã³ãã³ãã©ã¤ã³ããèµ·åããæ¹æ³
$ bundle exec rake konacha:run
-
- ã¼ããã¨ãã®å ´åãFirefoxãå®éã«ç«ã¡ä¸ãã£ã¦ãããã¦èªåçã«çµäºãã¦ãã£ããã
- ãã©ã¦ã¶ããªããµã¼ãã§å®è¡ãããã©ããªããã ããï¼
- ãã®è¾ºã¯ä»åã¯å²æãJenkinsã«ã®ã£ããã¨ãã«èª¿ã¹ãã®ã§ã¾ã次åã
- ci_reporterã¨ãguard-konachaã¨ããããããããã©ä»ãã¨ãèå³ãªãã®ã§å²æã
ä»ã«ããã«ãã¼ã¨ããããã©ãä»åã¯ã³ã¬ã§çµããã
確ãã«ãã£ããåããã®ã§ãã¾ãã¯ãã¹ããæ¸ããã¨ã«æ
£ãã¦ã¿ããã¨æãã
追è¨ï¼ããã¹ã©ã¤ãè¦ã¤ããã
http://sssslide.com/www.slideshare.net/markykang/testing-javascriptcoffeescript-with-mocha-and-chai