JS-App「破綻しないWebアプリ開発のためのツール勉強会」でのLT資料です。
CucumberʹΑΔHTML5ΞϓϦͷड͚ೖΕςετࣗಈԽJS-Appʮഁ͠ͳ͍WebΞϓϦ։ൃͷͨΊͷπʔϧษڧձʯ2013.04.28 ࢤా ༟थ134݄29݄༵
View Slide
ࣗݾհ• ࢤా ༟थ (Twitter: @shida, Facebook: shida1977)• 20128݄ಠཱ (ג)ϏʔɾΞδϟΠϧ ද• ࣗΦϑΟεɺΞϧόΠτ1໊ɺௗऔͷύʔτφʔ1໊ɺόϦͷύʔτφʔ1໊ɻ• ελʔτΞοϓΛޭ͍ͤͨ͞ɻͦͷ͓ख͍Λओʹͬͯ·͢ɻ• ΞδϟΠϧɺϦʔϯɾελʔτΞοϓΛͬͯɻ• ২ా͞Μͱా͞ΜͱTDDͷษڧձΛִिͰ͓ͬͯͯ༠͍Λɻ• ͦͷੲJavaScriptͰ͍͔ͭ͘دߘ͍͍ͤͯͨͩͯ͞·ͨ͠• 2007 @IT࿈ࡌશ8ճ ʮύλʔϯͱϥΠϒϥϦͰ࡞ΔAjax͓͍͍͠Ϩγϐʯ• 2008 ThinkIT࿈ࡌશ4ճʮWAI-ARIAʹΑΔΞΫηγϒϧRIAʯ• 2009 @IT࿈ࡌશ2ճʮجૅ͔Β͔ΔɺmixiΞϓϦ࡞ೖʯ134݄29݄༵
Cucumber͕ࢲͨͪʹͨΒ͢ͷ• ճؼςετΛࣗಈԽͯ͘͠ΕΔ• σάϨΛڪΕͳͯ͘͢Ή• ίʔυʹखΛೖΕΔͷ͕ා͘ͳ͘ͳΔ• ϦϑΝΫλϦϯάͨ͠Γͯ͠ɺίʔυΛΫϦʔϯʹอͯΔ• ੵۃతʹࡉ͔͍όάमਖ਼༷มߋʹԠ͑ΒΕΔ• ϏδωεՁΛٻͰ͖Δ• ίʔυΛݟͳ༷͕͔ͯ͘Δ• υΩϡϝϯτΛॻ͘खؒΛܰݮͰ͖Δ• ίʔσΟϯάͷྲྀΕʹύλʔϯ͕Ͱ͖ͯϦζϜ͕Ͱ͖Δ(BDD)134݄29݄༵
ίʔσΟϯά2ഒ͘Β͍ʹͳͬͪΌ͏?• ͔ͨ͠ʹ׳Εͳ͍͏ͪͦ͏͔• Ͱɺ࿅श͍͚ͯ͠ઈରʹૣ͘ͳΔ• աڈʹॻ͍ͨςετ༻ϝιουͷ࠶ར༻ͰָʹͳΔ• ͍ΖΜͳΛؚΊͯൺֱ͠ͳ͍ͱ• υΩϡϝϯτॻ͘• ςετ(ճؼςετؚΉ)• த్ࢀՃҾ͖ܧ͗ͷڭҭ• ड͚ೖΕςετ134݄29݄༵
RubyͰ͠ΐ? RailsͰ͠ΐ?• ͍ΖΜͳݴޠͰಈ͘Έ͍ͨͰ͢ɻ(abcॱʣ• Erlang• Java• Perl• PHP• Python• Ruby• .NET134݄29݄༵
αϯϓϧ• https://github.com/shida/jsapp1_what_is_cucumber.git• Gherkin• → εςοϓఆٛ(CapybaraͰ)• → Selenium• → Poltergeist• → ͬͱ͍Ζ͍Ζ134݄29݄༵
• ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠134݄29݄༵