2010-12-05 [ĹǯÆüµ]
_ ºÇ¶á¤ÎJavaScript¤Î¥Æ¥¹¥Æ¥£¥ó¥°¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤Ë¤Ä¤¤¤ÆÄ´¤Ù¤Æ¤ß¤¿
¤¢¤ë¤¤¤Ï kanazawa.js v0.0.1 ÊÙ¶¯²ñ : ATND ¤Ë»²²Ã¤·¤Æ¤¤¿¡£
º£²ó¤Ï¤È¤ê¤¢¤¨¤ºº£ÃíÌܤ·¤Æ¤¤¤ë JavaScript ¥Æ¥¹¥Æ¥£¥ó¥°¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤Î¾Ò²ð¤È¤¤¤¦¤«¥ê¥ó¥¯½¸¤á¤À¤±¡£
¤Þ¤È¤á
- QUnit ¤È Jasmine ¤Ë¤Ä¤¤¤ÆÄ´¤Ù¤¿¤è¡ª
- ¹¥¤¤Ë»È¤Ã¤Æ¡ª Jasmine ¤Î»È¤¤Êý¤Ï¤Þ¤À½ñ¤¯¤³¤È¤¢¤ë¤ó¤À¤±¤ÉÈè¤ì¤¿¤«¤é¤Þ¤¿º£Å٤͡ª
½ñ¤¤¤¿¤è¡ª Jasmine¤ò¤â¤¦¾¯¤·¾Ü¤·¤¯¾Ò²ð¤·¤Æ¤ß¤ë ¤âÆÉ¤ó¤Ç¤ß¤Æ¡ª
¼«Ê¬¤ÎÇØ·Ê
JsUnit ¤ò»È¤Ã¤ÆÃ浬ÌϤʥ³¡¼¥É¤ò½ñ¤¤¤¿·Ð¸³¤¬¤¢¤ë¡£ÉáÃÊ¤Ï PHP + SimpleTest ¤Ç³µ¤Í TDD ¤Ç½ñ¤¤¤Æ¤¤¤ë¡£Ruby ¤Ï¤Þ¤À Test::Unit ¤ò»È¤Ã¤Æ¤¤¤ë¡£RSpec ¤Ë°Ü¹Ô¤·¤¿¤¤¤È»×¤¤¤Ê¤¬¤é¥¿¥¤¥ß¥ó¥°¤ò¤Ä¤«¤ß¤½¤³¤Í¤Æ¤¤¤ë¡£
¥Æ¥¹¥Æ¥£¥ó¥°¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤Ë¤Ç¤¤ë¤³¤È
- ¤Þ¤º¸¶Â§¤Ï JS ¤Î¤ß¤Î¥æ¥Ë¥Ã¥È¥Æ¥¹¥È
¤³¤ì¤ò¥æ¥Ë¥Ã¥È¥Æ¥¹¥È¤È¸Æ¤Ö¤« TDD ¤È¸Æ¤Ö¤« BDD ¤È¸Æ¤Ö¤«¤ÏÇØ·Ê¤Îʸ²½¤Ë¤è¤ë¤¬¡¢¾¯¤Ê¤¯¤È¤â¤Ç¤¤ë¤³¤È¤Ë¤â¤Î¤¹¤´¤¯Â礤ʺ¹¤¬¤¢¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¤È¹Í¤¨¤Æ¤ª¤¤¤Æ´Ö°ã¤¤¤Ê¤¤¡£
DOM ¤òÁàºî¤¹¤ë¤â¤Î¤Ë¤Ä¤¤¤Æ¤Ï JS ¥³¡¼¥É¤ò¸Æ¤Ó½Ð¤¹ HTML ¤ËÂФ·¤ÆÁàºî¤ò²Ã¤¨¡¢·ë²Ì¤ò¥Æ¥¹¥È¤¹¤ë¤Î¤¬´ðËܤˤʤ롣¡Ê¤Ï¤º¡£¡Ë
¤Þ¤¿¥µ¡¼¥Ð¥µ¥¤¥É¤Îưºî¤È¤Ï´ðËÜŪ¤ËÀÚ¤êÎ¥¤·¤Æ¹Í¤¨¤Æ¤ª¤¯¡£¥µ¡¼¥Ð¤¬ÀÅŪ¤Ê HTML ¤·¤«ÊÖ¤µ¤Ê¤¤¤Ê¤é¤½¤ì¤ò¥Æ¥¹¥È¥³¡¼¥É¤ËÍ¿¤¨¤ì¤Ð¤è¤¤¤·¡¢Ajax Âбþ¤Ïº£¤Þ¤µ¤Ë¥Æ¥¹¥Æ¥£¥ó¥°¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤¬¤·¤Î¤®¤òºï¤Ã¤ÆÂбþ¤ò¿Ê¤á¤è¤¦¤È¤·¤Æ¤¤¤ë²ÝÂê¤Î¤è¤¦¤À¡£¤â¤¦¾¯¤·ÂԤơ£
º£²ó¤Î2¤Ä¤Ë¶¦Ä̤¹¤ë¤³¤È
- ¸Å¤¤ xUnit ·Ï¤è¤ê¤â¼«Í³¤Ë̾Á°ÉÕ¤±¤Ç¤¤ë
xUnit ·Ï¤ÎΨľ¤Ê¼ÂÁõ¤Ï´ðËÜŪ¤Ë¥Æ¥¹¥È̾¤Ï¥á¥½¥Ã¥É̾¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¡£¤·¤¿¤¬¤Ã¤Æ¥Æ¥¹¥È¤Î°Õ¿Þ¤òµ½Ò¤·¤Ë¤¯¤¤¤³¤È¤¬¤¢¤ë¡£º£²ó¾Ò²ð¤¹¤ë2¤Ä¤Ë¤Ï¤½¤¦¤¤¤¦À©¸Â¤Ï¤Ê¤¤¡£
QUnit
¸Ä¿ÍŪ¤Ê°õ¾Ý¤Ï schwern/test-more - GitHub ¤È¤¤¤¦¤« Blog | New testing framework | symfony | Web PHP Framework ¤Î¤è¤¦¤Ê´¶¤¸¡£Íפ¹¤ë¤ËÈæ³ÓŪ¥·¥ó¥×¥ë¤Ë¥Æ¥¹¥È¤ò½ñ¤±¤ë¤â¤Î¡£
¤È¤¤¤¦¤è¤ê¶²¤é¤¯¤¤¤Á¤Ð¤ó¥¦¥±¤Æ¤¤¤ë¤Î¤Ï
½àÈ÷¤¬³Ú
¤Ã¤Æ¤³¤È¤À¤È»×¤¦¡£´ðËÜŪ¤Ë¤Ï qunit.js ¤È qunit.css ¤È¤½¤ì¤òÆÉ¤ß¹þ¤à HTML ¤µ¤¨¤¢¤ì¤Ð¥Æ¥¹¥È¤ò½ñ¤¯¤³¤È¤¬¤Ç¤¤ë¡£
´ðËÜŪ¤Ê»È¤¤Êý
ºÇ¤â´ðËÜŪ¤Ê»È¤¤Êý¤Ï°Ê²¼¤Î¤è¤¦¤Ê HTML ¤òÍѰդ·¤Æ¥Ö¥é¥¦¥¶¤ÇÆÉ¤ß¹þ¤à¡£
¤³¤ì¤Ï http://docs.jquery.com/QUnit ¤Ë¤¢¤ë¥Ç¥â¤«¤é jQuery °Í¸¤ÎÉôʬ¤ò½ü¤¤¤¿¤â¤Î¡£¤ä¤Ã¤Æ¤ß¤ì¤Ðʬ¤«¤ë¤±¤ÉÉáÄÌ¤Ë jQuery ̵´Ø·¸¤Ëư¤¯¡£*1
»²¹Í
Jasmine
¸Ä¿ÍŪ¤Ë¤Ï¤³¤Ã¤Á¤¬ËÜÌ¿¡£ÌÀ³Î¤Ë RSpec-inspired.
Jasmine: BDD for Javascript | Jasmine
Pivotal Labs ¤¬¥á¥ó¥Æ¥Ê¥ó¥¹¤ò¤·¤Æ¤¤¤ë¡£¼Â¤Ï¤³¤ì¤¹¤´¤¯½ÅÍס£¤Ê¤¼¤Ê¤é JsUnit ¤â pivotal/js-spec-server - GitHub ¤â´Ø·¸¤·¤Æ¤¤¤ë Pivotal Labs ¤¬¤¢¤¨¤Æ¿·¤·¤¤ JavaScript Testing Framework ¤òºî¤Ã¤Æ¤¤¤ë¤Î¤À¡£¤³¤ì¤¬Îɤ¯¤Ê¤¯¤Æ°ìÂβ¿¤¬Îɤ¤¤Î¤À¡£
¤Þ¤¿¡¢relevance/blue-ridge - GitHub ¤È¤¤¤¦¤«¤Ê¤êµ¤¹ç¤¤¤ÎÆþ¤Ã¤¿ Framework ¤âº£¤Ï¡Ö¤â¤¦¤ä¤é¤Ê¤¤¤«¤é Jasmine »È¤¨¡×¤Ã¤Æ¸À¤Ã¤Æ¤ë¤¯¤é¤¤¤Ê¤ó¤À¤«¤é¡¢ËÜÌ¿Ãæ¤ÎËÜÌ¿¤È¸À¤Ã¤Æ¤¤¤¤¤È»×¤¦¡£
Pivotal Labs ¤Î̾Á°¤ò°Õ¼±¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¤Î¤ÏEϤµ¤ó¤ÎÃæ¤Çή¹Ô¤Ã¤Æ¤¤¤ë¤È¤¤¤¦Ïäòʹ¤¤¤Æ¤«¤é¤À¤±¤É¡¢jsUnit ¼«ÂΤϰÊÁ°¤«¤éÃΤäƤ¤¤¿¤Î¤Ç¡¢¤³¤ì¤ÏÀµÄ¾´üÂÔ¤·¤Á¤ã¤¦¤Ã¤Æ¤â¤ó¤À¡£
related projects ¤Ê¤É¤Ï¤Þ¤À¥¢¥Ã¥Á¥Ã¥Á¤«¤â¤·¤ì¤Ê¤¤¡£¤Ç¤â¤³¤ì¤Ï·ë¹½´üÂԤǤ¤½¤¦¡£
Jasmine ¤Ç fixture
velesin/jasmine-jquery - GitHub
¤ò»È¤¦¤È³ä¤ÈÁÇľ¤ËÌÜŪ¤òãÀ®¤Ç¤¤ë¡£jasmine-jquery ¤È¤¤¤¦Ì¾Á°¤À¤¬ÊÌ¤Ë jquery ¤ò»È¤¦É¬ÍפϤʤ¤¡£
Ʊ¤¸¤è¤¦¤ÊÌÜŪ¤Ç jeffwatkins/jasmine-dom - GitHub ¤È¤¤¤¦¤â¤Î¤â¤¢¤ë¤Î¤À¤¬¡¢¤É¤¦¤â fixture ¼þ¤ê¤Îư¤¤¬ÊÑ¡£¥³¡¼¥É¼«ÂΤϤâ¤Î¤¹¤´¤¯¹ó»÷¤·¤Æ¤ë¤ó¤À¤±¤É¡¢¤Ê¤ó¤«ÊÑ¡£
Jasmine ¤Ç Ajax
¤È¤¤¤¦¥×¥í¥¸¥§¥¯¥È¤¬¤¢¤ë¤ó¤À¤±¤É¡¢¤Þ¤À¤¢¤Þ¤êÆüËܸì¤ÇÏäòʹ¤«¤Ê¤¤¡£º£¤ä¤Ã¤¿¤éÆüËܿͤÎÃæ¤Ç¤Ï¥ê¡¼¥É¤Ç¤¤ë¤«¤â¡£
headless
headless ¤Ã¤Æ¤¤¤¦¤Î¤Ï GUI-less ¤Î¤³¤È¤À¤È»×¤Ã¤Æ¤ë¤ó¤À¤±¤É¡¢¤³¤Î¼è¤êÁȤߤϤ¤¤¯¤Ä¤«¤¢¤ë¡£
- jeremylightsmith/class.TDD-in-javascript-with-headless-jasmine - GitHub
- injest - Project Hosting on Google Code
¤³¤ì¤â¤Þ¤À¤¢¤Þ¤êÏäòʹ¤«¤Ê¤¤¡£
»²¹Í
- FFTT : Jasmine¤Ç¥Æ¥¹¥Æ¥£¥ó¥°
- ÆüËÜRubyKaigi2010 3ÆüÌÜ - ¤Þ¤Á¤å¥À¥¤¥¢¥ê¡¼(2010-08-29)
- HTML fixtures in Jasmine (using jasmine-jquery) « Test Driven Websites (TDD and BDD in RoR and JS)
- Related Projects | Jasmine
*1 ¤¿¤À¤·¥³¡¼¥É¤òÄɤ¦¤ÈÃæ¤Ë¤Ï¤Þ¤À jQuery ¤ò¸Æ¤Ó½Ð¤·¤Æ¤¤¤ëÉôʬ¤¬¤¢¤ë¤Î¤Ç´°Á´¤Ë jQuery ¤¬¤Ê¤¯¤Æ¤â¤è¤¤¤ï¤±¤Ç¤Ï¤Ê¤¤¤Ã¤Ý¤¤¡£
2010-12-06 [ĹǯÆüµ]
_ ¤¤¤¤»Å»ö¤·¤¿¤¤¤¸¤ã¤ó
²þ¤á¤Æ»×¤Ã¤¿ 2 + 1 ¤Î¤³¤È
ºÇ¶á¡¢¿Í¤ËÏ乤³¤È¤Ç²þ¤á¤Æ¼«Ê¬¤Î»×¤¤¤Ëµ¤¤Å¤¤¤¿¤³¤È¤¬Æó¤Ä¤¢¤ë¡£
- ¤¤¤¤»Å»ö¤ò¤·¤¿¤¤
- Ãæ¾®´ë¶È¤Ë¤Ï»þ´Ö¤â¿Í¼ê¤â;͵¤Ï¤Ê¤¤
·Ú¤¯·¡¤ê²¼¤²¤Æ½ñ¤»Ä¤·¤Æ¤ª¤¤¿¤¤¡£¤½¤·¤Æ½ñ¤¤¤Æ¤¤¤ëÅÓÃæ¤Ç½Ð¤Æ¤¤¿¤Î¤¬
- Ï·³²¤Ë¤Ê¤ê¤¿¤¯¤Ê¤¤
¤Ç¤¢¤ë¡£¤³¤ì¤â»Ä¤·¤Æ¤ª¤³¤¦¡£¤¤¤Ä¤«¿¶¤êÊ֤俤Ȥ¤Ë¤¤¤í¤¤¤í»×¤¨¤ë¤«¤â¤·¤ì¤Ê¤¤¡£
¤¤¤¤»Å»ö¤·¤¿¤¤¤¸¤ã¤ó
¡Ö¤¤¤¤»Å»ö¡×¤È¤¤¤¦¸ÀÍդϤ¤¤í¤¤¤í¤Ê°ÕÌ£¤ò´Þ¤à¡£¿Í¤Ë¤è¤Ã¤ÆÄêµÁ¤¬ÊѤï¤Ã¤Æ¤·¤Þ¤¦Û£Ëæ¤Ê¸ÀÍդȤâ¸À¤¨¤ë¤±¤É¡¢¤³¤³¤Ç¤Ï¤È¤ê¤¢¤¨¤ºÛ£Ëæ¤Ê¤Þ¤Þ¹Ô¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¤¤ó¤¸¤ã¤Ê¤¤¤«¤È´¶¤¸¤Æ¤¤¤ë¡£¥¨¥ó¥¸¥Ë¥¢¤Ë¤Ï¥¨¥ó¥¸¥Ë¥¢¤Î¡¢±Ä¶È¤Ë¤Ï±Ä¶È¤Î¡¢²ñ·×¤Ë¤Ï²ñ·×¤Î¤¤¤¤»Å»ö¤¬¤¢¤ë¤Ï¤º¤À¡£¤½¤ì¤Ç¤¤¤¤¤È»×¤¦¡£
ÀµÄ¾¤Ê¤È¤³¤í¼«Ê¬¤Ï²¿¤â¤·¤Ê¤¯¤Æ¤¤¤¤¤Ê¤é²¿¤â¤·¤¿¤¯¤Ê¤¤¿Í´Ö¤À¡£¹¥¤¤Ê¤³¤È¤À¤±¥À¥é¥À¥é¤Ç¤¤ë¤Ê¤é¤³¤ó¤ÊÁÇÀ²¤é¤·¤¤¤³¤È¤Ï¤Ê¤¤¤È»×¤¦¤·¡¢¤½¤ì¤Ç¤â¶²¤é¤¯¥Ò¥Þ¤Çº¤¤Ã¤Á¤ã¤¦¤è¤¦¤Ê¥¿¥¤¥×¤Ç¤Ï¤Ê¤¤¤È»×¤Ã¤Æ¤¤¤ë¡£
¤È¤³¤í¤¬»Äǰ¤Ê¤¬¤é¸½¼Â¤Ï¤½¤¦´Å¤¯¤Ê¤¤¡£»Å»ö¤·¤Ê¤¤¤ÈÀ¸¤¤Æ¤¤¤±¤Ê¤¤¡£¼Ò²ñ¤¬Êú¤¨¤ë¤¢¤Þ¤ê¤ËÂ礤ÊÉéºÄ¤Ë¤Ä¤¤¤Æ¡Ö¤Ê¤ó¤Ç¤³¤ó¤Ê¥¢¥Û¤ÊÏäФ䫤ʤó¤À¡×¤È»×¤¦¤³¤È¤Ï¿¤¤¤±¤ì¤É¡¢¤Ò¤È¤Þ¤º¤½¤ì¤òÃÖ¤¤¤ÆÌܤÎÁ°¤ÎÌäÂê¤ËÂн褷¤Ê¤±¤ì¤Ð¤¤¤±¤Ê¤¤¡£¤Ä¤Þ¤ê»Å»ö¤¹¤ë¤Î¤À¡£
¤É¤¦¤»¤ä¤ê³¤±¤Ê¤¯¤Á¤ã¤¤¤±¤Ê¤¤¤Î¤Ê¤é¤Ð¡Ö¤¤¤¤»Å»ö¡×¤ò¤·¤¿¤¤¤È¼«Ê¬¤Ï»×¤¦¥¿¥¤¥×¤Ç¤¢¤ë¡£¥¢¥¸¥ã¥¤¥ëŪ¤Ë¤Ï¡Ö¤ªµÒÍͤÎËþ¡פȸÀ¤¦¤Î¤¬¤³¤³¤Ï¤«¤Ã¤³¤¤¤¤¤È¤³¤í¤Ê¤ó¤À¤±¤É¡¢¤¢¤Þ¤ê°ì¤Ä¤Î¸ÀÍÕ¤ÇÃÖ¤´¹¤¨¤Æ¤·¤Þ¤¤¤¿¤¯¤Ï¤Ê¤¤¡£¾Íè¤Î¼«Ê¬¤¬³«È¯¤·¤Æ¤¤¤ë¤È¤â¸Â¤é¤Ê¤¤¡£
Ãæ¾®´ë¶È¤Ë¤Ï»þ´Ö¤â¿Í¼ê¤â;͵¤Ï¤Ê¤¤
¤³¤ì¤ÏÂ礤ʲñ¼Ò¤Ç¤âÆÃ¤Ë¿¿ÌÌÌܤ˹ñÆâ¥È¥Ã¥×¥ì¥Ù¥ë¡¢¤¢¤ë¤¤¤ÏÀ¤³¦¥ì¥Ù¥ë¤Ç¡Ö¶¥Áè¡×¤·¤Æ¤¤¤ë¤È¤³¤í¤âƱ¤¸¤«¤â¤·¤ì¤Ê¤¤¡£Íפ¹¤ë¤Ë
;¤Ã¤Æ¤¤¤ë¤â¤Î¤Ê¤ó¤«²¿¤â¤Ê¤¤
¤Î¤À¡£¤À¤«¤é¡ÖËÜÅö¤ËɬÍפʤΡ©¡×¤Èµ¿Ìä¤Ë´¶¤¸¤ë¤è¤¦¤Ê»Å»ö¤Ï¤É¤ó¤É¤ó¸«Ä¾¤µ¤Ê¤¯¤Á¤ã¤¤¤±¤Ê¤¤¡£
Î㤨¤Ð IT ¤ÎÀ¤³¦¤Ç¤è¤¯Ê¹¤¯¤Î¤Ï
- ¤Î¤Á¤Ë¤Á¤ã¤ó¤È¿¶¤êÊÖ¤ê¤â¤·¤Ê¤¤¤Î¤ËÂçÎ̤˽ñ¤«¤µ¤ì¤ë¸À¤¤Ìõʸ½ñ
- ¥á¥ó¥Æ¥Ê¥ó¥¹À¡¢¸¡º÷À¤Î°¤¤ Excel »ÅÍͽñ
- ½Å¤¹¤®¤Æ¤Þ¤È¤â¤Ëºî¶È¤Ç¤¤Ê¤¤ Excel ¤Î¥Ð¥°É¼
- »ÅÍͽñ¤È¹ç¤Ã¤Æ¤Ê¤¤¥³¡¼¥É
- ¹ó»÷¤·¤Æ¤¤¤ë¤Î¤ËÈù̯¤Ë°ã¤¦ÂçÎ̤Υ³¥Ô¥Ú¥³¡¼¥É
- °Õ¿Þ¤òÅÁ¤¨¤ºÆ°ºî¤À¤±¤òÀâÌÀ¤¹¤ë¡Ö°ÕÌ£¤Î¤Ê¤¤ÂçÎ̤Υ³¥á¥ó¥È¡×
- ºî¶È¸úΨ¤òÃø¤·¤¯Íî¤È¤¹¡Ö¥³¥á¥ó¥È¥¢¥¦¥È¤µ¤ì¤¿Á°¥Ð¡¼¥¸¥ç¥ó¡×
¤³¤ì¤é¤Ï¤¹¤Ù¤Æ¸½¼Â¤Ë¤è¤¯¤¢¤ëÏÃ*1¡£¤³¤³¤Çµó¤²¤¿¤Î¤ÏÂç¤Þ¤«¤Ë
- ̵Â̤Êʸ½ñ¡¢ÌµÂ̤ʥ³¡¼¥É
- ºî¶È¸úΨ¤Î°¤¤Ê¸½ñ¥Õ¥©¡¼¥Þ¥Ã¥È¡¢ºî¶È¸úΨ¤Î°¤¤¥³¡¼¥É¡ÊÆÉ¤ß¤Ë¤¯¤¤¥³¡¼¥É¡Ë
¤Ë½¸Ì󤵤ì¤ë¡£
¤Ä¤Þ¤êÆü¡¹¤ÎÀ¸»ºÀ¤ò³Î¼Â¤ËÍî¤È¤¹¤â¤Î¤¿¤Á¤À¡£¤È¤¤¤¦¤³¤È¤ÏÁ´Éô¸«Ä¾¤·¤ÎÂоݤǤ¢¤ë¡£¸«Ä¾¤µ¤Ê¤¤¤È¡¢ËÜÍèãÀ®¤¹¤Ù¤¡Ö²ÁÃ͡פǤϤʤ¯¡Öºî¶È¡×¤Ë¼«Ê¬¤Î¡Ö¼ê¡×¤È¡Ö°Õ¼±¡×¤òÃ¥¤ï¤ì¤Æ¤·¤Þ¤¦¡£
¤·¤«¤·¤³¤³¤ÇÌäÂê¤Ë¤Ê¤ë¤Î¤¬Â¿Áز¼ÀÁ¤±¹½Â¤¡£¸µÀÁ¤±¤Ê¤éʸ½ñ¡¢¥³¡¼¥É¤Î¥ë¡¼¥ë¤Ï¼«Í³¤ËÀßÄê¤Ç¤¤ë¤¬¡¢²¼ÀÁ¤±¤Î¾ì¹ç¤Ï¤½¤¦¤â¤¤¤«¤Ê¤¤¤³¤È¤â¤è¤¯¤¢¤ë¡£¹¬¤¤¼«Ê¬¤Ï¤½¤¦¤¤¤¦´Ä¶¤Ë¤Ï¤Ê¤¤¤Î¤Ç¡¢Ä¾¤»¤ë¤È¤³¤í¤Ïľ¤·¤Æ¤¤¤«¤Ê¤¤¤È
¶¥ÁèÎϤò¼º¤Ã¤ÆÂà¾ì¤µ¤»¤é¤ì¤Æ¤·¤Þ¤¦¡£
¤½¤ì¤¬²æ¡¹¤ÎÀ¸¤¤ëÀ¤³¦¤Ê¤Î¤À¡£
Ï·³²¤Ë¤Ï¤Ê¤ê¤¿¤¯¤Ê¤¤
¤¢¤ì¡¢»°¤ÄÌܤ¬¤Ç¤Æ¤¤Æ¤·¤Þ¤Ã¤¿¡£
½ñ¤¤¤Æ¤ë¤¦¤Á¤ËºÆ³Îǧ¤Ç¤¤¿¤³¤È¤¬¤â¤¦°ì¤Ä¤¢¤Ã¤¿¡£¼«Ê¬¤Ï
Ï·³²¤Ë¤Ï¤Ê¤ê¤¿¤¯¤Ê¤¤
¤ó¤À¤Ê¤È¶¯¤¯»×¤Ã¤¿¡£
¾å¤Ëµó¤²¤¿ÌäÂê¤Ï´ðËÜŪ¤Ë
²áµî¤òƧ½±¤·¤Æ¤¤¤ë¤À¤±¤Îºî¶È¤¬¿·¤¿¤Ê²ÁÃͤÎÁϤ¤òÁ˳²¤·¤Æ¤¤¤ë
¤È¸À¤¨¤ë¤È»×¤¦¡£¤Ä¤Þ¤ê¤«¤Ä¤Æ¤Ï¤½¤ì¤¬ºÇÁ±¤È»×¤ï¤ì¤¿¤Î¤Ç¤½¤¦¤Ê¤Ã¤¿¤Î¤À¡£Â¿¾¯¹¥°ÕŪ²ò¼á¤ò¿¤á¤Ë²Ã¤¨¤ëɬÍפϤ¢¤ë¤¬¡£¤·¤«¤·º£¤Ï¤è¤êŬÀÚ¤ÊÆ»¶ñ¤òŬÀڤ˻Ȥ¤¤µ¤¨¤¹¤ì¤Ð¤â¤Ã¤ÈÎɤ¤ºî¶È¤ËÊѤ¨¤ë¤³¤È¤¬¤Ç¤¤ë¡£¾¯¤Ê¤¯¤È¤â
- ¸½ÂåŪ¤Ê¥Ð¡¼¥¸¥ç¥ó´ÉÍý¥·¥¹¥Æ¥à
- ¸½ÂåŪ¤Ê Issue Tracking System
¤òÀµ¤·¤¯±¿ÍѤ¹¤ì¤Ð¡¢¾å¤ÎÌäÂê¤Î¿¤¯¤Ï²ò¾Ã¤Ç¤¤ë¡£¤â¤Á¤í¤óƳÆþ¤·¤¿¤À¤±¤Ç¤¹¤Ù¤Æ²ò·è¤¹¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤*2¤¬¡¢¾¯¤Ê¤¯¤È¤â¥ë¡¼¥Á¥ó¥ï¡¼¥¯¤Î¥³¥¹¥È¤ò²¼¤²¤ë½àÈ÷¤Ï¤Ç¤¤ë¡£
¤À¤«¤é¤³¤ÎÆó¤Ä¤ÏºÇÄã¸ÂãÀ®¤·¤Ê¤±¤ì¤Ð¤¤¤±¤Ê¤¤¡£
¤·¤«¤·¤½¤³¤ÇÉâ¾å¤·¤Æ¤¯¤ë¤Î¤¬
¶µ°é¡¿³Ø½¬¥³¥¹¥È
¤ÎÌäÂê¤Ç¤¢¤ë¡£
¤³¤³¤Ï»Äǰ¤Ê¤¬¤é¼º¤¦¤â¤Î¤Î¿¤¤¥Ù¥Æ¥é¥ó¤ÎÄñ¹³¤¬¶¯¤¤¡£Ç¯¤ò¼è¤ì¤Ð¼è¤ë¤Û¤É¿·¤·¤¤¤â¤Î¤Î½¬ÆÀ¤Ï²¯¹å¤Ë¤Ê¤ë¤·¡¢¥è¡¼¥¤¥É¥ó¤ÇƱ»þ¤Ë³Ø½¬¤ò»Ï¤á¤¿¤é¼ã¤¤¤ä¤Ä¤Ë¤«¤Ê¤¦Ìõ¤¬¤Ê¤¤¡£µ¤»ý¤Á¤Ïʬ¤«¤é¤Ê¤¯¤Ï¤Ê¤¤¤¬¡¢¤â¤¦¤½¤Î¾õÂÖ¤ÏÏ·³²¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤È»×¤Ã¤¿Êý¤¬¤¤¤¤¡£
¼«Ê¬¤ò¿¶¤êÊ֤äơ¢¼«Ê¬¤Î¼þ¤ê¤Î¿Í´Ö¤ò´Ñ»¡¤·¤Æ»×¤¤Åö¤¿¤ë¤³¤È¤Ï¤Ê¤¤¤À¤í¤¦¤«¡£¤Ï¤Ã¤¤ê¸À¤Ã¤Æ¼«Ê¬¤Ç¿¨¤Ã¤Æ¤â¤¤¤Ê¤¤¤Î¤Ë¤·¤¿¤ê´é¤Ç¡û¡û¤ÎÈãɾ¤ò¤¹¤ë¤ä¤Ä¤ÏÏ·³²¤À¡£Ç¯Îð¤Ï´Ø·¸¤Ê¤¤¡£µ¤¤ò¤Ä¤±¤Æ³Ý¤«¤é¤Ê¤¤ã¤¤¤±¤Ê¤¤¡£¡û¡û¤Ë¤Ï²¿¤òÆþ¤ì¤Æ¤â¤¤¤¤¡£¤Á¤ç¤Ã¤ÈÁ°¤Ê¤é¥¹¥Þ¡¼¥È¥Õ¥©¥ó¤¬Æþ¤ë¤·¡¢¤È¤ê¤¢¤¨¤º¿·¤·¤á¤Î¤â¤Î¤òÆþ¤ì¤ì¤Ð¤À¤¤¤¿¤¤À®¤êΩ¤Ä¡£
¼«Ê¬¤Ïº£¤Á¤ç¤¦¤É¶Ìܤˤ¤¤ë¤È»×¤Ã¤Æ¤¤¤ë¡£º£¤Ï¤Þ¤ÀÏ·³²¤Ç¤Ï¤Ê¤¤¤¬¡¢¤Á¤ç¤Ã¤È³Ø¤Ö°ÕÍߤ¬Â¤ê¤Ê¤¯¤Ê¤Ã¤¿¤é¤¢¤Ã¤È¤¤¤¦´Ö¤ËÏ·³²¤Ë¤Ê¤ë´í¸±¤ò´¶¤¸¤Æ¤¤¤ë¡£³Ø¤Ö°ÕÍߤȤ¤¤¦¤Î¤Ï¸ÄÀ¤«¤â¤·¤ì¤Ê¤¤¤¬´Ä¶¤ÎÌäÂê¤â¤ä¤Ï¤êÂ礤¤¡£Ï·³²¤Ë¤Ê¤Ã¤¿Êý¤¬¤¤¤¤¤«¤â¤·¤ì¤Ê¤¤¤È´¶¤¸¤Æ¤·¤Þ¤¦¤è¤¦¤Ê¤é¡¢¡Ö¸«¼Î¤Æ¤ë¡×·ë²Ì¤Ë¤Ê¤ë¤È¤·¤Æ¤â¡¢´Ä¶¤òÊѤ¨¤¿Êý¤¬¤¤¤¤¤Î¤«¤â¤·¤ì¤Ê¤¤¤È¤â»×¤¦¡£
¤¢¤ë¤¤¤ÏÎ㤨¤Ð¿·¤·¤¤µ»½Ñ¤Ë¤Ä¤¤¤Æ¤ÎȽÃǤϤ·¤Ê¤¤¡¢¤¿¤À¤ÎÏ·¤È¤·¤ÆÀ¸¤¤ë¤«¡£º£¤Î¼«Ê¬¤Ï¤Þ¤ÀÏ·³²¤ËÊ¢¤òΩ¤Æ¤ë¦¤Î¿Í´Ö¤Ç¤¢¤ë¡£¤Ä¤â¤ê¤À¡£¤·¤«¤·¤¤¤Ä¤«Ï«³²¤Ë¤Ê¤êÆÀ¤ë¡£¤¤¤Ä¤«¥¹¥È¥Ã¥×¤ò³Ý¤±¤Æ¤·¤Þ¤¦Â¦¤Î¿Í´Ö¤Ë¤Ê¤ë¡£¤½¤Î¤È¤¤Ë¤Ï¤â¤¦¤½¤ÎȽÃǤò¤·¤Ê¤¤Î©¾ì¤Ë¤Ê¤é¤Ê¤±¤ì¤Ð¤¤¤±¤Ê¤¤¤Î¤Ç¤Ï¤Ê¤¤¤«¤È¤â»×¤Ã¤Æ¤¤¤ë¡£
2010-12-07 [ĹǯÆüµ]
_ Jasmine¤ò¤â¤¦¾¯¤·¾Ü¤·¤¯¾Ò²ð¤·¤Æ¤ß¤ë
Jasmine: BDD for Javascript | Jasmine
ÀèÆü¥×¥Ã¥·¥å¤·¤¿ Jasmine ¤Ë¤Ä¤¤¤Æ¤â¤¦¾¯¤··¡¤ê²¼¤²¤Æ¤¤¤¤Þ¤¹¡£¤¿¤À¤·¥Æ¥¹¥È¤Î½ñ¤Êý¤Ë¤Ä¤¤¤Æ¤Ï¿¨¤ì¤Þ¤»¤ó¡£¤½¤ì¤Ï¸ø¼°¤Î¾ðÊó¤ä¤¹¤Ç¤Ë¾Ü¤·¤¯¾Ò²ð¤µ¤ì¤Æ¤¤¤ëµ»ö¤¬¤¢¤ê¤Þ¤¹¡£
¤Þ¤È¤á
- Jasmine ¤Ï¸«¤¿ÌܤÀ¤±¤Ç¤Ê¤¯¹Í¤¨Êý¤â RSpec ¤Î±Æ¶Á¤ò¼õ¤±¤Æ¤¤¤ë¤è
- ¿¾¯±ó²ó¤ê¤Ç¤â rubygems ÈǤΠJasmine ¤ò»È¤¦¤È¥Æ¥¹¥È¤¬ËÜÅö¤Ë¼«Æ°²½¤Ç¤¤ë¤è
¤ï¤¶¤ï¤¶¥Ä¡¼¥ë¤ò»È¤Ã¤Æ¥Æ¥¹¥È¤·¤¿¤¤¤È¤¤¤¦¤³¤È¤Ï¤¢¤ëÄøÅÙ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤È¤·¤Æµ¬ÌϤ¬Â礤¤¤È¤«¡¢¥µ¥¤¥È¤È¤·¤Æµ¬ÌϤ¬Â礤¯ JavaScript ¤Î¿ô¤¬Â¿¤¯¤Ê¤Ã¤Æ¤¤¤ë¤Î¤Ç¡¢¿ÍÎÏ¥Á¥§¥Ã¥¯¤¬ÂçÊѤÀ¤È¤¤¤¦¤³¤È¤Ç¤Ï¤Ê¤¤¤Ç¤·¤ç¤¦¤«¡£
µ¬ÌϤ¬Â礤¯¤Ê¤Ã¤Æ¤¤¿¾ì¹ç¤Ï¡¢¤¢¤ëÄøÅÙºîË¡¡Ê¥ë¡¼¥ë¡Ë¤òÍѰդ·¤Æ¤½¤ì¤ò¼é¤ë¤³¤È¤¬°ÂÁ´¡¢°Â¿´¤Ê¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î³«È¯¡¢ºîÀ®¤Ë·ç¤«¤»¤Þ¤»¤ó¡£Jasmine ¤Ïñ¤Ë JavaScript ¤Ç JavaScript ¤Î¥Æ¥¹¥È¥³¡¼¥É¤¬½ñ¤±¤ë¤À¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤è¤êÎɤ¤ÇÛÃÖ¡¢¤è¤êÎɤ¤Ì¿Ì¾¤òÂ¥¤·¤Þ¤¹¡£
ÆÃħ
¸«¤¿ÌÜŪ¤Ë¤âÌÀ¤é¤«¤Ë RSpec ¤Î±Æ¶Á¤ò¼õ¤±¤Æ¤¤¤Þ¤¹¤¬¡¢¹½Â¤Åª¤Ë¤â¤¤¤ï¤æ¤ë¥Ø¥ë¥Ñ¡¼ÉÕ¤¥Æ¥¹¥Æ¥£¥ó¥°¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤Î¹Í¤¨Êý¤ò¼è¤êÆþ¤ì¤Æ¤¤¤Þ¤¹¡£¶ñÂÎŪ¤Ë²¿¤¬µ¯¤¤ë¤«¤È¤¤¤¦¤È¡¢
¥×¥í¥À¥¯¥È¥³¡¼¥É¤â¥Æ¥¹¥È¥³¡¼¥É¤â¤¤¤Ã¤Ú¤ó¤ËÆÉ¤ß¹þ¤â¤¦¤È¤·¤Þ¤¹¡£
µ¿ÌäÅÀ
¾å¤ÎÆÃħ¤òƧ¤Þ¤¨¤ë¤È°Ê²¼¤Î¤è¤¦¤Êµ¿Ì䤬ͯ¤¤¤Æ¤¤Þ¤¹¡£
- 1. HTML ¤ÎÃæ¤Î JavaScript ¤Ï¤É¤¦¤ä¤Ã¤Æ¥Æ¥¹¥È¤¹¤ë¤Î¡©
- 2. jQuery ¤Î¥Á¥å¡¼¥È¥ê¥¢¥ë¤Ê¤É¤Ë¤è¤¯¤¢¤ë
$(document).ready( function() {
...
});
¤Î¤è¤¦¤Ê¥³¡¼¥É¤Ï¤É¤¦¤ä¤Ã¤Æ¥Æ¥¹¥È¤¹¤ë¤Î¡©
- 3. Ê£¿ô¤Î JavaScript ¤ò¤¤¤Ã¤Ú¤ó¤ËÆÉ¤ß¹þ¤ó¤À¤é¾¤Î¥³¡¼¥É¤Ë±Æ¶Á½Ð¤¿¤ê¤·¤Ê¤¤¤Î¡©
¤¿¤Ö¤ó¤³¤ì¤¬²óÅú
- 1 ¤Ë¤Ä¤¤¤Æ¤Ï¡¢¥Æ¥¹¥È¤·¤¿¤¤¥³¡¼¥É¤Ï HTML ¤«¤éʬΥ¤·¤Þ¤·¤ç¤¦
- 2 ¤È 3 ¤Ï¤Á¤ã¤ó¤È¥ª¥Ö¥¸¥§¥¯¥È¤Ë̾Á°¤òÉÕ¤±¤Æ¤Ö¤Ä¤«¤é¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤·¤ç¤¦
¼Â¤Ï¤³¤ì¤Ï¤â¤¦
ÆüËÜRubyKaigi2010 3ÆüÌÜ - ¤Þ¤Á¤å¥À¥¤¥¢¥ê¡¼(2010-08-29)
¤òÆÉ¤á¤ÐÁÛÁü¤¬¤Ä¤¤Þ¤¹¡£
¤Á¤ç¤Ã¤È¤·¤¿¸ú²Ì¤Ë¤·¤«»È¤ï¤Ê¤¤¾ì¹ç¤ÏÌÌÅݤ˴¶¤¸¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡¢¥³¡¼¥É¤ò¥³¡¼¥É¤Ç¥Æ¥¹¥È¤¹¤ë TDD ¤ä BDD ¤Ï¡¢¤ä¤Ã¤Æ¤Ê¤¤¤È¤¤ËÈæ¤Ù¤ë¤È¥¹¥¿¡¼¥È»þÅÀ¤Ç¤Ï¿¤«¤ì¾¯¤Ê¤«¤ìÌÌÅݤʤâ¤Î¤Ç¤¹¡£¤³¤³¤Ï¤½¤¦¤¤¤¦¤â¤Î¤È³ä¤êÀڤäƤ¯¤À¤µ¤¤¡£¤¢¤È¤Ç¤Þ¤¿Ê䤷¤Þ¤¹¡£
»È¤¤Êý
Æó¤Ä¤¢¤ê¤Þ¤¹¡£
- standalone
- rubygems + rake
standalone
°Ê²¼¤Ë jasmine-standalone-1.0.1.zip ¤ÎÆâÍÆ¤òµó¤²¤Þ¤¹¡£
¨§¨¡¨¡ SpecRunner.html
¨§¨¡¨¡ lib
¨¢ ¨¦¨¡¨¡ jasmine-1.0.1
¨¢ ¨§¨¡¨¡ MIT.LICENSE
¨¢ ¨§¨¡¨¡ jasmine-html.js
¨¢ ¨§¨¡¨¡ jasmine.css
¨¢ ¨¦¨¡¨¡ jasmine.js
¨§¨¡¨¡ spec <-- spec¥Õ¥¡¥¤¥ë¡Ê¥Æ¥¹¥È¥³¡¼¥É¡ËÃÖ¤¾ì
¨¢ ¨§¨¡¨¡ PlayerSpec.js
¨¢ ¨¦¨¡¨¡ SpecHelper.js
¨¦¨¡¨¡ src <-- ¥×¥í¥À¥¯¥È¥³¡¼¥ÉÃÖ¤¾ì
¨§¨¡¨¡ Player.js
¨¦¨¡¨¡ Song.js
¾å¤Î src/ ¤Ë¥Æ¥¹¥È¤·¤¿¤¤ JavaScript ¥³¡¼¥É¤ò¡¢spec/ °Ê²¼¤Ë spec ¥Õ¥¡¥¤¥ë¡Ê¥Æ¥¹¥È¥³¡¼¥É¡Ë¤òÃÖ¤¤Þ¤¹¡£spec ¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ï
¡Ö¸µ¤Î̾Á° + [Ss]pec¡×.js
¤¬¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¼ÂºÝ¤Ë¤Ï standalone ¤Î¾ì¹ç¤Ï¼«Í³¤Ç¤¹¤¬¡¢gem ÈǤò»È¤¦¤È¤¤Ë¤Ï¤³¤Î¥ë¡¼¥ë¤¬¥Ç¥Õ¥©¥ë¥È¤Ê¤Î¤Ç¡¢¹ç¤ï¤»¤Æ¤ª¤¤¤¿Êý¤¬¤¤¤¤¤È»×¤¤¤Þ¤¹¡£
¤½¤·¤Æ³Æ¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤ò SpecRunner.html ¤ÎÃæ¤Ë½ñ¤¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤ò¥Ö¥é¥¦¥¶¤Ç³«¤¯¤³¤È¤Ç¤¹¤Ù¤Æ¤Î¥Æ¥¹¥È¤¬¼«Æ°Åª¤Ë¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
ÉÕ°¤·¤Æ¤¤¤ë¥µ¥ó¥×¥ë SpecRunner.html ¤Ï°Ê²¼¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Jasmine Test Runner</title> <link rel="stylesheet" type="text/css" href="lib/jasmine-1.0.1/jasmine.css"> <script type="text/javascript" src="lib/jasmine-1.0.1/jasmine.js"></script> <script type="text/javascript" src="lib/jasmine-1.0.1/jasmine-html.js"></script> <!-- include source files here... --> <script type="text/javascript" src="src/Player.js"></script> <script type="text/javascript" src="src/Song.js"></script> <!-- include spec files here... --> <script type="text/javascript" src="spec/SpecHelper.js"></script> <script type="text/javascript" src="spec/PlayerSpec.js"></script> </head> <body> <script type="text/javascript"> jasmine.getEnv().addReporter(new jasmine.TrivialReporter()); jasmine.getEnv().execute(); </script> </body> </html>
¤³¤³¤Þ¤Ç¤Ï¸«¤ì¤Ðʬ¤«¤ëÄ̤ê¤Ç¤¹¡£QUnit ¤È°ã¤Ã¤Æ¥µ¥ó¥×¥ë¤ÎÃʳ¬¤Ç¥Æ¥¹¥È¤ò HTML ¤ÎÃæ¤Ë½ñ¤¯¤Î¤Ç¤Ï¤Ê¤¯¡¢¥Æ¥¹¥È¤òµ½Ò¤·¤¿ spec ¥Õ¥¡¥¤¥ë¤È¤·¤ÆÊ¬Î¥¤¹¤ë¤³¤È¤¬¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
standalone ÈǤϥƥ¹¥È¤¹¤ë¥³¡¼¥É¤¬Áý¤¨¤ì¤Ð¤³¤Î HTML ¤ÎÊÔ½¸¤Î¼ê´Ö¤âÁý¤¨¤Æ¤¤¤¤Þ¤¹¡£
rubygems + rake
¥×¥í¥À¥¯¥È¥³¡¼¥É¤È¥Æ¥¹¥È¥³¡¼¥É¤ÎÇÛÃ֤ˤĤ¤¤Æ¤Ï standalone ÈÇ¤ÈÆ±¤¸¤Ç¤¹¤¬¡¢SpecRunner.html ¤ÎÊÔ½¸¤ÏɬÍפ¢¤ê¤Þ¤»¤ó¡£¤¿¤À¤·¡¢ÅöÁ³
- ruby
- rubygems
¤¬É¬ÍפǤ¹¡£
ÌÌÅݤǤ¹¤«¡© ¤Ç¤â¤³¤ì¤¬ÍѰդǤ¤ì¤Ð²è´üŪ¤Ë³Ú¤Ë°Â¿´¤ò¼ê¤ËÆþ¤ì¤ë¤³¤È¤¬¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¤â¤¦¾¯¤·Â³¤±¤Þ¤·¤ç¤¦¡£
rubygemsÈÇJasmine
¥¤¥ó¥¹¥È¡¼¥ë
gem install jasmine
¤ÇÆþ¤ê¤Þ¤¹¡£¡ÊWindows ¤Ç¤Ï»î¤·¤¿¤³¤È¤¬¤Ê¤¤¤Ç¤¹¤¬¡£¡Ëselenium ¤Ê¤É¾¤Ë¤â°Í¸¤·¤Æ¤¤¤ë¥é¥¤¥Ö¥é¥ê¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¤Î¤Ç¿¾¯»þ´Ö¤¬³Ý¤«¤ë¤È»×¤¤¤Þ¤¹¡£
¤¤¤Á¤Ð¤ó´ðËÜŪ¤Ê»È¤¤Êý
Rails2, Rails3, ¤½¤Î¾ÍѤλȤ¤Êý¤ÎÀâÌÀ¤¬ Using the Jasmine Gem | Jasmine ¤Ë½ñ¤«¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢¤³¤³¤Ç¤ÏºÇ¤â²¿¤â¹Í¤¨¤ëɬÍפΤʤ¤¤½¤Î¾ÍѤò¤â¤È¤ËÀâÌÀ¤·¤Þ¤¹¡£¤Ê¤ª¡¢Ruby ¤È Rubygems ¤Ï¥¤¥ó¥¹¥È¡¼¥ëºÑ¤ß¤È¤·¤Þ¤¹¡£
¤¹¤ë¤È jasmine ¤Î¥¤¥ó¥¹¥È¡¼¥ë¤«¤é»È¤¤»Ï¤á¤Ï¤³¤ó¤Ê´¶¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£
$ gem install jasmine $ mkdir jasmine_test $ cd jasmine_test $ jasmine init $ rake jasmine
¤³¤ì¤À¤±¤Ç¤¹¡£¤¹¤ë¤È°Ê²¼¤Î¤è¤¦¤Ë WEBRick ¥µ¡¼¥Ð¤¬Î©¤Á¾å¤¬¤ê¤Þ¤¹¡£
(in /path/to/jasmine_test) your tests are here: http://localhost:8888/ [2010-12-08 18:35:04] INFO WEBrick 1.3.1 [2010-12-08 18:35:04] INFO ruby 1.8.7 (2010-08-16) [i686-darwin9] [2010-12-08 18:35:04] INFO WEBrick::HTTPServer#start: pid=56941 port=8888

¤³¤³¤Ç http://localhost:8888/ ¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤È¥Æ¥¹¥È¤¬¼Â¹Ô¤µ¤ì¤Æ±¦¤Î¤è¤¦¤Ë·ë²Ì¤¬Ê֤äƤ¤Þ¤¹¡£
jasmine init ¤·¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Î¹½À®
¤³¤Î¤È¤ jasmine init ¤ò¼Â¹Ô¤·¤¿¥Ç¥£¥ì¥¯¥È¥ê¤ÎÃæ¿È¤Ï°Ê²¼¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¨§¨¡¨¡ Rakefile
¨§¨¡¨¡ public
¨¢ ¨¦¨¡¨¡ javascripts
¨¢ ¨§¨¡¨¡ Player.js
¨¢ ¨¦¨¡¨¡ Song.js
¨¦¨¡¨¡ spec
¨¦¨¡¨¡ javascripts
¨§¨¡¨¡ PlayerSpec.js
¨§¨¡¨¡ helpers
¨¢ ¨¦¨¡¨¡ SpecHelper.js
¨¦¨¡¨¡ support
¨§¨¡¨¡ jasmine.yml
¨¦¨¡¨¡ jasmine_runner.rb
¤¢¤ì¡¢SpecRunner.html ¤¬¤¢¤ê¤Þ¤»¤ó¡Ê¤ï¤¶¤È¤é¤·¤¤¡Ë¡£¼Â¤Ï ./spec/javascripts/support/jasmine.yml ¤ËÈëÌ©¤¬¤¢¤ê¤Þ¤¹¡£¥³¥á¥ó¥È¤ò¾Ê¤¤¤ÆÆâÍÆ¤ò·ÇºÜ¤¹¤ë¤È°Ê²¼¤Ë¤Ê¤ê¤Þ¤¹¡£
src_files:
- public/javascripts/**/*.js
stylesheets:
helpers:
spec_files:
src_dir:
spec_dir:
¤³¤³¤Ç³Æ¼ï¥Õ¥¡¥¤¥ë¤Î°ÌÃÖ¤È̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£´ðËÜŪ¤Ë¥Ç¥Õ¥©¥ë¥È¤Î¤Þ¤Þ¤ÇÂç¾æÉפǤ¹¡£¼«Æ°Åª¤Ë³Æ¼ï¥Õ¥¡¥¤¥ë¤ò½¦¤¤¾å¤²¤Æ¤½¤ì¤ò <script> ¤ÇÆÉ¤ß¹þ¤à¤è¤¦¤Ëºî¤é¤ì¤¿ HTML ¤¬¥µ¡¼¥Ð¤«¤éÁ÷¤é¤ì¤Æ¤¯¤ë¤Î¤Ç¡¢¥Æ¥¹¥ÈÂоݤΠJavaScript ¤¬Áý¤¨¤Æ¤â¾å¤Î¥ë¡¼¥ë¤Ë¥Þ¥Ã¥Á¤¹¤ë¸Â¤ê¤Ï²¿¤â¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤»¤ó¡£
¥Ç¥Õ¥©¥ë¥È¤È°Û¤Ê¤ë¾ì½ê¤Ë JavaScript ¤òÃÖ¤¤¿¤¤¾ì¹ç¤Ï jasmine.yml ¤ò½ñ¤´¹¤¨¤Æ¤¯¤À¤µ¤¤¡£
jasmine gem ¤ÎÃæ¿È
¨§¨¡¨¡ MIT.LICENSE ¨§¨¡¨¡ README.markdown ¨§¨¡¨¡ bin ¨§¨¡¨¡ generators ¨§¨¡¨¡ jasmine ¨§¨¡¨¡ lib ¨¢ ¨§¨¡¨¡ jasmine ¨¢ ¨¢ ¨§¨¡¨¡ ... ¨¢ ¨¢ ¨§¨¡¨¡ run.html.erb <-- ¥³¥ì ¨¢ ¨¢ ¨¦¨¡¨¡ ... ¨¢ ¨¦¨¡¨¡ jasmine.rb ¨¦¨¡¨¡ spec
¤³¤ÎÃæ¤Î run.html.erb ¤¬¥¥â¤Ç¤¹¡£
http://localhost:8888/ ¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤ÈÀè¤Û¤É¤Î YAML ¤ÎÃæ¿È¤¬¼«Æ°Åª¤Ë¤³¤ÎÃæ¤ËŸ³«¤µ¤ì¤¿¤â¤Î¤¬¥Ö¥é¥¦¥¶¤ËÊÖ¤µ¤ì¤Þ¤¹¡£
¤·¤¿¤¬¤Ã¤Æ¤¤¤Á¤¤¤Á SpecRunner.html ¤òÊÔ½¸¤»¤º¤Ë¡¢js ¥Õ¥¡¥¤¥ë¤ò½êÄê¤Î¾ì½ê¤ËÃÖ¤¯¤À¤±¤Ç¼«Æ°Åª¤Ë¤¹¤Ù¤ÆÆÉ¤ß¹þ¤à¤³¤È¤¬²Äǽ¤Ë¤Ê¤ë¤ï¤±¤Ç¤¹¡£
rake jasmine:ci ¤¬¤¹¤´¤¤
gem ÈǤΠJasmine ¤Ç¤Ï´ðËÜŪ¤Ë¤Ï
rake jasmine
¤ò¼Â¹Ô¤·¤Æ http://localhost:8888/ ¤Ë¥¢¥¯¥»¥¹¤·¤Æ¥Æ¥¹¥È¤¹¤ë¤Î¤Ç¤¹¤¬¡¢¤³¤ì¤òÁ´¼«Æ°¤Ë¤¹¤ë¤Î¤¬
rake jasmine:ci
¤Ç¤¹¡£¤³¤ì¤Ï *1selenium ¤òÍøÍѤ·¤Æ¥Ö¥é¥¦¥¶¡Ê¥Ç¥Õ¥©¥ë¥È¤Ï Firefox¡Ë¤òÁàºî¤·¤Æ¥Æ¥¹¥È¤Î·ë²Ì¤òÆÀ¤Þ¤¹¡£¤Ä¤Þ¤ê¾å¤Î¥³¥Þ¥ó¥É¤òᤤ¤¿¤¢¤È¤Ï¤¿¤ÀÂԤĤÀ¤±¤Ç¤¹¡£
(in /path/to/jasmine_test) /opt/local/bin/ruby -S rspec --color --format progress "spec/javascripts/support/jasmine_runner.rb" Waiting for jasmine server on 56662... [2010-12-08 18:41:30] INFO WEBrick 1.3.1 [2010-12-08 18:41:30] INFO ruby 1.8.7 (2010-08-16) [i686-darwin9] [2010-12-08 18:41:30] INFO WEBrick::HTTPServer#start: pid=57246 port=56662 Waiting for jasmine server on 56662... jasmine server started. Running: java -jar "/opt/local/lib/ruby/gems/1.8/gems/selenium-rc-2.2.4/vendor/selenium-server.jar" -port 56670 > /dev/null ==> Waiting for Selenium RC server on port 56670... Ready! Waiting for suite to finish in browser ... ..... Finished in 0.18192 seconds 5 examples, 0 failures
¤³¤ó¤Ê·ë²Ì¤¬Ê֤äƤ¤Þ¤¹¡£¡ÊMacPorts ¤ÇÆþ¤ì¤¿ Ruby ¤Ç¼Â¹Ô¡£¡Ë
¥Ö¥é¥¦¥¶¤¬¤¹¤Ç¤Ëµ¯¤¤Æ¤¤¤Æ¤â¿·¤¿¤Ëµ¯Æ°¤¹¤ë¤È¤³¤í¤«¤é»Ï¤á¤ë¤Î¤Çưºî¤ÏÃÙ¤¤¤Î¤Ç¤¹¤¬¡¢Á´¼«Æ°¤Ç¼Â¹Ô¤Ç¤¤ë¤Î¤ÏÌ¥ÎϤǤ¹¡£¤³¤ì¤ò CI ¥µ¡¼¥Ð¤Ç¼Â¹Ô¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤ª¤±¤Ð¤¤¤Ä¤â JavaScript ¤Î¥³¡¼¥É¤¬Àµ¤·¤¯Æ°¤¤¤Æ¤¤¤ë¤«¥Æ¥¹¥ÈºÑ¤ß¤Î¾õÂÖ¤ò°Ý»ý¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ë¤ï¤±¤Ç¤¹¡£
¤³¤¦¤Ê¤ë¤È¤È¤Æ¤â°Â¿´¤Ç¤¹¡£³Æ¼ï¥é¥¤¥Ö¥é¥ê¤Î¥Ð¡¼¥¸¥ç¥ó¤ò¾å¤²¤¿¤È¤¤Î¸¡¾Ú¤Ê¤É¡¢ÂçÉý¤Ë¾ÊÎϲ½¤Ç¤¤ë¤Î¤Ç¤Ï¤Ê¤¤¤Ç¤·¤ç¤¦¤«¡£
»²¹Í
- ÆüËÜRubyKaigi2010 3ÆüÌÜ - ¤Þ¤Á¤å¥À¥¤¥¢¥ê¡¼(2010-08-29)
- FFTT : Jasmine¤Ç¥Æ¥¹¥Æ¥£¥ó¥°
- Jasmine¤Ë¤è¤ëJavaScript¤Î¥Æ¥¹¥È ¤½¤Î1 « ¥µ¡¼¥Ð¡¼¥ï¡¼¥¯¥¹µ»½Ñ¥Ö¥í¥°
- Jasmine¤Ë¤è¤ëJavaScript¤Î¥Æ¥¹¥È ¤½¤Î1 « ¥µ¡¼¥Ð¡¼¥ï¡¼¥¯¥¹µ»½Ñ¥Ö¥í¥°
- ASCIIcasts - ¡ÈEpisode 261 - Jasmine¤ÇJavaScript¤Î¥Æ¥¹¥È¡É
- fixture ¤ò´Þ¤á¤Æ°ìÄ̤ê»È¤¤Êý¤¬Á´Éô½ñ¤¤¤Æ¤¢¤ë´¶¤¸¡£
*1 º£¤Î¤È¤³¤í
2010-12-11 [ĹǯÆüµ]
_ º£¤µ¤é»Ï¤á¤ëRails 3
Ruby ¤È¤ÎÉÕ¤¹ç¤¤¤Ï¤½¤ì¤Ê¤ê¤ËŤ¤¤Î¤Ç¤¹¤¬¼Â¤Ï Rails ¤Ç²¿¤«¤òºî¤Ã¤¿¤³¤È¤Ï°ìÅ٤⤢¤ê¤Þ¤»¤ó¡£*1scaffold ¤ä migration ¤Ï°ìÄ̤ê»î¤·¤Æ¤ß¤¿¤³¤È¤¬¤¢¤Ã¤¿¤±¤ì¤É¤â¡¢²¿¤«¿¡¤¨¤Ê¤¤É԰´¶¤ä±ï¤Î¤Ê¤µ¤«¤éº£¤Þ¤Ç¤Ï¼þÊÕµ»½Ñ¤Î°ì¤Ä¤È¤·¤Æ°Ê¾å¤Ë¤Ï¿¨¤Ã¤¿¤³¤È¤¬¤¢¤ê¤Þ¤»¤ó¤Ç¤·¤¿¡£
¶½Ì£
º£²ó¡¢½ÐÃÙ¤ì¤Ï¤·¤¿¤±¤ì¤É¤â
- Á´ÌÌŪ¤Ë Merb & Rack ¥Ù¡¼¥¹
- Arel Åоì
- i18n ¤Îµ¡¹½¤¬ÁȤ߹þ¤ßºÑ¤ß
- ¤¹¤Ç¤Ë¼ÂÀÓ¤¬Áý¤¨¤Æ¤¤Æ¤¤¤ë
ÊÕ¤ê¤Ç¶¯¤¯¶½Ì£¤¬Í¯¤¤¤Æ¤¤¿¤Î¤Ç¤Þ¤º¤Ï°ìÄ̤ê¤Î½àÈ÷¤ò¤·¤Æ¤ß¤Þ¤·¤¿¡£
¾Ã¶ËŪ¤ÊÍýͳ
¾Ã¶ËŪ¤ÊÍýͳ¤â¼Â¤Ï¤¢¤Ã¤Æ¡¢¤½¤ì¤Ï
- PHP ¤Î¥ì¥¬¥·¡¼¥³¡¼¥É¤ÈÀ臘¤Î¤ËÈè¤ì¤¿
- ÉéºÄ¤Î¤¢¤ë PHP ¤ÇºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤ËÄɤ¤¤Ä¤¯¤Î¤ÏÂçÊÑ
- ºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤Ç¤Ê¤¤¤È PHP ¤ä PHP ¤Î¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤Î»ÝÌ£¤ÏÌ£¤ï¤¨¤Ê¤¤
- Ruby ¤Ê¤éºÇ¿·¤Ç¤Ê¤¯¤¿¤Ã¤ÆÍ·¤Ù¤ë
- Rails ¤Î²áµî¤ÎºîË¡¤ò¤Û¤È¤ó¤ÉÃΤé¤Ê¤¤¤Î¤Çº®Í𤷤ʤ¤
¾¤Î¤É¤ó¤Ê¸À¸ì¤Ç¤â»÷¤¿¤è¤¦¤Ê¤â¤Î¤À¤È¤Ï»×¤¤¤Þ¤¹¤¬¡¢¥ì¥¬¥·¡¼¥³¡¼¥É¤òÂçÎ̤ËÊú¤¨¤Æ¤·¤Þ¤¦¤È¥¢¥Ã¥×¥°¥ì¡¼¥É¤Ç¤¤º¤Ë¥¥ã¥Ã¥Á¥¢¥Ã¥×¤¬Æñ¤·¤¯¤Ê¤ê¤Þ¤¹¡£¤Þ¤¿ rvm ¤Î¤è¤¦¤Ê»ÅÁȤߤâ¤Ê¤¤ PHP ¤Ç¤ÏºÇ¿·¤Î¾ðÊó¤ò¼ê¸µ¤Ç¤À¤±»î¤·¤Æ¤ª¤¯¤È¤¤¤¦½àÈ÷¤â¤·¤Ë¤¯¤¤¤Ç¤¹¡£¤½¤ÎÅÀ Ruby ¤Ë¤Ï rvm ¤â¤¢¤ë¤· gem ¤ÏÊ£¿ô¥Ð¡¼¥¸¥ç¥ó¤òÊÝ»ý¤Ç¤¤ë¤·¡¢Îɤ¤¥Æ¥¹¥È¤Îʸ²½¤¬¤¢¤ê¤Þ¤¹¡£
¤Þ¤º¤Ï¥¤¥ó¥¹¥È¡¼¥ë
¤Î¡¢Á°¤Ë Ruby ¤Ï 1.8.7 °Ê¾å¤¬É¬ÍפǤ¹¡£Windows ¤Ê¤é installer ¤ÇÆþ¤ì¤ì¤Ð¤¤¤¤¤Ç¤¹¡£rvm ¤ò¤¹¤Ç¤Ë»È¤Ã¤Æ¤¤¤ë¤Ê¤é¹¥¤¤Ê¤â¤Î¤òÆþ¤ì¤Æ¤¯¤À¤µ¤¤¡£º¤¤ë¤Î¤Ï RHEL 5 ·Ï Linux ¤Ç¥Ð¥¤¥Ê¥ê¥¤¥ó¥¹¥È¡¼¥ë¤·¤«¤·¤Ê¤¤¿Í¤Ç¡¢¤½¤Î¾ì¹ç¤Ï
¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤¡£RHEL 6 ¤Ê¿Í¤Ï Rails 3 ready ¤é¤·¤¤¤Ç¤¹¡£
¤¢¤È¤ä¤ë¤³¤È¤Ï
$ gem install rails
¤À¤±¡£°Í¸¥é¥¤¥Ö¥é¥ê¤Ï¤É¤«¤É¤«Æþ¤ê¤Þ¤¹¤Î¤Ç¡¢¤·¤Ð¤é¤¯ÂÔ¤Á¤Þ¤¹¡£¤¢¤È¤ÏɬÍפ˱þ¤¸¤Æ
- sqlite3-ruby
- rails-erd
- jpmobile
- rspec-rails
- typus
- jasmine
- cucumber-rails
¤Ê¤É¡¢¤ª¹¥¤ß¤Ç¡£Cucumber ¤Ï¤Þ¤À¥º¥ë¥º¥ë¤¤Æ¤ª¤ê¤Þ¤¹¡£¤¤¤¤²Ã¸º¤ä¤é¤Ê¤¤¤È¡£
RSpec ¤Ï 2 °Ê¾å¤¬ Rails 3 Âбþ¤Ç¤¹¡£¸½»þÅÀ(2010-12-11)¤Ç¤Ï²¿¤â¹Í¤¨¤º¤ËºÇ¿·¤òÆþ¤ì¤ì¤ÐÂç¾æÉפǤ¹¡£ËÜÅö¤Ë Rails 3 ¤Î¥ê¥ê¡¼¥¹¤Ë¤ß¤ó¤Ê¤¬Âʤߤò·¤¨¤¿¤³¤È¤¬¤è¤¯Ê¬¤«¤ê¤Þ¤¹¡£¤¢¤ê¤¬¤È¤¦¡£
¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¿÷·Á½àÈ÷
rails new foo ¤Ç¥¢¥×¥ê¤Î¿÷·Á¤òºîÀ®¤·¤Þ¤¹¡£
$ rails new foo -T -J
¤³¤Î¤È¤ -T -J ¤Ç¤½¤ì¤¾¤ì Test::Unit ¤È prototype.js °Í¸¤ò¼è¤ê½ü¤±¤Þ¤¹¡£¤¬¡¢¤³¤³¤Ç¤Ï¤Þ¤À¼è¤ê½ü¤±¤ë¤À¤±¡£
Gemfile ¤ÎÊÔ½¸
Rails 3 ¤«¤é¤Ï Bundler ¤Î»ÅÁȤߤò»È¤Ã¤Æ°Í¸ gem ¤ò´ÉÍý¤·¤Þ¤¹¡£¤É¤¦¤¤¤¦¤³¤È¤«¤È¤¤¤¦¤È
- »È¤¤¤¿¤¤ gem ¤ò Gemfile ¤ËÎóµó
- Gemfile ¤òÊÔ½¸¤·¤¿¤é bundle install
¤¬¡¢¤ª¤Þ¤¸¤Ê¤¤¤È¤·¤ÆÁý¤¨¤¿¤È¤¤¤¦¤³¤È¤Ç¤¹¡£
¤³¤ì¤Ï¤â¤·¤«¤·¤¿¤éÌÌÅݤ˴¶¤¸¤ë¿Í¤¬Â¿¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡¢¥µ¡¼¥Ð´ÉÍý¤¹¤ë¿Í´Ö¤«¤é¤¹¤ë¤È¡¢¤É¤Î¥¢¥×¥ê¤Ç²¿¤Î¥é¥¤¥Ö¥é¥ê¤ò»È¤Ã¤Æ¤ë¤Î¤«¤è¤¯Ê¬¤«¤é¤Ê¤¤¾õ¶·¤Ë¤Ê¤ê¤¬¤Á¤Ç¡Ö¤â¤¦Á´Éô rsync ¤¹¤ì¤Ð¤¤¤ó¤¸¤ã¤Í¡×¤¯¤é¤¤¤·¤«ÂǤļê¤Î¤Ê¤«¤Ã¤¿ºÇ¶á¤Î¾õ¶·¤ËÂФ¹¤ë¤È¤Æ¤â¥¹¥Þ¡¼¥È¤Ê²óÅú¤È¤·¤Æ¡¢¸Ä¿ÍŪ¤Ë¤Ï´ò¤·¤¯»×¤Ã¤Æ¤¤¤Þ¤¹¡£Â絬ÌϤʥµ¥¤¥È¤·¤«Áê¼ê¤Ë¤·¤Ê¤¤¾ì¹ç¤Ï¥é¥¤¥Ö¥é¥ê´ÉÍý¤Ï¡Ö¤½¤Î¥µ¥¤¥È¤ÇɬÍפʤâ¤ÎÁ´Éô¡×¤Ê¤Î¤Ç¤½¤³¤Þ¤ÇÌÌÅݤ¸¤ã¤Ê¤¤¤Î¤Ç¤¹¤¬¡¢¾®¤µ¤¤¤â¤Î¤ò¤¤¤¯¤Ä¤â VirtualHost ¤Ç¼ý¤á¤Æ¤¤¤ë¤è¤¦¤Ê¾ì¹ç¤Ïº¤¤ê¤Þ¤¹¡£
¤³¤³¤Ç¤Ï°Ê²¼¤Î¤è¤¦¤Ë¤·¤Æ¤È¤ê¤¢¤¨¤º¤É¤«¤É¤«¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¤ß¤Þ¤¹¡£
gem 'jpmobile' # gem 'jquery_rails3' # NOT WORK !! gem 'jquery-rails' group :development, :test do gem 'rails-erd' gem 'rspec-rails' gem 'jasmine' gem 'typus' end
¤³¤ó¤Ê´¶¤¸¡£
¤Ç¤Ï°Ê²¼¤Ë³Æ gem ¤Î»È¤¤Êý¤Ê¤É¤ò´Êñ¤Ë¾Ò²ð¤·¤Æ¤¤¤¤Þ¤¹¡£
rails-erd
Rails ERD – Entity-Relationship Diagrams for Rails
¤³¤ì¤ÏÌÌÇò¤¤¤Ç¤¹¡£Rails 3 ÍѤȤ¤¤¦¤«Àµ³Î¤Ë¤Ï ActiveRecord 3 ÍѤǡ¢
À¸À®ºÑ¤ß¤Î Model ¤Î¾ðÊ󤫤é ER ¿Þ¤ò¤½¤ì¤Ã¤Ý¤¯µ¯¤³¤·¤Þ¤¹¡£
graphviz ¤Ë°Í¸¤·¤Æ¤¤¤Þ¤¹¤·¡¢graphviz ¤Î¥Ð¡¼¥¸¥ç¥ó¤Ë¤è¤Ã¤Æ¤Ï¤¤ì¤¤¤Ê¿Þ¤¬ÉÁ¤±¤Ê¤¤¤Î¤ÇÃí°Õ¤¬É¬ÍפǤ¹¡£¤¹¤Ù¤ÆÅ¬ÀÚ¤ËÆ°¤¤¤Æ¤¤¤ì¤Ð
rake erd
¤Ç ERD.pdf ¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ç Rails ¤Î´Ä¶¤«¤éÎ¥¤ì¤Æ¥Þ¥¦¥¹¤ò¥Ý¥Á¥Ý¥Á¤ä¤ë¤³¤È¤Ê¤¯ ER ¿Þ¤¬ºî¤ì¤Þ¤¹¡£´ò¤·¤¤¡£¤½¤ì¤ËºÇ¶á¤Î ORM ¤ò»È¤Ã¤¿³«È¯¤Ç¤Ï DBMS ¤òÃê¾Ý²½¤·¤Æ¤¤¤ë¤Î¤Ç DBMS ¤ò schema dump ¤·¤Æ¤âÀµ¤·¤¤´Ø·¸¤òÃê½Ð¤Ç¤¤Ê¤¤¤ó¤Ç¤¹¤è¤Í¡£¥ê¥ì¡¼¥·¥ç¥ó¤â DBMS ¤Ç¤Ï¤Ê¤¯ Model ´Ö¤Ç¹Í¤¨¤ëɬÍפ¬¤¢¤ë*2¤Î¤Ç¡¢¤³¤¦¤¤¤¦¥Ä¡¼¥ë¤¬¤È¤Æ¤â´ò¤·¤¤¤Ç¤¹¡£
¢¨ »î¤·¤¿ÈϰϤǤϰʲ¼¤Î¤è¤¦¤Ê´¶¤¸¤Çư¤¤¤¿¤êư¤«¤Ê¤«¤Ã¤¿¤ê¤·¤Þ¤·¤¿¡£
| ¥Ð¡¼¥¸¥ç¥ó | ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à | ·ë²Ì |
| 2.26 | MacPorts | OK |
| 2.22 | CentOS 5 | NG |
| ¡Ê¼ºÇ°¡Ë | Fink | NG |
| 2.20 | Debian | OK |
ñ¤Ë¿·¤·¤¤Êý¤¬¤è¤¤¡¢¤Ã¤Æ¤ï¤±¤Ç¤â¤Ê¤¤¤ß¤¿¤¤¤Ç¤¹¡£
RSpec
bundle install ¤ËÀ®¸ù¤·¤Æ¤¤¤ì¤Ð rails g ¥³¥Þ¥ó¥É¤Ë rspec:install ¤¬¸½¤ì¤ë*3¤Î¤Ç¡¢¤³¤ì¤ò»È¤Ã¤Æ spec ¤Î¿÷·Á¤òÍѰդ·¤Þ¤¹¡£
$ rails g rspec:install
¤Þ¤À¼ÂºÝ¤Ë spec ¤ò½ñ¤¤¤¿¤³¤È¤Ï¤Ê¤¤¤Î¤Ç¡¢°Ê²¼Î¬¡£
jQuery
[2010-12-27 ½¤Àµ]
indirect/jquery-rails - GitHub
Rails ɸ½à¤Ï prototype.js ¤Ê¤Î¤Ç¤¹¤¬¡¢¤³¤ì¤ÏÀè¤Û¤É¤Î rails new ¤ÇÍ޻ߤ·¤Æ¤¢¤ë¤Î¤Ç¡¢²þ¤á¤Æ jQuery ¤òÆþ¤ì¤Þ¤¹¡£rspec ¤ÈƱÍÍ¤Ë rails g ¥³¥Þ¥ó¥É¤Ë jquery:install ¤¬¤Ç¤¤Þ¤¹¡£
$ rails g jquery:install
ºÇ½é´Ö°ã¤Ã¤Æ¤·¤Þ¤Ã¤¿¤Î¤Ç¤¹¤¬¡¢jquery_rails3 ¤Ï¥À¥á¤Ç¡¢jquery-rails ¤À¤È¤¦¤Þ¤¯¥¤¥ó¥¹¥È¡¼¥ë¤Ç¤¤Þ¤¹¡£
¤â¤·¤¹¤Ç¤Ë prototype.js °Í¸¤Ç project ¤ò new ¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤Æ¤â¤Á¤ã¤ó¤È¼è¤ê½ü¤¤¤Æ¤¯¤ì¤Þ¤¹¡£
¤Ê¤ó¤«¥¨¥é¡¼½Ð¤Þ¤¹¤Í¡£git ¤ÎºÇ¿· jquery ¤ò¼èÆÀ¤¹¤ë½èÍý¤Ç¥³¥±¤Æ¤ë¤Ã¤Ý¤¤¤Ç¤¹¡£https ¼þ¤ê¤«¤Ê¡£
ÊüÃÖ¤·¤Þ¤¹¡£
º£²ó¤Ï¤È¤ê¤¢¤¨¤º¥«¥Ã¥³¤¬¤Ä¤±¤Ð¤¤¤¤¤Î¤Ç¡£
jpmobile
jpmobile - A Rails plugin for Japanese mobile-phones
¤¹¤ó¤Ê¤ê»È¤¨¤Þ¤¹¡£¤¿¤À¤·¼ÂºÝ¤Ëµ¡Ç½¤µ¤»¤ë¤Ë¤Ï config ¤ò¤¤¤¸¤é¤Ê¤¤¤È¥À¥á¤Ç¤¹¡£Rails ¤Î config ¤Ï¤³¤ÎÊդˤ¢¤ê¤Þ¤¹¡£
RAILS_ROOT/config/ ¨§¨¡¨¡ application.rb ... ¨§¨¡¨¡ environment.rb ...
º£²ó¤Ï environment.rb ¤ò°Ê²¼¤Î¤è¤¦¤Ë¤¤¤¸¤Ã¤Æ¤ß¤Þ¤·¤¿¡£¤É¤³¤ò¤¤¤¸¤ë¤Î¤¬Àµ²ò¤Ê¤Î¤«¤Ïʬ¤«¤ê¤Þ¤»¤ó¤¬¡£
# Load the rails application
require File.expand_path('../application', __FILE__)
module Demo
class Application
# jpmobile
config.jpmobile.mobile_filter
end
end
# Initialize the rails application
Demo::Application.initialize!
¤³¤ì¤À¤±¤ÇüËö¤Ë±þ¤¸¤¿ view ¤Î¿¶¤êʬ¤±¤Ï¤¹¤°¤Ë»È¤¨¤Þ¤¹¡£¥¥ã¥ê¥¢¤Ë±þ¤¸¤ÆÊ¸»ú¥³¡¼¥É¤ÎÊÑ´¹¤â¼«Æ°¤Ç¤ä¤Ã¤Æ¤¯¤ì¤ë¤·¡¢¥¹¥Þ¡¼¥È¥Õ¥©¥óÂбþ¤â´Êñ¤Ë¤Ç¤¤½¤¦¤Ç¤¹¡£¤³¤ì¤ÏÊØÍø¡£
¢¨ º£²ó Rails 3 ¤Ë´Ø¿´¤ò»ý¤Ã¤Æ¤¤¤ë¤â¤¦°ì¤Ä¤ÎÍýͳ¤¬¤³¤Î jpmobile ¤Ç¤¹¡£PHP ¤Ç¥â¥Ð¥¤¥ëÂбþ¤·¤è¤¦¤È¤·¤Æ¤â¤³¤ì¤À¤±¤Î´°À®Å٤Τâ¤Î¤Ï¸ø³«¤µ¤ì¤Æ¤¤¤Ê¤¤¤È»×¤¤¤Þ¤¹¡£
Bundler
Bundler: The best way to manage Ruby applications
bundle install ¤Ï¤¹¤Ç¤Ë»È¤Ã¤Æ¤¤¤Þ¤¹¤¬¡¢
$ bundle install [PATH]
¤¢¤ë¤¤¤Ï
$ bundle install --deployment
¤ò¼Â¹Ô¤¹¤ë¤È RAILS_ROOT/.bundle/config ¤¬ºîÀ®¤µ¤ì¡¢¤³¤ÎÃæ¤Ë¥Ñ¥¹¤Î¾ðÊ󤬻Ĥë¤è¤¦¤Ç¤¹¡£¤³¤Î¾ðÊ󤬻ĤäƤ¤¤ë¸Â¤ê¤Ïñ¤Ë
$ bundle install
¤ò¼Â¹Ô¤·¤Æ¤â system ¤Î gem ¤Î¥Ñ¥¹¤Ç¤Ï¤Ê¤¯¡¢¥×¥í¥¸¥§¥¯¥ÈÆÈ¼«¤Î¥Ñ¥¹¤ËÆþ¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¤Ê¤ë¤Û¤É¤Ê¤¡¡£
Typus¤Ç´ÉÍý²èÌ̤ϲ£Ã夹¤ë
Typus Core: Admin Panel for Ruby on Rails Applications
DBMS ¤ò»È¤¦¥¢¥×¥ê¤ÇÌÌÅݤʤΤϤä¤Ï¤ê´ÉÍý²èÌ̤¸¤ã¤Ê¤¤¤Ç¤¹¤«¤Í¡£´ÉÍý²èÌ̤¬¤Ê¤¤¤È¤º¤Ã¤È¤ª¼é¤ê¤ò¤·¤Ê¤±¤ì¤Ð¤¤¤±¤Ê¤¯¤Ê¤ë¤±¤É¡¢É½¤Ë¸«¤¨¤ë¤ï¤±¤¸¤ã¤Ê¤¤¤Î¤Ç¤Ä¤¤²¯¹å¤Ë¤Ê¤ê¤¬¤Á¤Ç¤¹¡£
¤½¤³¤Ç´ÉÍý²èÌ̤κîÀ®¤ò½õ¤±¤Æ¤¯¤ì¤ë¤â¤Î¤ÏɬÍפÀ¤í¤¦¤È°ÊÁ°¤«¤é»×¤Ã¤Æ¤¤¤¿¤Î¤Ç¤¹¤¬¡¢¤È¤ê¤¢¤¨¤º Typus ¤Ï¸½¾õ¤Ç¤â Rails 3 ¤Ç»È¤¨¤½¤¦¤Ç¤¹¡£
$ rails g model
...
$ rake db:migrate $ rails g typus
¤¹¤ë¤È¡¢ºîÀ®ºÑ¤ß¤Î¥â¥Ç¥ë¤Î¾ðÊ󤫤餽¤ì¤Ê¤ê¤Î´ÉÍý²èÌ̤¬¼«Æ°¤ÇÀ¸À®¤µ¤ì¤Þ¤¹¡£
¤¿¤À¤·¡¢model ¤ÎÊѹ¹¤Ë¤Ï¶²¤é¤¯ÄÉ¿ï¤Ç¤¤Ê¤¤¤Î¤Ç¡¢¤¢¤ëÄøÅÙ¹½Â¤¤¬¸Ç¤Þ¤Ã¤Æ¤«¤é generate ¤·¤¿Êý¤¬¤¤¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¡£
ruby-toolbox.com ¤Î Rails Admin Interfaces ¤Ç2Èֿ͵¤¡¢Rails 3 Âбþ¤Î¤â¤Î¤Ç¤Ï1Èֿ͵¤¤Ê¤Î¤Ç¡¢³°¤ì¤Ç¤Ï¤Ê¤¤¤ó¤¸¤ã¤Ê¤¤¤Ç¤·¤ç¤¦¤«¡£
¢¨ ¼Â¤Ï Typus ¤ò»î¤¹Á°¤Ë Casein - A lightweight Ruby on Rails CMS ¤ò»î¤·¤Æ¤¤¤¿¤Î¤Ç¤¹¤¬¡¢jpmobile ¤È¤Ö¤Ä¤«¤Ã¤Æ¤Ë¤Ã¤Á¤â¤µ¤Ã¤Á¤â¤¤¤«¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç¤ä¤á¤Þ¤·¤¿¡£¸«¤¿ÌÜŪ¤Ë¤Ï Casein ¤ÎÊý¤¬¤«¤Ã¤³¤è¤µ¤½¤¦¤Ê¤ó¤Ç¤¹¤±¤É¤Í¡£
Jasmine
Jasmine: BDD for Javascript | Jasmine
¤³¤ì¤Ï°ÊÁ°¤Î¾Ò²ð¤È°ã¤Ã¤Æ
$ bundle exec jasmine init
¤¹¤ë¤À¤±¤Ç¤¹¡£¤¢¤È¤Ï°ì½ï¡£
Arel
$ rails console
¤ÎÃæ¤Ç¤Á¤ç¤Ã¤È»î¤·¤Æ¤ß¤Þ¤·¤¿¡£
Model.select( 'foo, bar' ).where( 'bar != baz' ).limit( 2 )
¤ß¤¿¤¤¤Ë½ñ¤¤¤Æ¤¤¤¤Ê¤ê·ë²Ì¤¬¼èÆÀ¤Ç¤¤Þ¤¹¡£¤¦¤Ã¤Ï¡£¤ª¤Þ¤±¤Ë
.to_sql
¤òÉÕ¤±¤ì¤Ðȯ¹Ô¤µ¤ì¤ë SQL ¤¬¤¹¤°¤Ë³Îǧ¤Ç¤¤Þ¤¹¡£
¤Ê¤ó¤¸¤ã¤³¤ê¤ã¡ª
ORM ¤Ø¤ÎÄñ¹³¤¬°ìµ¤¤Ë¤Ê¤¯¤Ê¤ê¤Þ¤¹¤è¡¢¤³¤ì¡£¥¹¥Æ¥¤¹¤®¤Þ¤¹¡£
i18n
¢¨ ¤Ç¤¤ë¤³¤È¤È¤Ç¤¤Ê¤¤¤³¤È¤¬Ê¬¤«¤ê¤Þ¤·¤¿¡£
RAILS_ROOT/config/locales/
°Ê²¼¤Ë .rb ¤Ê Hash ¤« .yml ¤Ê YAML ¤Ç¥á¥Ã¥»¡¼¥¸¥«¥¿¥í¥°¤òÍѰդ¹¤ë¤Î¤¬É¸½à¤ÎÊýË¡¤ß¤¿¤¤¤Ç¤¹¡£
¤³¤³¤Ç¤¤¤¸¤Ã¤¿¤â¤Î¤Ï¤Á¤ã¤ó¤È locale ¤ÎÀßÄ꤬¤Ç¤¤Æ¤¤¤ì¤Ð Typus ¤Ç¼«Æ°À¸À®¤·¤¿´ÉÍý²èÌ̤ˤâÈ¿±Ç¤µ¤ì¤Þ¤¹¡£¤Á¤ç¤Ã¤È´¶Æ°¡£*4
¤¿¤À¤· Typus ¤¬ model ̾¤Ç¤Ï¤Ê¤¯¥Æ¡¼¥Ö¥ë̾¤òɽ¼¨¤·¤Æ¤·¤Þ¤¦*5¤Î¤Ç¡¢model ̾¤ËÆüËܸì¤ò³ä¤êÅö¤Æ¤Æ¤â¡Ö¥â¥Ç¥ë̾s¡×¤Ã¤Æ¤¤¤¦Ææ¤Îɽµ¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¤¤Þ¤¹¡£
¤³¤ì¤Ï¡Ä¥Ð¥°¤È¸À¤Ã¤¿Êý¤¬¤¤¤¤¤Î¤«¤Ê¤¡¡©
[2010-12-26 Äɵ] ʬ¤«¤ê¤Þ¤·¤¿¡£
Typus ¤Ï generate ¤·¤¿ºÝ¤Ë
/app/views/admin/
°Ê²¼¤Ë¤¤¤í¤¤¤í HTML ¤òÅǤ¯¤Î¤Ç¤¹¤¬¡¢¤½¤ÎÃæ¤Ç
@resource.model_name.human.pluralize
¤ä
<%= _t(key.constantize.model_name.human.pluralize) %>
¤³¤ó¤Êµ½Ò¤¬½Ð¤Æ¤¤Þ¤¹¡£¤³¤Î pluralize ¤¬¥À¥á¤Ç¤¹¡£
active support ¤Î inflection ¤Ç¤¢¤ë pluralize ¤Ï Rails ¤Î i18n ¤Î¼éÈ÷Èϰϳ°¤Ê¤Î¤Ç¡¢model_name.human ¤Î¤¢¤È¤Ë¸Æ¤ó¤¸¤ã¥À¥á¤Ê¤Î¤Ç¤·¤¿¡£¤Þ¤¿¡¢Rails ¤Î i18n ¤Ï
¤Ë¤¢¤ë¤è¤¦¤Ë model ¤Î̾Á°¤ËÂФ·¤ÆËÝÌõ¤ò³ä¤êÅö¤Æ¤Þ¤¹¡£table_name ¤Ë³ä¤êÅö¤Æ¤ëµ¡Ç½¤¬¤¢¤ì¤Ð .pluralize ¤¬¤¢¤Ã¤Æ¤âÀµ¤·¤¯µ¡Ç½¤µ¤»¤ë¤³¤È¤â̵Íý¤Ç¤Ï¤Ê¤µ¤½¤¦¤Ç¤¹¤¬¡¢¸½¾õ¡Ê3.0.3¡Ë¤Ç¤Ï¤Ç¤¤Þ¤»¤ó¡£
model.human ¤Î¤¢¤È¤Ë pluralize ¤Ï¸Æ¤ó¤¸¤ã¥À¥á
¤È³Ð¤¨¤ë¤³¤È¤Ë¤·¤Þ¤¹¡£
¤Ê¤ª¡¢twitter ¾å¤Ç .model_name.human ¤¸¤ã¤Ê¤¯¤Æ .human_name ¤Ë¤¹¤ì¤Ð¤è¤«¤Ã¤¿¤È½ñ¤¤Þ¤·¤¿¤¬¡¢human_name ¤Ï deprecated ¤Ç¤·¤¿¡£
»Ä¤ê¤Î²ÝÂê
¤¶¤Ã¤Èºî¶È¤À¤±¸«¤Æ¤¤Þ¤·¤¿¤¬¡¢º£¸å¤Î²ÝÂê¤Ï
- fixture
- rspec
- cucumber
- ¡Ö¥â¥Ç¥ë¤Î¥ê¥ì¡¼¥·¥ç¥ó¥·¥Ã¥×¡×¤È¤¤¤¦³µÇ°¤Î½¬ÆÀ
¤Ç¤·¤ç¤¦¤«¡£ORM ¤ÎÍøÍѷи³¤â¤¢¤Þ¤ê¤Ê¤¤¤¿¤á¡¢foreign key ¤òÌÀ¼¨¤»¤º¤Ë Model Ãæ¿´¤Ë¹Í¤¨¤ë¤³¤È¤¬¤É¤¦¤â¤Þ¤À¤·¤Ã¤¯¤ê¤¤Æ¤¤¤Þ¤»¤ó¡£schema dump ¤·¤Æ¤ß¤Æ¤â
¤Ê¤ó¤À¤³¤Î¥¹¥«¥¹¥«¤·¤¿´¶¤¸¤Ï
¤È¤¤¤¦¤Î¤¬Î¨Ä¾¤Ê´¶ÁۤǤ¹¡£¤·¤Ð¤é¤¯¤Ï¸ÍÏǤ¤¤â»Ä¤ë¤Ç¤·¤ç¤¦¤¬¡¢Á᤯¡Ö¥â¥Ç¥ë¤Î¥ê¥ì¡¼¥·¥ç¥ó¥·¥Ã¥×¡×¤È¤¤¤¦¹Í¤¨Êý¤ËƬ¤ò´·¤ì¤µ¤»¤Ê¤¤¤È¥À¥á¤Ç¤¹¤Í¡£
*1 ¤â¤È¤â¤È¸ø³«¤Ç¤¤ë¥×¥í¥À¥¯¥È¤Ê¤ó¤«¤Û¤È¤ó¤É¤Ê¤¤¤ó¤À¤±¤É¡£
*2 ¤Ã¤Ý¤¤¤³¤È¤òº£ÄË´¶¤·¤Æ¤¤¤ëºÇÃæ¤Ê¤Î¤Ç¤â¤·¤«¤·¤¿¤éÊѤʤ³¤È¸À¤Ã¤Æ¤ë¤«¤â
*3 rails g --help ¤È¤¹¤ë¤È³Îǧ¤Ç¤¤ë
*4 locale ¤ÎÊѹ¹¤Ë´Ø¤·¤Æ¤Ï development ´Ä¶¤Ç¤âºÆµ¯Æ°¤¬É¬Íפߤ¿¤¤¤Ç¤¹¤Í¡£¥«¥¿¥í¥°¤ÎÊѹ¹¤Ï¤¹¤°¤ËÈ¿±Ç¤µ¤ì¤Þ¤¹¤¬¡£¤Þ¤¡ locale ¤ÎÊѹ¹¤Ê¤ó¤Æ²¿Å٤⤷¤Ê¤¤¤Î¤ÇÌäÂê¤Ê¤¤¤Ç¤¹¤±¤É¡¢ÃΤé¤Ê¤¤¤È locale ¤¬È¿±Ç¤µ¤ì¤Æ¤¤¤Ê¤¤¤Î¤«¼«Ê¬¤Î¥«¥¿¥í¥°¥Õ¥¡¥¤¥ë¤ÎÍѰդλÅÊý¤¬¤ª¤«¤·¤¤¤Î¤«Ê¬¤«¤é¤Ê¤¤¤Î¤Ç¤Á¤ç¤Ã¤ÈÃí°Õ¤¬É¬ÍפǤ¹¡£
*5 Àµ³Î¤Ë¤Ï model_name ¤ò¤ï¤¶¤ï¤¶ pluralize ¤·¤¿¤â¤Î
2010-12-20 [ĹǯÆüµ]
_ ÁǤΠRuby ´Ä¶¤Ç Fabrication
¥À¥ß¡¼¥Ç¡¼¥¿¤¬¤¿¤¯¤µ¤óÍߤ·¤¤
¼«Ê¬¤Î»Å»ö¾ì¤Ï¤Á¤ç¤Ã¤ÈÊѤï¤Ã¤Æ¤¤¤ë¤Î¤Ç¥À¥ß¡¼¤Î¥Æ¥¥¹¥È¤òÍѰդ¹¤ë¤Î¤Ï¤½¤ì¤Ã¤Ý¤¤¿Í¤ËÍê¤à¤È²Äǽ¤Ç¤Ï¤¢¤ë¤Î¤Ç¤¹¤¬¡¢ËÜÍ褳¤ó¤Ê¤â¤Î¤Ïµ¡³£¤Ëºî¤é¤»¤ì¤Ð¤¤¤¤¤Î¤Ç¤¹¡£¤È¤Ï¸À¤¨¤ï¤¶¤ï¤¶¥À¥ß¡¼¥Ç¡¼¥¿À¸À®¥Ä¡¼¥ë¤òºî¤ë¤Î¤Ï¥À¥ë¤¤¤·¡¢ÊØÍø¤Ê¤â¤Î¤âÃΤé¤Ê¤«¤Ã¤¿¤Î¤Çº£¤Þ¤Ç¤Ï¤Ê¤ó¤È¤Ê¤¯¿Í³¤Àï½Ñ¤Ç¤ä¤Ã¤Æ¤Þ¤·¤¿¡£¤´¤á¤ó¤Ê¤µ¤¤¡£
ºÇ¶á¤Á¤ç¤Ã¤È Rails ¤Å¤¤¤Æ¤¤¤ë¤Î¤Ç fixture replacement ¤Îʸ̮¤Ç¤¤¤¯¤Ä¤«¥Ç¡¼¥¿À¸À®¥Ä¡¼¥ë¤ò¸«¤Æ¤¤¤¿¡Ê»î¤·¤Æ¤Ê¤¤¤Î¿¿ô¡Ë¤Î¤Ç¤¹¤¬¡¢2010ÅߤÎÃʳ¬¤Ç¤Ï Fabrication ¤Î¿Íµ¤¤¬¾å¤¬¤Ã¤Æ¤¤Æ¤¤¤ë¤è¤¦¤Ç¤¹¤Í¡£¡Ê¤Þ¤À ruby-toolbox.com ¤Ç¤Ï̾Á°¤ò¸«¤Ê¤¤¤±¤É¡£¡Ë
¤È¤¤¤¦¤³¤È¤Ç»È¤Ã¤Æ¤ß¤¿
paulelliott/fabrication - GitHub
¤Þ¤º¤Ï¤è¤¯¸«¤ë Faker ¤ÈÁȤ߹ç¤ï¤»¤ëÎã¡£
¢¨ ¤Ê¤ª¡¢url ¤ÎÉôʬ¤Î½èÍý¤Ï»²¹Í¤Ë¤·¤¿ hibariya ¤µ¤ó¤Î¥³¡¼¥É´Ý¥Ñ¥¯¥ê¤Ç¤¹¡£
µ¤¤ò¤Ä¤±¤ë¥Ý¥¤¥ó¥È
Rails ή¤Î Model ¥¯¥é¥¹¤òÁÛÄꤷ¤Æ¤¤¤ë¤Î¤Ç¡¢¤³¤Î¾ì¹ç¤Ï Company ¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô¤ËÆÉ¤ß½ñ¤¤Î¸¢¸Â¤òÍ¿¤¨¤Æ¤¯¤À¤µ¤¤¡£
Fabricate.attributes_for() ¤¹¤ë¤Ê¤é Struct ¤ò»È¤Ã¤Æ¤â·ë²Ì¤Ï¤Þ¤Ã¤¿¤¯Æ±¤¸¤Ê¤Î¤Ç°ì¤Ä¤Î¼ê¤È¤·¤Æ¤Ï¥¢¥ê¤«¤â¤·¤ì¤Þ¤»¤ó¡£
cf. Fabrication¤ò»È¤Ã¤Æ¤ß¤¿ - ¤Î¤É¤òRuby¤Ç¤¤¤Ã¤Ñ¤¤¤Ë¤·¤Æ
Faker ¤ÎÂå¤ï¤ê¤Ë forgery ¤ò»È¤¦
ruby-toolbox.com ¤Î Random Data Generation ¤Î¹àÌÜ ¤Ç¤Ï faker ¤è¤ê¤â forgery ¤ÎÊý¤¬¿Íµ¤¤¬¹â¤¤¤è¤¦¤Ç¤¹¤Î¤Ç¡¢¤³¤Ã¤Á¤â»î¤·¤Æ¤ß¤Þ¤¹¡£
¾å¤Î Faker ¤ÎÎã¤È¤Þ¤Ã¤¿¤¯Æ±¤¸¤â¤Î¤òºî¤Ã¤Æ¤ß¤Þ¤·¤¿¡£Ãæ¿È¤ò¸«¤ë¤È Faker ¤è¤ê¤â¤¹¤°»È¤¨¤ë¤â¤Î¤¬Â¿¤¤¤«¤é¤â¤·¤«¤·¤ÆÊØÍø¡© Formats ¤ä Dictionaries ¤¬½àÈ÷¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç Faker ¤è¤ê¤âºî¤ì¤ë¥À¥ß¡¼¥Ç¡¼¥¿¤Î¼ïÎà¤òÁý¤ä¤·¤ä¤¹¤¤¤Î¤«¤â¤·¤ì¤Þ¤»¤ó¡£
cf. [sinatra for flasher] ÂçÎ̤ΥÀ¥ß¡¼¥Ç¡¼¥¿¤òÊÖ¤¹API¤òºî¤ë - func09
¤Á¤Ê¤ß¤Ëº£²ó¤Î¥³¡¼¥É¤ÎÁ´ÂÎÁü
¤³¤Á¤é
gist: 748375 - fabrication with faker and forgery- GitHub
git clone ¤·¤Æ
$ ruby fab.rb -h
¤Çʬ¤«¤ê¤Þ¤¹¤¬¡¢
- class ¤ÎÀ¸À®ÊýË¡
- fabrication ¤ÈÁȤ߹ç¤ï¤»¤ë¥À¥ß¡¼¥Ç¡¼¥¿À¸À®¥é¥¤¥Ö¥é¥ê
- fabrication ¤Çºî¤ë¥Ç¡¼¥¿¤Î·Á¼°
¤òÁª¤Ö¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
»²¹Í
2010-12-21 [ĹǯÆüµ]
_ Ķº£¤µ¤é½é¤á¤Æ¤Îgisty
gisty ¤òÃΤ俤ΤϤ⤦µ²±¤Ë¤â¤Ê¤¤¤¯¤é¤¤ÀΤÀ¤·¡¢Ä¾ÀÜ´«¤á¤é¤ì¤¿¤Î¤Ï
Twitter / ¤æ¡¼¤±¡¼/ÀÖ¾¾ Í´´õ: @wtnabe gist¤Ë¥×¥í¥À¥¯¥È¥³¡¼¥É¤È¥Æ¥¹¥È¥³ ...
¤Ê¤ó¤È3·î¤Ê¤Î¤Ç9¥ö·îÁ°¤È¤¤¤¦ÂΤ¿¤é¤¯¤Ç¤´¤¶¤¤¤Þ¤¹¤¬¡¢¤è¤¦¤ä¤¯»È¤Ã¤Æ¤ß¤Þ¤·¤¿ < gisty
ɬÍפʽàÈ÷
- gisty gem
- GISTY_DIR
- git ¤Î config
- »È¤Ã¤Æ¤¤¤ë Ruby ¤¬»²¾È¤Ç¤¤ë OpenSSL ¾ÚÌÀ½ñ
gisty ¤ò»È¤¦¤Ë¤Ï clone ¤¹¤ë¾ì½ê¤ò´Ä¶ÊÑ¿ô¤Ç»ØÄꤷ¤Æ¤ª¤¯¡£post ¤¹¤ë¤À¤±¤Ç¤âƱ»þ¤Ë clone ¤¹¤ë¤Î¤Ç GISTY_DIR ¤Î»ØÄê¤Ïɬ¿Ü¤Ç¤¢¤ë¡£
¤Þ¤¿¡¢git ¤Î config ¤ÏºÇ½ªÅª¤Ë¤³¤ó¤Ê·Á¤Ë¤Ê¤ì¤Ð¤è¤¤¡£
[github]
user = USERNAME
token = XXXXXXXXXXXXXXXXXXXXXXX
¤¤¤º¤ì¤Ë¤·¤Æ¤â¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤ò¸«¤ì¤Ð¤É¤¦¤¹¤ì¤Ð¤è¤¤¤«¤Ïʬ¤«¤ë¤Î¤Ç´Êñ¡£
¼Â¤Ï¡¢4 ¤Ç¥Ï¥Þ¤Ã¤¿¡£
Ruby ¤Î»²¾È¤Ç¤¤ë OpenSSL ¾ÚÌÀ½ñ
¤Ê¤ó¤«¤³¤ìÁ°¤Ë¤â¥Ï¥Þ¤Ã¤¿µ¤¤¬¤¹¤ë¤ó¤À¤±¤É¡¢º£²ó¤Ï Mac OSX ¤Ç¤É¤¦¤ä¤Ã¤Æ²ò·è¤·¤¿¤«¡£
gisty¤òMac¤«¤é»È¤¦ - Dive into the Tech World!
¤ò¸«¤ë¤È
$ ruby -ropenssl -e 'p OpenSSL::X509::DEFAULT_CERT_FILE'
¤Ç¡¢¤É¤Î¥Õ¥¡¥¤¥ë¤ò¸«¤Ë¹Ô¤Ã¤Æ¤¤¤ë¤«Ê¬¤«¤ë¡£¸«¤ë¤È¤½¤³¤Ë¤Ï²¿¤â¥Õ¥¡¥¤¥ë¤¬¤Ê¤¤¡£
FreeBSD ¤Î¤È¤¡ÊRuby ¤Î SSL ¤Î¾ÚÌÀ½ñ¸¡¾Ú¤Î¼ºÇԤǥϥޤäƤ¤¤¿ - ¤¢¡¼¤¢¤ê¤¬¤Á(2010-01-14)¡Ë¤Ë¤Ï ca_root ´Ø·¸¤Î ports ¤¬¤¢¤Ã¤¿¤±¤É¡¢MacPorts ¤Ë¤Ï¤Ê¤¤¤Ã¤Ý¤¤¡£¤½¤ì¤Ã¤Ý¤¤¤Î¤Ï
$ port search cert
curl-ca-bundle @7.21.2 (net)
CA certificate bundle for curl
¤Ê¤Î¤Ç¡¢¤³¤ì¤òÆþ¤ì¤Æ
/opt/local/etc/openssl/cert.pem@ ->
/opt/local/share/curl/curl-ca-bundle.crt
¤Î link ¤òÄ¥¤Ã¤ÆÂн衣
»È¤¤Êý
$ gisty help
¤Ç³Îǧ¤Ç¤¤ë¡£¡Êgisty --help ¤Ç¤Ï¤Ê¤¤¡£¡Ë
gisty post *
¤È¤·¤Æ¤Ç¤¤¢¤¬¤Ã¤¿¤Î¤¬¥³¥ì¡£
gist: 748375 - fabrication with faker and forgery- GitHub
¤Õ¡¼¡£Ä¹¤«¤Ã¤¿¡£
gisty sync¤ËÃí°Õ
gisty sync ¤Ï¼«Ê¬¤Îºî¤Ã¤¿ gist Á´Éô¤ò local ¤Ë clone ¤·¤è¤¦¤È¤¹¤ë¡£¤½¤ÎºÝ¡¢
1²ó1²ó¸°¤Î passphrase ¤òʹ¤«¤ì¤ë¡£
¼«Ê¬¤ÏÉáÃÊ ssh-agent ¤È¤«»È¤ï¤Ê¤¤¤Î¤Ç¤â¤Î¤¹¤´¤¯ÌÌÅݤˤʤäÆÅÓÃæ¤Ç¤ä¤á¤Æ¤·¤Þ¤Ã¤¿¡£
sync ¤ÎºÝ¤Ë¤Ï ssh-agent ¤ä keychain ¤ò³èÍѤ¹¤Ù¤·¡£
2010-12-28 [ĹǯÆüµ]
_ Rinari+Rhtml¤ÇRails¤Î¥³¡¼¥É¤ò½ñ¤¯¤³¤È¤Ë¤·¤¿
¤¤¤Ä¤â¤Î¤³¤È¤Ê¤¬¤é¤¹¤´¤¯º£¤µ¤é¤ÊÏá£
¤º¤Ã¤È ruby-mode.el °ìËܤǤä¤Ã¤Æ¤¤¿¤Î¤À¤±¤É¡¢Rails ¤Î¥³¡¼¥É¤Ï¤É¤¦¤âÆÉ¤ß¤Ë¤¯¤¤¤·¡¢¤Ê¤ó¤«¤½¤¦¸À¤¨¤Ð rails.el ¤Ã¤ÆÊ¹¤¤¤¿¤³¤È¤¢¤Ã¤¿¤Ê¤¡¤È»×¤¤½Ð¤·¤ÆÄ´¤Ù¤Æ¤ß¤¿¡£·ë²Ì¡¢
- rails.el ¤Ï 2007ǯ¤Ç»ß¤Þ¤Ã¤Æ¤¤¤Æ»ö¼Â¾å¤Î discontinued ¾õÂÖ
- Rinari ¤È¤¤¤¦ minor mode ¤¬¤¢¤ë¤é¤·¤¤
minor mode ¤ÇÂç¾æÉפʤ󤫤¤¤Ê¤È»×¤Ã¤¿¤±¤ì¤É¡¢¿´ÇÛ̵ÍѤǤ·¤¿¡£*1
Rinari
Rinari: Ruby on Rails Minor Mode for Emacs
¥¤¥ó¥¹¥È¡¼¥ë¤ÎÃí°ÕÅÀ
git clone ¤ò»È¤Ã¤Æ install ¤¹¤ëºÝ¤Ï submodule ¤òÍ׵᤹¤ë¡£default ¤Ç¤Ï git protocol ¤Ç¼èÆÀ¤·¤è¤¦¤È¤¹¤ë¤Î¤Ç git protocol ¤ÎÄ̤é¤Ê¤¤´Ä¶¤Ç¤Ï¥¤¥ó¥¹¥È¡¼¥ë¤Ë¼ºÇÔ¤¹¤ë¡£
.gitmodules ¤òÊÔ½¸¤·¤Æ¤«¤é submodule ¤ò¼èÆÀ¤·¤Ë¤¤¤±¤Ð¤¤¤¤¤Î¤«¤â¤·¤ì¤Ê¤¤¤±¤É¡¢¤ä¤Ã¤Æ¤ß¤Æ¤Ê¤¤¤Î¤Ç¤è¤¯Ê¬¤«¤é¤Ê¤¤¡£
Rinari ¤¬¤ä¤Ã¤Æ¤¯¤ì¤ë¤³¤È
Introduction - Rinari: Ruby on Rails Minor Mode for Emacs
- navigation ¡Ê MVC ¤ä migration ´Ö¤Î¹Ô¤Íè )
- Web server Ω¤Á¾å¤²¤¿¤ê
- ŬÀÚ¤Ê sql-mode ¤òµ¯Æ°¤·¤¿¤ê
- ¥Æ¥¹¥È¤ò»Ù±ç¤·¤Æ¤¯¤ì¤¿¤ê
¤Ê¤É¡£¤¢¤ì¡¢¡ÖÆÉ¤ß¤Ë¤¯¤¤¡×¤È¤¤¤¦ÌäÂê¤Ï²ò·è¤·¤Ê¤¤¤è¤¦¤Ê¡£
Rhtml-mode ¤òÄɲÃ
¡ÖÆÉ¤ß¤Ë¤¯¤¤¡×¤Î¤¬»Ï¤Þ¤ê¤Ê¤Î¤ÇÄɵᡣ
Add Ons - Rinari: Ruby on Rails Minor Mode for Emacs
¤ó¡¼¤Ç¤â YAML ¤â CSS ¤â JavaScript ¤âº¤¤Ã¤Æ¤¤¤Ê¤¤¤Î¤Ç¡¢Äɲ乤ë¤È¤·¤¿¤é Rhtml ¤«¤Ê¡£
¤¢¤È yasnippet-rails ¤òÆþ¤ì¤Æ¤ª¤¤¤¿¡£¡Êyasnippet ¤Ï¥¤¥ó¥¹¥È¡¼¥ëºÑ¤ß¡Ë
rhtml-mode ¤Î¿§¤Å¤±¤¬¤Á¤ç¤Ã¤Èµ¤¤ËÆþ¤é¤Ê¤«¤Ã¤¿¤Î¤Ç
M-x customize-group
¤Ç
erb-faces
¤«¤é¤Á¤ç¤Ã¤È¤¤¤¸¤Ã¤¿¡£
(custom-set-faces ... '(erb-delim-face ((t (:foreground "blue" :weight bold)))) '(erb-exec-face ((t (:inherit erb-face :underline t)))) '(erb-face ((((class color) (min-colors 8)) (:underline "black")))) '(erb-out-delim-face ((((background dark)) (:foreground "blue" :weight bold)))) ...
¤³¤ó¤Ê´¶¤¸¡£
·ë¶É Rails ¤Î¥³¡¼¥É¤ÏÆÉ¤ß¤Ë¤¯¤¤¤Þ¤Þ
.html.erb ¤ÏÊÔ½¸¤·¤ä¤¹¤¯¤Ê¤Ã¤¿¤·¡¢¥³¡¼¥É´Ö¤Î°Üư¤â¤ä¤ê¤ä¤¹¤¯¤Ê¤Ã¤¿¡£¤·¤«¤· Ruby ¤Î¥³¡¼¥É¤ÏÆÉ¤ß¤ä¤¹¤¯¤Ê¤é¤Ê¤«¤Ã¤¿¡£
Rails ¤Î¥³¡¼¥É¤Ï¤Ê¤ó¤Æ¤¤¤¦¤« helper °Ê³°¤ÏÀë¸ÀŪ(?)²á¤®¤Æ¡¢ÉáÄ̤Υ³¡¼¥É¤Î¤è¤¦¤Ë¥á¥½¥Ã¥É¤Î¥«¥¿¥Þ¥ê¤òÌܤ¬Ç§¼±¤Ç¤¤Ê¤¤¡£¤½¤Î¤»¤¤¤«¤É¤³¤Ç²¿¤ò¤ä¤Ã¤Æ¤¤¤ë¤Î¤«¤è¤¯Ê¬¤«¤é¤Ê¤¤´¶¤¸¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¡£¾¯¤Ê¤¯¤È¤â¸Å¤¤ Ruby ¥³¡¼¥É¤Ë¤·¤«ÆëÀ÷¤ß¤Î¤Ê¤¤¿Í´Ö¤Ë¤Ï¤¤¤µ¤µ¤«¤Ä¤é¤¤¤â¤Î¤¬¤¢¤ë¡£¤â¤·¤«¤¹¤ë¤È¤³¤ì¤¬ DSL ¤ÈÁû¤¬¤ì¤¿ÊÒÎڤʤΤ«¤â¤·¤ì¤Ê¤¤¤¬¡£
¤È¤ê¤¢¤¨¤º²¿¤«¤Î¥Ä¡¼¥ë¤Ç·àŪ¤ËÆÉ¤ß¤ä¤¹¤¯¤Ê¤ë¤È¤¤¤¦¤³¤È¤Ï¤Ê¤µ¤½¤¦¤Ê¤Î¤Ç¡¢¾¯¤·¤º¤ÄÌܤò´·¤é¤·¤Æ¤¤¤¯¤·¤«¤Ê¤¤¤ß¤¿¤¤¡£
¤È¤Ï¸À¤¨ Rinari ¤ÏÊØÍø¡£¼ý³Ï¥¢¥ê¡£
*1 ¤Û¤ó¤È¤ÎºÇÀèü¤Ï Rinari ¤¸¤ã¤Ê¤¤¤é¤·¤¤¤ó¤À¤±¤É¡¢¤Û¤È¤ó¤É¤Î¥Ä¡¼¥ë¤ÇÀèü¤òÄɤäƤʤ¤¼«Ê¬¤Ë¤Ï¤Þ¤Ã¤¿¤¯ÌäÂê¤Ê¤¤¡£