Upgrade to Pro — share decks privately, control downloads, hide ads and more …

1年近く動かないまま放置されていたiOSのUITestを直した話

8847086af047cbf895ab3277b59529fe?s=47 ANDPAD inc
November 08, 2021

 1年近く動かないまま放置されていたiOSのUITestを直した話

2021.11.04 【アンドパッド×ユニファ】業界変革型 Vertical SaaS のiOS/Android開発最前線

8847086af047cbf895ab3277b59529fe?s=128

ANDPAD inc

November 08, 2021
Tweet

Transcript

  1. When UITest is abandoned. !ʲΞϯυύουºϢχϑΝʳۀքมֵܕ7FSUJDBM4BB4ͷJ04"OESPJE։ൃ࠷લઢ ೥ۙ͘յΕͨ··์ஔ͞Ε͍ͯͨJ04ͷ6*5FTUΛ௚ͨ͠࿩

  2. w ໊લࠤ౻ढ़ี w 5XJUUFS!VTIJTBOUPBTPCV w ʹ"/%1"%ʹKPJO w J04"OESPJEͷ։ൃʹैࣄ w झຯ⚽☕

    ࣗݾ঺հ
  3. ͋Β͢͡

  4. ೖ͔ࣾΒϲ݄͘Β͍ͯ͠ ʮJ04ͷ6*5FTUΛ௚͢ʯͱ͍͏όοάϩάͷ୲౰ʹͳͬͨ

  5. ผͷ13ʢϲ݄લʣͷͪΐͬͱͨ͠ϛεҰׅஔ׵ʹΑͬͯ 6*5FTUͷϏϧυ͕ͦ΋ͦ΋௨Βͳ͘ͳͬͨͷͰͦΕΛ௚͢ͱͷ͜ͱɻ ָউָউʙ

  6. ௚ͨ͠ͷʹ $*্Ͱ6*5FTU͕TVDDFTTʹͳΒͳ͍ʜͳͥʁ

  7. $*ͷཤྺΛ௥ͬͯΈΔͱʜ ࠷ޙʹ6*5FTU͕TVDDFTTʹͳͬͨͷ͕΄΅೥લͱ͍͏͜ͱ͕൑໌

  8. ࠓ೔࿩͢͜ͱ ೥ۙ͘յΕͨ··์ஔ͞Ε͍ͯͨJ04ͷ6*5FTUΛ௚͍ͯ͘͠͏͑Ͱ ֶΜͩ͜ͱ

  9. લఏ ͜Ε·Ͱ6OJU5FTU͸ൺֱతॻ͍͖͕ͯͨɺ6*5FTUΛॻ͘ͷ͸͜Ε͕ॳΊͯ

  10. w 6*5FTU͕Ͳ͏ͯ͠յΕͨ··์ஔ͞Εͯ͠·͏ͷ͔ w ͲͷΑ͏ͳ6*5FTU͕յΕͯ͠·͏ͷ͔ w 6*5FTUΛ௚͍ͯ͘͠͏͑ͰֶΜͩ͜ͱɾࢥͬͨ͜ͱ ΞδΣϯμ

  11. 6*5FTU͕Ͳ͏ͯ͠յΕͨ··์ஔ͞Εͯ͠·͏ͷ͔

  12. ࠓճͷέʔεͰ͍͏ͱɺ୯७ʹ։ൃऀͷҟಈʹΑΔ΋ͷΆ͍🤔 6*5FTU͕Ͳ͏ͯ͠յΕͨ··์ஔ͞Εͯ͠·͏ͷ͔

  13. ࠷ޙʹ$*্Ͱ 6*5FTU͕੒ޭͨ͠ 6*5FTU͕Ͳ͏ͯ͠յΕͨ··์ஔ͞Εͯ͠·͏ͷ͔ 2020/08

  14. ࠷ޙʹ$*্Ͱ 6*5FTU͕੒ޭͨ͠ 6*5FTUΛ௚͢ͷʹணख 6*5FTU͕Ͳ͏ͯ͠յΕͨ··์ஔ͞Εͯ͠·͏ͷ͔ 2020/08 2021/04

  15. ࠷ޙʹ$*্Ͱ 6*5FTU͕੒ޭͨ͠ 6*5FTUΛ௚͢ͷʹணख େ͖Ίͳ։ൃऀͷ ҟಈ͕ൃੜ 6*5FTU͕Ͳ͏ͯ͠յΕͨ··์ஔ͞Εͯ͠·͏ͷ͔ 2020/08 2020/10 2021/04

  16. w 6*5FTUΛϝϯςͰ͖Δਓ͕গͳ͔ͬͨʁ w $*͕GBJMFEͰ͋Γଓ͚Δ͜ͱ͕౰ͨΓલͷ؀ڥͩͬͨ͜ͱ͕໰୊ʁ Ͳ͏͋Ε͹ྑ͔ͬͨͷ͔🤔

  17. w 6*5FTUΛϝϯςͰ͖Δਓ͕গͳ͔ͬͨʁ w ෳ਺ͷ։ൃऀʹ6*5FTUͷϝϯςͷλεΫΛׂΓৼΔ w $*͕GBJMFEͰ͋Γଓ͚Δ͜ͱ͕౰ͨΓલͷ؀ڥͩͬͨ͜ͱ͕໰୊ʁ w ʮGBJMFEͨ͠Βɺ͙͢ʹͦΕΛ௚͢ʯͷపఈɺจԽͱͯ͠ৢ੒ͤ͞Δ ࠓऔΓ૊ΜͰ͍Δ͜ͱʢ͋͘·Ͱӡ༻ϕʔε͕ͩʣ

  18. ͲͷΑ͏ͳ6*5FTU͕յΕͯ͠·͏ͷ͔

  19. ͲͷΑ͏ͳ6*5FTU͕յΕͯ͠·͏ͷ͔ w ࢓༷มߋʹΑΔ΋ͷ w ςετΞΧ΢ϯτʹؔ͢ΔσʔλͷมԽʹΑΔ΋ͷ w աڈʹೖΕ͍ͯͨXPSLBSPVOEʹΑΔ΋ͷ w ʢҰ൪ϋϚͬͨ΋ͷʣϥϯμϜʹίέΔṖͷݱ৅

  20. ͲͷΑ͏ͳ6*5FTU͕յΕͯ͠·͏ͷ͔ w ࢓༷มߋʹΑΔ΋ͷ w ςετΞΧ΢ϯτʹؔ͢ΔσʔλͷมԽʹΑΔ΋ͷ w աڈʹೖΕ͍ͯͨXPSLBSPVOEʹΑΔ΋ͷ w ʢҰ൪ϋϚͬͨ΋ͷʣϥϯμϜʹίέΔṖͷݱ৅

  21. ςετΞΧ΢ϯτʹؔ͢ΔσʔλͷมԽʹΑΔ΋ͷ w ςετΞΧ΢ϯτʹؔ͢Δσʔλʢ%#ʣͷมԽʹΑΔ 6*ͷมԽʹΑͬͯɺ6*5FTU͕յΕΔύλʔϯ w 6*5FTU͋Δ͋Δʁ w վળࡦޙड़

  22. աڈʹೖΕ͍ͯͨXPSLBSPVOEʹΑΔ΋ͷ w աڈʹೖΕͨXPSLBSPVOEͳίʔυʹΑͬͯٯʹ6*5FTU͕յΕͨ ύλʔϯ w XPSLBSPVOEΛͳ͘͢ͱਖ਼ৗʹಈ͘ w ʮ9$6*5FTU΋ͪΌΜͱਐาͯ͠ΔΜͩ😁ʯͱલ޲͖ʹଊ͑ͯΔ

  23. ʢҰ൪ϋϚͬͨ΋ͷʣϥϯμϜʹίέΔṖͷݱ৅ w ݁࿦͔Βॻ͘ͱ w ͋Δ6*5FTUΛ࣮ߦ͢Δͨͼʹσʔλ͕૿͍͑ͯͬͨ w σʔλ͕૿͑ͨ͜ͱʹΑͬͯʮϦετͷઌ಄ͷཁૉΛऔಘʯ͢Δॲཧ͕ͳͥ ͔ϥϯμϜͰίέΔͱ͍͏ݱ৅͕ʜ w σʔλΛਅͬ͞Βʹͯ͠ɺʮ࣮ߦ͢Δͨͼʹσʔλ͕૿͍͑ͯͬͨʯ໰୊Λ

    ղফͨ͜͠ͱͰϥϯμϜͰίέͳ͘ͳͬͨ🎉
  24. ʢҰ൪ϋϚͬͨ΋ͷʣϥϯμϜʹίέΔṖͷݱ৅ w ฐٕࣾज़ސ໰Ͱ͋Δ!UBSBQQP͞Μʹ૬ஊͯ͠ղܾͰ͖ͨ΋ͷ w ʮϥϯμϜͰίέΔʯܥͷςετΛମܥతʹ·ͱΊͨૉ੖Β͍͠ࢿྉΛڞ ༗ͯ͠΋Βͬͨ w ࠓճͷέʔε͸ʮʢ6OJU5FTUʹ͸ͳ͘ʣ6*5FTUͳΒͰ͸ͷ΋ͷʯͱೝࣝ͠ ͍ͯΔͷͰݸਓతʹ໨͔Βྡྷͩͬͨ

  25. None
  26. None
  27. 6*5FTUΛ௚͍ͯ͘͠͏͑ͰֶΜͩ͜ͱɾࢥͬͨ͜ͱ

  28. 6*5FTUΛ௚͍ͯ͘͠͏͑ͰֶΜͩ͜ͱɾࢥͬͨ͜ͱ w 6*5FTU༻ͷ؀ڥΛͰ͖Δ͚ͩ༻ҙ͢Δ w ʮϖʔδΦϒδΣΫτύλʔϯʯ͸ಡΈ΍͍͢ w 6*7JFXTFU"OJNBUJPOT&OBCMFE GBMTF ͳͲͰͰ͖Δ͚ͩ6*5FTUʹ͔͔Δ࣌ ؒΛ୹ॖ͢Δ

  29. 6*5FTU༻ͷ؀ڥΛͰ͖Δ͚ͩ༻ҙ͢Δ w ։ൃσόοάʹ΋ར༻͞Ε͍ͯΔ؀ڥͰ6*5FTUΛߦ͏ͱɺ w ઌड़ͨ͠ʮςετΞΧ΢ϯτʹؔ͢ΔσʔλͷมԽʹΑΔ΋ͷʯ໰୊ w ʢ6*5FTUͱͯ͠͸ҙਤͯ͠ͳ͍ʣΞϓϦىಈ࣌ʹϞʔμϧ͕දࣔ͞ΕΔ͜ ͱ͕͋Δ w ͳͲͷ͜ͱ͕ىͬͨ͜ͷͰɺՄೳͰ͋ΔͳΒ6*5FTU༻ͷ؀ڥΛ༻ҙͯ͋͛͠

    Δͱྑ͍ʢ·ͩͰ͖͍ͯͳ͍ʣ
  30. ʮϖʔδΦϒδΣΫτύλʔϯʯ͸ಡΈ΍͍͢ w 6*5FTUΛҾ͖ܧ͍ͩଆͱͯ͠͸ɺϖʔδΦϒδΣΫτύλʔϯͰॻ͔Ε͍ͯ ͨͨΊඇৗʹίʔυ͕ಡΈ΍͔ͬͨ͢ w ϖʔδΦϒδΣΫτύλʔϯͱ͸ʁ w ʮը໘Λ̍ͭͷΦϒδΣΫτͱͯ͠ఆٛͯ͠ɺ6*ཁૉͷಛఆɾૢ࡞ͳͲͷ ৄࡉ͸ͦͪΒʹӅṭ͢Δ͜ͱͰɺ6*5FTUͷՄಡੑΛ͋͛Δʯͱ͍͏Ұछͷ σβΠϯύλʔϯ

  31. 6*7JFXTFU"OJNBUJPOT&OBCMFE GBMTF ͳͲͰͰ͖Δ͚ͩ6*5FTUʹ͔͔Δ࣌ؒΛ୹ॖ͢Δ w 6*5FTU͸࣮ߦ͕͔࣌ؒͳΓ௕͘ͳΔ w 6*7JFXTFU"OJNBUJPOT&OBCMFE GBMTF Λઃఆ͢ΔͳͲɺͰ͖Δ͚࣮ͩߦ࣌ ؒΛ୹͘͢Δ

  32. ·ͱΊ w 6*5FTU͕͍͟յΕͨͱ͖ʹ์ஔ͞Εͳ͍Α͏νʔϜͷӡ༻Λඋ͑Δ w ϥϯμϜͰམͪΔςετ͸೉͍͠ͷͰɺମܥతͳ஌ࣝ͸཈͓͑ͯ͘ͱྑͦ͞͏

  33. ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠☕