グーペのE2Eテスト運用事情

022fe97731555344992c588527848cb7?s=47 hypermkt
October 27, 2016

 グーペのE2Eテスト運用事情

022fe97731555344992c588527848cb7?s=128

hypermkt

October 27, 2016
Tweet

Transcript

  1. όʔνʔ(.01&1"#0JOD ʲϖύϘºϓϨΠυʳ5FDI.FFUVQʙࣗಈςετɾ$*ฤ άʔϖͷ&&ςετӡ༻ࣄ৘

  2. ࣗݾ঺հCZ1)16OJU class MeTest extends PHPUnit_Framework_TestCase { protected $me; public function

    setUp() { $this->me = new Me(); } public function testNickname_ReturnMyNickName_WhenValidPerson() { $this->assertEquals('όʔνʔ', $this->me->nickname()); } public function testCompany_ReturnMyCompanyName_WhenValidPerson() { $this->assertEquals('GMO ϖύϘ', $this->me->company()); } public function testJob_ReturnMyJob_WhenValidPerson() { $this->assertEquals('αʔόʔαΠυΤϯδχΞ', $this->me->job()); } }
  3. ࣗݾ঺հCZ1)16OJU $ vendor/bin/phpunit tests/MeTest.php PHPUnit 5.4.8 by Sebastian Bergmann and

    contributors. ... 3 / 3 (100%) Time: 45 ms, Memory: 3.00MB OK (3 tests, 3 assertions)
  4. ϗʔϜϖʔδ࡞੒αʔϏεʮάʔϖʯ IUUQTHPPQFKQ

  5. &&ςετ ࠓ೔͓࿩͍ͨ͜͠ͱ͸

  6. άʔϖςετίʔυঢ়گ wϢχοτςετɺ&&ςετ͸ແ͔ͬͨ wਓһ૿ՃɺϏδωεͷ֦େʹ൐͍ΞϓϦέʔγϣϯͷ҆ఆੑΛ୲อ͢ΔͨΊɺ ςετίʔυͷ੔උ͕ٸ຿ͱͳͬͨ w։ൃνʔϜϝϯόʔʹςετίʔυͷඞཁੑͱ࣮૷ํ๏Λڞ༗ wϢχοτςετ 1)16OJU &&ςετͷಋೖͱςετίʔυͷ౎౓௥Ճ w·ͩ·ͩςετέʔε͸ѹ౗తʹ଍Γͳ͍͕ɺܧଓతʹ૿͍͑ͯΔ ೥൒લ

  7. &&ςετͱ͸ wΤϯυπʔΤϯυςετ w8FCαΠτ΍ΞϓϦέʔγϣϯͷʮ։͔࢝Βऴྃ·Ͱʯ͕ظ଴௨Γʹಈ࡞͢ Δ͔Λςετ͢Δ͜ͱ

  8. ظ଴௨Γʹಈ࡞͢Δͱ͸ʁ ϩάΠϯͯ͠ ͓஌Βͤߋ৽ը໘Λೖྗͯ͠

  9. ظ଴௨Γʹಈ࡞͢Δͱ͸ʁ ొ࿥ϘλϯΛԡ͢ͱ ϝοηʔδ͕දࣔ͞Εͯ ొ࿥͓ͨ͠஌Β͕ͤ දࣔ͞Ε͍ͯΔ͜ͱ

  10. Α͘खಈ֬ೝ͍ͯ͠Δ͚Ͳ मਖ਼ͷ౓ʹ֬ೝ͢Δͷ͸खؒͩɾɾɾ

  11. ͦ͜Ͱ&&ςετͷग़൪ͩʂ

  12. άʔϖͷ&&ӡ༻ࣄ৘

  13. γεςϜߏ੒

  14. &&ςετCZ+FOLJOT ࣾ಺։ൃ؀ڥʹσϓϩΠ +FOLJOT"1*ʹ௨஌ &&ςετͷδϣϒΛ࣮ߦ ݁ՌΛ௨஌

  15. &&ςετϛυϧ΢ΣΞ؀ڥ 3VCZ੡ςετϑϨʔϜϫʔΫ 8FCΞϓϦέʔγϣϯͷ ςετϑϨʔϜϫʔΫ $BQZCBSB༻1IBOUPN+4υϥΠόʔ )FBEMFTT8FCLJUϕʔεϒϥ΢β
 ʢཁ͸ը໘ແ͠ͷίϚϯυϕʔεϒϥ΢βʣ

  16. άʔϖ&&ςετͷಛ௃ wࣾ಺؀ڥαʔόʔ΁σϓϩΠ࣌ʹɺࣾ಺։ൃ؀ڥαʔόʔʹରͯ͠&&ςετ Λ࣮ߦ͍ͯ͠Δ wσβΠφʔ΋ར༻͍ͯ͠Δ

  17. &&ςετͰԿΛ֬ೝ͍ͯ͠Δ͔ ਖ਼ৗӾཡग़དྷΔ͔ ࢓༷௨Γʹಈ࡞͍ͯ͠Δ͔

  18. ਖ਼ৗӾཡςετ

  19. ਖ਼ৗӾཡςετ wԿΛ΍Δͷ͔ wશϖʔδ͕0,͔ͭΤϥʔදࣔͳ͘ਖ਼ৗʹӾཡͰ͖Δ͔ wͳͥ΍Δͷ͔ wςετෆ଍ͳঢ়گԼʹ͓͍ͯɺશϖʔδ͕ઈରʹਖ਼ৗʹಈ͘อূ͸ແ͍ w࣮૷ίετ w࣮૷͕ͱʹ͔͘؆୯ʂ

  20. ࣮૷ྫʣ0,ຢ͸1)1Τϥʔແ͠Λ֬ೝ͢Δ ˞্ه&&ςετ͸ɺ1)1ΤϥʔɾܯࠂΛද͍ࣔͤͯ͞Δࣾ಺։ൃ؀ڥΛલఏͱ͍ͯ͠·͢ɻ SFRVJSFTQFD@IFMQFS
 
 TIBSFE@FYBNQMFT@GPSDPSSFDUSFTQPOTFEPcVSJc
 CFGPSF\WJTJUVSJ^
 
 JU\VSJ^͕0,Ͱਖ਼ৗʹӾཡͰ͖ΔEP
 FYQFDU QBHFTUBUVT@DPEF

    UPCF  
 FOE
 
 JU\VSJ^ʹ1)1ͷܯࠂ͕ແ͍EP
 FYQFDU QBHF UPIBWF@OP@DPOUFOU 8BSOJOH 
 FOE
 
 JU\VSJ^ʹ1)1ͷΤϥʔ͕ແ͍EP
 FYQFDU QBHF UPIBWF@OP@DPOUFOU 'BUBMFSSPS 
 FOE
 FOE SFRVJSFTQFD@IFMQFS
 
 EFTDSJCFਖ਼ৗӾཡςετEP
 X 
 
 IPHF@QBHF
 GVHB@QBHF
  FBDIEPcQBHFc
 JU@CFIBWFT@MJLFDPSSFDUSFTQPOTF QBHF
 FOE
 FOE TVQQPSUTSFTQPOTFSC GFBUVSFTWBMJE@TQFDSC
  21. ࢓༷ςετ

  22. ࢓༷ςετ wԿΛ΍Δͷ͔ wػೳ͕࢓༷௨Γʹಈ࡞͢Δ͜ͱΛ֬ೝ wͳͥ΍Δͷ͔ wखಈͰؤுΓͨ͘ͳ͍ͷͰɾɾɾ wݕূ࣌ؒΛ୹ͯ͘͠ɺ͓٬༷ʹϝϦοτͷ͋Δ࣮૷ʹ࣌ؒΛճ͍ͨ͠ w࣮૷ίετ wେมɾɾɾɻશػೳ͕ཧ૝Ͱ͸͋Δ͕ɺΫϦςΟΧϧͳՕॴ༏ઌͰରԠ͢ Δͱྑ͍ɻ

  23. ࣮૷ྫʣ࢓༷ςετ EFTDSJCF͓஌Β͕ͤ౤ߘͰ͖Δ KTUSVFEP
 CFGPSFEP
 JOGPʹΞΫηε
 WJTJUJOGP
 
 JOQVUλάͷOBNFUJUMFʹλΠτϧΛೖྗ͢Δ
 pMM@JOUJUMF XJUI໊݅ςετ


    
 UFYUBSFBͷOBNFlCPEZzʹຊจΛೖྗ͢Δ
 pMM@JOCPEZ XJUIຊจςετ
 
 ϘλϯͷWBMVF஋ΛࢦఆͰ͖·͢
 DMJDL@CVUUPOొ࿥
 FOE
 
 CFGPSFʙEPͷಈ࡞͕શͯ׬ྃͨ͠ޙʹࢦఆͷจࣈྻ͕ը໘্ʹදࣔ͞Ε͍ͯΔ͔
 JU\FYQFDU QBHF UPIBWF@DPOUFOU͓஌ΒͤΛ౤ߘ͠·ͨ͠^
 FOE
  24. ՝୊

  25. ՝୊ w+FOLJOTαʔόʔͱຊ൪αʔόʔͱͷϛυϧ΢ΣΞͷόʔδϣϯဃ཭ w+FOLJOTδϣϒͷઃఆ͕ίʔυԽ͞Ε͓ͯΒͣཤྺ͕ແ͍ wʲݱࡏਐߦதʳ%SPOF %PDLFS্Ͱͷ&&ςετ؀ڥͷߏங

  26. ·ͱΊ

  27. ·ͱΊ w&&ςετͰѹ౗త҆৺ײͱ࣌ؒઅ໿͕ಘΒΕͨ w͍͖ͳΓશϖʔδ෼ͷ࢓༷ςετΛಋೖ͢Δͷ͸େมͳͷͰɺਖ਼ৗӾཡςετ ͔Β࢝ΊͯݟΔͷ͕Φεεϝ wϢχοτςετෆ଍ͳ؀ڥͰ΋&&ςετͰϦϑΝΫλϦϯά͕Մೳʹ

  28. ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ