Bonfire iOS #3
ελʔτΞοϓͰͷQABonfire iOS #3Ҫ্ɹܙҰ @dreamagicjp
View Slide
Ҫ্ ܙҰ@dreamagicjphttp://about.me/keiichiinoue• QAΤϯδχΞ 10• Six Apart (2007 - 2015/10)• ϒϩάΞϓϦɾϓϥοτϑΥʔϜ• QA & ϓϩδΣΫτϚωʔδϟʔ• Toreta (2015/11 - )
ҿ৯ళ͚ ༧/ސ٬ாαʔϏε
Toreta, Inc.
༧ாిͰड͚ͨ༧Λ iPad ʹೖྗͯ͠ཧސ٬ாੵ͞Εͨސ٬σʔλΛ͓ͬͯͯͳ͠վળूܭɾੳ༧ใΛੳ͠ళฮӡӦɾܦӦʹ׆༻Σϒ༧ళฮͷΣϒϖʔδ͔Β༧डɺϝσΟΞ࿈ܞ
גࣜձࣾτϨλ• ۀ 20137݄• ొళฮ 9,000+• ࣾһ 90+• ౦ژɾେࡕɾԬɾγϯΨϙʔϧ
ೖࣾ• ೖࣾ 201510݄(ۀ2͘Β͍)• ΤϯδχΞͱͯ͠ 10ਓ͘Β͍• QAΤϯδχΞͱͯ͠ 1ਓ
QA?• ৬ձࣾɾ৫ʹΑͬͯ·ͪ·ͪ•ςετΤϯδχΞʁ• ςελʔʁ• ࠷ޙͷ൪ɺ佃࣋ͬͯΔɺ͜Θ͍• ਓʹΑͬͯQAͷΠϝʔδ͕ҟͳΔ• ೖࣾ࣌ʹʮݞॻ͖Ͳ͏͢Δʁ·͔ͤΔΑʯͱݴΘΕͨ• ςετΤϯδχΞͱ໎ͬͨڍ۟ QAΤϯδχΞΛબ• ϓϩμΫτͷ࣭͚ͩͰͳ͍͘ൣғͰίϛοτ͍ͨ͠
ςετ͋͘·Ͱ࣭อূͷҰखஈ• ςετ͚ͩͰ୲อͰ͖Δ࣭ʹݶք͕͋Δ• B2B SaaS ϏδωεʹॏཁͳαʔϏε࣭ɾӡ༻࣭ࢧ͍͑ͨ• ͓٬༷͕ϓϩμΫτΛར༻ͯ͠՝ΛղܾͰ͖Δ͜ͱ• ͓٬༷͕ӡ༻ɾαϙʔτʹ৴པͰ͖Δ͜ͱ• ͓٬༷͕ظؒ҆৺ͯ͠ϓϩμΫτΛར༻Ͱ͖Δ͜ͱ• τϨλ͕ߴͳαΠΫϧͰՁΛಧ͚ΒΕΔ͜ͱ• 2ؒͰ৺͕͚ͨ͜ͱɺͬͯΑ͔ͬͨ͜ͱΛ͠·͢
1. ސ٬ΛΔ• ಋೖళΛ๚͢Δ• ӦۀಉߦͰɾ৽ػೳώΞϦϯάͰɾϓϥΠϕʔτͰʢࠓ20ճ͘Β͍ʣ• iPad ͕Ͳ͜ʹஔ͔Ε͍ͯΔ͔ɺͲͷΑ͏ʹΘΕ͍ͯΔ͔• σʔλ͔Βར༻ঢ়گΛѲ͢Δ• BigQuery ʹσʔλΛੵ͠ Metabase, Redash ͰݟΔ• ྫ) ৽͍͠ઃఆ߲ͷར༻ঢ়گɺΞϓϦΛ͏ͷΛఘΊ͍ͯͳ͍͔• ςετγφϦΦɺόάΛτϦΞʔδ͢Δࡍͷج४ʹ
2. Ձͷߴ͍ςετʹूத͢Δ• ςετʹ͔͚ΒΕΔϦιʔεݶΒΕ͍ͯΔ• ॏཁͳػೳɺओཁͳγφϦΦʹଟ࣌ؒ͘Λׂ͘• ؔऀΛςετʹר͖ࠐΉ• ηʔϧεɾαϙʔτ : ͓͞ΘΓձ• ػೳཧղΛਂΊΔͱͯ͠׆༻ͯ͠Β͏• ΤϯδχΞ: E2EςετϓϩμΫτͱಉ͡ݴޠɺಉ͡ϦϙδτϦͰཧ• iOS = XCUITest (Swift) / Angular = Protractor ( TypeScript)
3. ͖͋͢ΒࣗಈԽͯ࣌ؒ͠Λ࡞Δ• ΞϓϦͷςετɾσϓϩΠͷࣗಈԽ• CircleCI (CircleCI 2.0 Α͛͞)• ࡉ͔͍λεΫ fastlane Խ / Hubot Խ• topic ϒϥϯνͷΞϓϦͷϏϧυ -> σβΠφ֬ೝ༻• Ad-Hoc ΞϓϦͷϏϧυ -> API ࿈ܞઌʹ༻• Crowdin Ͱཧ͍ͯ͠Δ༁Λద༻ͯ͠ΞϓϦΛϏϧυ -> ւ֎൛ςετ༻• GitHub Issue ͔Β͚ࣾϦϦʔεϊʔτΛࣗಈੜ
GitHubCircleCIHockeyAppSlackϦΫΤετϨϙʔτHubotϦΫΤετΞϓϦσϓϩΠ Ϩϙʔτ DeveloperPushSlackDev/Designprovisioningprofile
4. ։ൃɾӡ༻ͷ࣋ଓՄೳੑΛߴΊΔ• ࣾͷ༷ڞ༗ΛదͳϨϕϧʹอͭ• ࠷ॳ͔ΒυΩϡϝϯτΛॻ͖͗͢ͳ͍ɺΓͳ͚Εॻ͖͘͢Β͍Ͱ• αϙʔτνʔϜΛରಡऀͱͯ͠ esa ʹετοΫ͢Δ• ϦϦʔεαΠΫϧΛݻఆ͢Δ• ϦϦʔεʹؔ࿈͢ΔλεΫΛલͬͯ४උ͘͢͠ͳΔɺϖʔεΛ͔ͭΈ͍͢• खಈςετέʔεΛมߋͨ͠ཧ༝Λهʹ͢• ͕࣌ؒܦա͢Δͱςετέʔε͕Ճ͞ΕͨܦҢ͕ෆ໌ʹͳΔ• Markdown ͰςετΛॻ͍ͯ GitHub Ͱཧ & ίϛοτϝοηʔδʹ PR ඥ͚ͮ
http://tech.toreta.in/entry/excel-to-markdown-github-circleci
5. ͷ՝ΛαϙʔτͰิ͢Δ• B2B ͳͷͰސ٬ʹిͰϦʔνͰ͖Δ• ࠶ݱੑ͕͍ෆ۩߹ͷௐࠪΛ͓ئ͍͢Δ• Bugsnag ͰΫϥογϡूܭ -> ళฮผผΫϥογϡΛ Slack ʹ௨• αϙʔτܦ༝ͰళฮʹώΞϦϯάͯ͠Β͏͜ͱ• αϙʔτରόʔδϣϯΛݶఆͯ͠ςετίετΛԼ͛Δ• αϙʔτର iOS όʔδϣϯΛߜΔʢҰͭલͷϝδϟʔόʔδϣϯ·Ͱʣ• چόʔδϣϯΛ͍ͬͯΔళฮϦετΛચ͍ग़ͯ͠ిͰΞοϓσʔτͷ͓ئ͍
6. αϙʔτӡ༻ͷ՝Λٕज़Ͱղܾ͢Δ• αϙʔτͷҙݟΛʹੜ͔͢• αϙʔτνʔϜɺΞΧϯτཧνʔϜͱि1ճϛʔςΟϯά• ͓Βͤػೳʢαϙʔτ͔ΒಛఆͷళฮͷΞϓϦʹ͓ΒͤΛදࣔ͢Δػೳʣ• ͍߹Θͤ൪߸ʢిͰళฮ໊Λฉ͍͓ͯళΛಛఆͰ͖ͳ͍͜ͱ͕͋Δʣ• ઃఆը໘ͷจݴվળ• ։ൃϦιʔεͷҰ෦Λੵۃతʹӡ༻վળʹׂ͘• ӡ༻ͰΧόʔɾόουϊϋΛղফ͠ɺӡ༻ίετΛ݈શʹอͭ• ࣾπʔϧΛվળͯ͠ɺαϙʔτ࣭վળɾॳظಋೖίετվળʹੜ͔ͯ͠Β͏
·ͱΊ• ελʔτΞοϓͷݱ૯ྗઓ • ސ٬ͷ͜ͱΛΑ͘Δ• Ձ͕ߴ͍͜ͱʹूதͯ͠ɺଞʢ͍ͬͨΜʣࣺͯΔ• ࣌ؒΛՔ͙ɺίʔυॻ͘ɺίπίπࣗಈԽ• ϓϩμΫτͷΛϓϩμΫτ͚ͩɺαϙʔτͷΛαϙʔτ͚ͩͰແཧΓղܾ͠ͳ͍ʢϓϩμΫτ࣭ͱαϙʔτ࣭ͷόϥϯεʣ• ྡྖҬͱͷ伱ؒʹ·ͩվળͷ༨͕͋Δ
We are hiring!!!QA ΤϯδχΞSET (Software Engineer in Test)iOS ΤϯδχΞhttps://www.wantedly.com/companies/toreta/projects
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠