ãã¯ãŒã«ãªãã¹ããåããŠæžãããšã¯ã§ããŸããã 1ã€ã®ãã¹ããäœæã§ããŸããããããã®ã¯ãŒã«ãªãã¹ãã®æ°ãå¢ããŠãããããã®ã¯ãŒã«ãªãã¹ããäœæãã人ã®æ°ãå¢ããã¹ããŒããæéã倱ãããšã¯ãããŸãã...ã
ãã®èãã¯ãèµ€ã糞ã§ã«ããã®äžã®çŽ æãééãããããã説æãå¿ èŠãšããŸãã ãã®èšäºã¯ããã³ã©ã€ã»ã¢ãªã¡ã³ã³ãã®å ±åã«åºã¥ããŠããŸãããã³ã©ã€ã»ã¢ãªã¡ã³ã³ãã¯ããŠã©ãŒãã³ã°ã¢ããã ãã§ãªãããã¹ããæžãæ¹æ³ã«ã€ããŠã®ã¢ã¬ã¯ã»ã€ã»ãŽã£ãã°ã©ãããšã®è°è«ã®åŸãçŽæ¥ã³ãŒãæ³ã䜿çšããããã¿ãŒã³ã䜿çšããŸããã PageElementãStepsãPageObject以å€ã®ãã¿ãŒã³ãå¿ èŠã§ããïŒïŒ ãã¿ãŒã³ãã³ãŒããè€éã«ããäžèŠãªïŒïŒïŒãã€ã©ãŒãã¬ãŒãã·ãŒãã®äœæã«æéãè²»ãããšèª°ãã決ããã®ã¯ãªãã§ããïŒ ãœãªããã¯ããªããåã°ãªãã£ãïŒ ãããããããã¯ãã¹ãŠãéçºè ã³ãã¥ããã£ã®ãã¹ãŠã®èç©ãããçµéšãèæ ®ããŠäœæããã圌ãã¯äœãããŠããããç¥ã£ãŠããŸããã
Nikolay xpinjection Alimenkovã¯ãæåãªJavaéçºè ãJavaæè¡ãããŒãžã£ãŒããã³é ä¿¡ãããŒãžã£ãŒã§ãããXP Injectionã®åµèšè ã§ãã 圌ã¯çŸåšãç¬ç«ããéçºè ããã³ã³ã³ãµã«ã¿ã³ãã§ãããã¢ãžã£ã€ã«/ XPã®ã³ãŒãã§ãããããŸããŸãªäŒè°ã®ã¹ããŒã«ãŒããã³äž»å¬è ã§ãã
ãã¹ãèªååã«ã¯ç¬èªã®ã¿ã¹ã¯ã»ãããããããããã®é åã«åœ¹ç«ã€ãã¶ã€ã³ãã¿ãŒã³ã®ã»ããããããŸãã å ±åæžã§ã¯ããã³ã©ã€ããã¹ãŠã®æåãªãã¿ãŒã³ã«ã€ããŠèªããå®éã®äŸã䜿ã£ãŠè©³çŽ°ã«èª¬æããŠããŸãã
ãã®è³æã¯ãããã¹ããã¿ãŒã³ã®èšèšãã¿ãŒã³ããšé¡ãããHeisenbug 2017 Piterã«ã³ãã¡ã¬ã³ã¹ã§ã®Nikolai Alimenkovã«ãããã¬ãŒã³ããŒã·ã§ã³ã«åºã¥ããŠããŸãã ã¹ã©ã€ãã¯ãã¡ãã§ãã
èšèšãã¿ãŒã³ã¯è°è«ã®äœå°ã®ãããããã¯ã§ãã ãã®è³ªåãã°ãŒã°ã«ã§æ€çŽ¢ãããšããã®ãã¬ãŒã³ããŒã·ã§ã³ã«ã¯ãªããã¶ã€ã³èªååã®ãã¶ã€ã³ãã¿ãŒã³ã®ä»ã®äŸããããããããŸãã ãã®è³æã§ã¯ãå人çã«å¯ŸåŠããªããã°ãªããªãã£ã13幎éã®å人緎ç¿ã§èç©ããããã¹ãŠã®ãã¿ãŒã³ãåéããããšæããŸãã ãã¬ãŒã³ããŒã·ã§ã³ã«ã¯ãèè ãçããããšæããã¿ãŒã³ã圹ã«ç«ããªããã¿ãŒã³ããŸãã¯ééããªãã£ããã¿ãŒã³ã¯å«ãŸããŠããŸããã åæã«ããã®ãã¬ãŒã³ããŒã·ã§ã³ã¯æ°ããäŸãšãšãã«æéãšãšãã«æ¡å€§ããŠããŸãã
ããããæåã«ãèšèšãã¿ãŒã³ã®ç°¡åãªå®çŸ©ã
èšèšãã¿ãŒã³ãšã¯äœã§ããããªããããååšããã®ã§ããïŒ
ãè¯ããã¶ã€ã³ãã¿ãŒã³ãããæªããã¶ã€ã³ãã¿ãŒã³ããšãã£ããã®ã¯ãããŸããã ãèšèšãã¿ãŒã³ããšããçšèªèªäœã¯ãåé¡ãšææ¡ããã解決çã®å®åŒåã«ãã£ãŠäœãããŸããã ãããã£ãŠãããªããåºäŒããã¹ãŠã®ãã¿ãŒã³-éçºäžããã¹ãäžãä»ã®äœãã§ããããçºæãããåé¡ãå ±æããªãå Žå-ããã¯ãããæªããŸãã¯ãæµè¡é ããã§ããããšãæå³ããŸãããããã¯ããªãã®ããã ãã§ã¯ãããŸããåãã åé¡ããã®ãã¶ã€ã³ãã¿ãŒã³ãšäœããã®åœ¢ã§äžèŽããéãªã£ãŠããå Žåã¯ãæ€èšããå¿ èŠããããŸãã
ãããã£ãŠããã¶ã€ã³ãã¿ãŒã³ãèãããšããçç±ã ãã§ãããžã§ã¯ãã«ãã¶ã€ã³ãã¿ãŒã³ãããããã ãã§ãªãããã®ç®çãåé¡ãããããã©ã®ããã«åœ¹ç«ã€ããç解ããããšãéèŠã§ãã
èšèšãšéçºã®èªååã«ã¯å€ãã®åé¡ãããããããã®åé¡ã«çŽé¢ãããšã人ã ã¯ãã¿ãŒã³ãçå®ããŸããã å€å žçãªãã¿ãŒã³ã¯ãå ã ãDesign Designsãšããæ¬ãåºçãã4人ã«ãã£ãŠããªãåã«çå®ãããŸããã
ãã®æ¬ã¯ããªããžã§ã¯ãæåã®äžçã§åœæééãããã¹ãŠã®ãã¿ãŒã³ãå®åŒåããŸãã åé¡ããããŸã-解決çããããé·ãéããã¶ã€ã³ãã¿ãŒã³ã®ãã®æŠå¿µã¯æé·ããçºå±ããæ°ãããã¿ãŒã³ã§è£å ãããŸããã
ä»æ¥ãåé¡ãèç©ããŠããä»ã®é åã§åæ§ã®ãã¿ãŒã³ãåºçŸããåŸåããããŸãã
ãã¹ãèªååã®ã»ãŒãã¹ãŠã®ãã¿ãŒã³ã®äž»ãªèŠå ã¯ãäžèšã®ã¹ã©ã€ãã®èŠçŽ ã§ããä¿¡é Œæ§ããããããããæè»æ§ãä¿å®æ§ãå®å®æ§ãããã³ãã¹ãã§éèŠãªä»ã®åæ§ã®èŠçŽ ã§ãã
ãããã®èŠå ã®ã»ãšãã©ã¯ãæŠå¿µã®åé¢ã®åœ±é¿ãåããŸããæ©èœãã¹ããçµ±åãã¹ããåäœãã¹ãã®ãããã«ãããŠãããã¹ãããžãã¯ããã¹ãããŒã¿ãã¢ããªã±ãŒã·ã§ã³ãã©ã€ãããŸãã¯æè¡ç詳现ãæè¡çéšå-çŽæ¥çãªçžäºäœçšãæ åœããéšåã®3ã€ã®ã³ã³ããŒãã³ããåžžã«ååšããŸãã¢ããªã±ãŒã·ã§ã³ãã³ãŒãïŒé¢æ°ã®åŒã³åºããç»é¢ã®ã¯ãªãã¯ãªã©ïŒã
ãããã®éšåãååã«åé¢ãããŠããå Žåããã¹ãã¯äžèšã®èŠå ã«ããŸãå ¥ãå§ããŸãããã®å Žåããããã¯æäœãã¯ããã«ç°¡åã§ãç解ãšä¿å®ãã¯ããã«ç°¡åã ããã§ãã
ãã¹ãŠã®ãã¿ãŒã³ãããã€ãã®ã°ã«ãŒãã«åããŸããã
æ§é ãã¿ãŒã³
æåã®ã°ã«ãŒãã¯æ§é ãã¿ãŒã³ã§ãããã®äž»ãªã¿ã¹ã¯ã¯ããã¹ãã®ã³ãŒããæ§é åããããšã§ã-ãµããŒããç°¡çŽ åããéè€ãæ··ä¹±ã®åé¡ãåé¿ããŸãã ãããã£ãŠãåãåé¡ãæ±ããã¹ããšã³ãžãã¢ãç解ããå€æŽãããããªããä¿å®ãããããªããŸãã
ãã®ãããªãã¿ãŒã³ã®æåã®ã°ã«ãŒãã¯Page Objectã§ãã ãªãå¿ èŠãªã®ã§ãããåé¡ã¯äœã§ããïŒ
åé¡ã®æåã®éšåïŒã¢ããªã±ãŒã·ã§ã³ã®è«çæ§é ããããã³ãŒãã§ãã¹ããäœæãããšããçŸåšã®æ£ç¢ºãªäœçœ®ãããããŸããããã¹ãã§UIãçŽæ¥è¡šç€ºãããŸããã ã¹ããã15ã®åŸãã©ãã§ãã©ã®ããŒãžã§ãã©ã®ã¢ã¯ã·ã§ã³ãå®è¡ã§ããŸãããããšãã°ãã¹ããã15ã®åŸã«å床ãã°ã€ã³ã§ããŸããïŒ
åé¡ã®2çªç®ã®éšåïŒæè¡çãªè©³çŽ°ïŒãã®å ŽåãWebã«ã€ããŠèšãã°ããããã¯ãã©ãŠã¶ãŒã®èŠçŽ ããããŸãã¯ãã®æ©èœãå®è¡ããèŠçŽ ïŒãåé¢ãããã¹ãã®ããžãã¯ãåæ£ããŠããã¹ãã®ããžãã¯ããããã§éæãªãŸãŸã«ãªãããã«ããŸãããã®æ å ±ã¯å¥ã®å Žæã«ä¿åãããŠããŸããã
æåŸã«ãæåŸã®èŠå ïŒãããã®ããŒãžã«å ¥ããã³ãŒããåŸã§åå©çšããããšæããŸãã å€ãã®ã¹ã¯ãªãããåãããŒãžãééããå Žåããã®ã³ãŒããäžåºŠæžããåŸãèªåã§ãã®ã³ãŒããæžãããšã¯ãªãããããåŒã³åºãããšã«ãªãã®ã§ãéåžžã«è«ççã§ãããããéåžžã«åçŽåãããŸããã¹ããæžãã
Page Objectã解決ã«åœ¹ç«ã€3ã€ã®åé¡ã以äžã«ç€ºããŸãã ãã¹ãã2ã3ãããªãå Žåããã®åé¡ã¯çºçããŸãããé©çšã§ããèŠæš¡ã¯ãããŸããã 5ã10ã15ã®ãã¹ããããå Žåããã®åé¡ãããå Žåãšãªãå ŽåããããŸãã ãããã£ãŠããã®ãã¿ãŒã³ãå®è¡äžã®ãã®ãšäžèŽãããã©ãããç解ããå¿ èŠããããŸãã
Pageãªããžã§ã¯ããç°¡åã«èŠãŠã¿ãŸãããã ã©ãã«ã«é¢ä¿ãªããããã€ãã®èŠçŽ ãæã€ããŒãžããããŸãïŒãã®äŸã§ã¯ã@ FindByã¢ãããŒã·ã§ã³ã䜿çšããŠããŸãïŒã 奜ããªã¢ãããŒã·ã§ã³ã䜿çšã§ããŸãã ãã®è«çããŒãžã®ãã¹ãŠã®èŠçŽ ã1ã€ã®å Žæã«ãŸãšããè¿œå ã®ãã¡ã€ã³ã¡ãœãããæäŸããŸãããã®ã¡ãœããã¯æ¬¡ã®ããã«ãªããŸãã
ããšãã°ããã¡ã€ã³ã¡ãœããregisterAccountããããããã«userNameãšéé¡ïŒéé¡ïŒã衚瀺ããŸããããã«ããããããã£ãŒã«ãã«ååãå ¥åããå¥ã®ãã£ãŒã«ãã«éé¡ãå ¥åãããã¿ã³ãã¯ãªãã¯ãããšãæ°ããã¢ã«ãŠã³ããäœæãããŸãã ãŸãã¯ãããšãã°ãååã®æåã®æåãå ¥åããŸãïŒä»¥äžã®äŸïŒã
ãããã£ãŠããã¹ãã¯éåžžã«åçŽã«èŠããŸãããããã¯ãã¹ãŠãã¹ãã«å«ãŸããŠããããåæ Œãããã¹ãããžãã¯ãã¯ãªã¢ãããŸãã ãã®ãã¿ãŒã³ãçºæããããã®ãæã«å ¥ããŸããã
ãããæãç°¡åãªãã¿ãŒã³ã§ãã ã©ãã
æµFluãª/äžé£ã®åŒã³åºã
次ã«è§£æ±ºããåé¡ã¯ãããšãã°ãã°ã€ã³ããŒãžã§äœããåŒã³åºããšãã§ãã ãã°ã€ã³ããŒãžã§ããã«é»è©±ããããããšã¯ã§ããŸããïŒ ããªãã¯ç¥ããªãã
ããã§ãããšãã°50åã®ã¡ãœãããããããŒãžãæ³åããŠãã ããã ãããŠãããããã¹ãŠãããã«åŒã³åºãããšãã§ããã®ãããããã®äžéšã ããåŒã³åºããŠãããä»ã®åŒã³åºããè¡ãããšãã§ããã®ããããããŸããã ããšãã°ããŸã æåãå ¥åããŠããããèªåããã³ããã衚瀺ãããªãå Žåãåå衚瀺ãã€ã¢ãã°ã䜿çšã§ããŸããïŒ ãã®å¯Ÿè©±ã¯ãŸã ååšããªããããããããããã§ã¯ãããŸããã
ãã®åé¡ã¯ãããŒãžæ°ãèŠçŽ æ°ãã¡ãœããæ°ãèç©ãå§ããã¢ã¯ã·ã§ã³ã®ç¹å®ã®ãããŒãæ§ç¯ãããå Žåã«éèŠã§ãã 次ã®ã¢ã¯ã·ã§ã³ãå®è¡ãããã³ã«ãèªåããã³ããã衚瀺ããããã¹ãŠãæ確ã«ãªããŸãã
ãããã£ãŠããaccountsPageãæåã®æåãå ¥åããŠãaccountsPageãããã³ãããåŸ ã£ãŠãaccountsPageãååãéžæããããšããã³ãŒãã®ä»£ããã«-ããã§ãç°¡åã«å ¥ãæ¿ããããšãã§ããŸããééããã®ã¯éåžžã«ç°¡åã§ãã
代ããã«ããã®ã¢ãããŒãã䜿çšããããšããå§ãããŸãããã®ã¢ãããŒãã§ã¯ãã¢ã¯ã·ã§ã³ãå®è¡ãããã³ã«ããŠãŒã¶ãŒãããã³ã³ããã¹ããè¿ãããŸãã åãããŒãžããªããŒããããããŒãžãå¥ã®ããŒãžãè«çã³ã³ããŒãã³ããªã©ã§ãã
éåžžããã®ãã§ãŒã³ãäžæããå Žåããã®ã¡ãœããã§ã¯ãæååãæ°åããŸãã¯äœãä»ã®ãã®ãªã©ã®å€ãæå®ããŸããããã«ãããå ã«é²ãããšãã§ããªãããšã瀺åããŸãã ã€ãŸããããã¯æåŸã®æçµæäœã§ããããã®åŸã¯ãã§ãŒã³ãç¶ç¶ã§ããŸããããã®åŸãããã«ã©ãã«è¡ãããããèããæã§ãã®ã¢ã¯ã·ã§ã³ãå®è¡ããå¿ èŠããããŸãã
ããã¯éåžžã«ç°¡åã«å®è£ ãããŸããããŒãžãªããžã§ã¯ããŸãã¯ãã®ãã¿ãŒã³ãé©çšã§ããä»ã®å Žæã§ãæ»ãå€ã䜿çšããŸããæ»ãå€ã¯ããã®ãªããžã§ã¯ããŸãã¯äœæ¥ãç¶ç¶ããä»ã®ãªããžã§ã¯ãã§ãã
ã³ãŒããéåžžã«ã³ã³ãã¯ãã«ãªãããã§ã¯ãããŸãã-ããã€ãã®éè€ãã³ãŒãããåé€ããïŒãã®å ŽåãåããŒãžã«ãããã³ã«èšãéšåãåé€ãããŸãïŒãããããããããéæã«ãªããŸãã
å·¥å Ž/ããŒãžå·¥å Ž
次ã®ãã¿ãŒã³ã¯ããŒãžãã¡ã¯ããªããŸãã¯åã«ãã¡ã¯ããªã§ããããã¯ãããŒãžã ãã§ãªãé©çšã§ããããã§ãã ãã®ãã¿ãŒã³ãçããã®ã¯ãããŒãžãåæåããããã«ããæ°ããããŒãžããšèšããéãããŸãã¯äœãä»ã®ãã®ãèšã以äžã®ããšãããå¿ èŠãããå Žåãããããã§ãã ã€ãŸãããã®ããŒãžã«ã¯ãŸã è¿œå ã®ããžãã¯ãããã€ãé ãããŠãããã©ããã«ç»é²ããããèŠçŽ ãåæåãããããå¿ èŠããããŸãã
ãã®å Žåããã®ããŒãžãäœæãã人ãããã®æ å ±ãé衚瀺ã«ããŠãé衚瀺ã«ããå¿ èŠããããŸããããã¯ã誰ã«ãšã£ãŠãéèŠã§ã¯ãªãæè¡æ å ±ã§ãã
ããã¯ããã¡ã¯ããªã¢ãããŒããé©çšãããå Žæã§ãã ãã®å Žåããã®ã¢ãããŒãããããŸãããæ°ããMainPageããšèšããããã«ãã©ã€ããŒãæž¡ãããpageãopenããšèšããŸãã ãã®çºèŠã«äœãç¹å¥ãªããšããããå Žåããã®ããŒãžãéããŠåæåããŠæ°ãããã®ã«ããããããã¡ã¯ããªã¡ãœããã«ãªããªãŒãã³ã¡ãœããã«å ¥ããå¿ èŠããããŸããããã³ã³ã¹ãã©ã¯ã¿ã«è¿œå ããããšãã§ããŸããããããããŸãè¯ããªããããããŸããã
ãããã£ãŠãå¥ã®ã¢ãããŒãããããŸã-åã«ãã¡ã¯ããªãæå®ããå ŽåïŒããšãã°ãWebãã©ã€ããŒçšã®Javaã§ããå€å žçãªããŒãžãã¡ã¯ããªãŒãæå®ããŸããïŒãããŒãžãã¡ã¯ããªãŒãInitèŠçŽ ã泚æããã ãã§ãã¯ã©ã¹ã®ã€ã³ã¹ã¿ã³ã¹ãååŸã§ããŸããã®ããŒãžã«ãããã¹ãŠã®åæåãããèŠçŽ ãæã€ããŒãžã
ããã§æ©èœããè¿œå ã®èŠçŽ ã¯ããã¹ãŠã®èŠçŽ ã®åæåã§ãã ãã®ãããªããŒãžãéãããšãã§ããã¡ã€ã³ããŒãžããéå§ããå¿ èŠã¯ãããŸããã
ãå·¥å Žãã¯ç°ãªããŸãã ç¬èªã®ã¡ãœãããäœæãããããã¡ã¯ããªã¡ãœããã䜿çšãããã§ããŸãããããè¡ãããçç±ã®æ¬è³ªãç解ããããšãéèŠã§ãã
ããŒãžèŠçŽ /ã¢ã€ãã ã®è€åãªã¹ããªã³ã¯ã¡ãã¥ãŒããã«ãã§ãã¯ããã¯ã¹
éèŠãªWebãŸãã¯ãã¹ã¯ãããã¢ããªã±ãŒã·ã§ã³ã¯ããã¹ãã§äœåºŠãäœåºŠãããžãã¯ãèšè¿°ããèŠçŽ ãç¹°ãè¿ããŠæ§æãããŸãã ã¿ãã¬ããã§ã®äœæ¥ãéå§ãããšãåžžã«ã¡ãã¥ãŒããã§ãã¯ããã¯ã¹ããããŸãã ãã¹ãã§äœæ¥ããå Žåããããã®ããããªã³ã¯ã¯ãäºãã«é¢é£ããŠããããç¬èªã®ç¬ç«ããçŸå®ã«äœãã§ãããšã¯ã»ãšãã©èããŠããŸããã ããã¯ã¡ãã¥ãŒã§ãããèŠçŽ ãé 眮ãããããã«ããªã³ã¯ãèŠçŽ ã®ãªã¹ããªã©ã§ããããšãç解ããŠããŸãã
ãã®ç解ã®ãããã§ãèŠçŽ ãšã®éä¿¡ã³ã¹ããå€§å¹ ã«åæžã§ããŸããããã¯ãã¡ãã¥ãŒãšãããæäœããããžãã¯å šäœãäžåºŠå®è£ ããå Žåã䜿çšå¯èœãªã³ã³ããŒãã³ããç°¡åã«å€§å¹ ã«ç°¡çŽ åããã³äœæã§ãããããåå©çšã§ãããã¹ãã®éçºæéãççž®ã§ããããã§ã
éè€ã³ãŒããªã
åé¡ã¯ãã©ãã«ã§ãéè€ãèŠãããããšã§ããããããã®éè€ãæé€ããããšããããšã§ãã
ããã¯ã ããŒãžèŠçŽ ãã¿ãŒã³ã®è¡šç€ºæ¹æ³ã§ããåã®ããŒãžã®ä»£ããã«ããã£ãŒã«ãåãéãªã©ã®ä»£ããã«é«ã¬ãã«ã®ãŠã£ãžã§ãããæ¿å ¥ãããæ¹åãããããŒãžããããŸãã ãããã®æåã®ãã®ã¯ãéä¿¡ãããã£ãŒã«ãã«å€ãå ¥åããããæ€èšŒãªã©ããã¹ãŠã®ãã©ãŒã ã«ç¹æã®ã¢ã¯ã·ã§ã³ãå®è¡ã§ãããã©ãŒã ã§ãã2çªç®ã¯ãã¬ãŒãã§ãã
ã¿ãã¬ããã§ã¯ãèŠåºããåãè¡ãããããããã¹ãŠãããèå³æ·±ããã®ã«ãªããŸãã ãã¹ãŠã®ããŒãã«ã«åºæã®å€ãã®ãã¡ã€ã³ã³ãã³ãããããŸããäŸå€ãªããããããã©ã®ããã«å®è£ ãããŠããŠãããã®ããŒãã«ããã©ãŠã¶ã§ã©ã®ããã«èŠããŠãé¢ä¿ãããŸããã ãã®ãããªã©ãã«ãããå ŽåãèŠçŽ ããã®ããã«é 眮ãããšãããŒãžã®åŠçãå€§å¹ ã«ç°¡çŽ åãããŸãã
ç§ã®èŠ³ç¹ãããããšã次ã®ãã¿ãŒã³ã¯ããªãçãããã§ãããå€ãã®äººãããã䜿çšããŠããããšã¯ç¢ºãã§ãã
ããŒããã«ã³ã³ããŒãã³ã
åé¡ã¯ãåãWebãã©ã€ããŒã§é·æéãããããŒãžã«ç§»åãããšããããŒãžã®åèªã¿èŸŒã¿ãã®æŠå¿µããªãããšã§ãã ããã«ããããŒãžã®åèªã¿èŸŒã¿ããªã©ã®æ©èœããªãããããã1ããŒãžã¢ããªã±ãŒã·ã§ã³ãå¢ããŠããŸãã
ã€ãŸããè«çããŒãžãéããŠãã®ããŒãžã®ä»»æã®èŠçŽ ãæäœããå Žåããã®ããŒãžãè«ççã«ããŒããããã®ãåŸ ã£ãŠç¢ºèªããå¿ èŠããããŸãã ããªãã®è¡åã®ããããã®åŸã«ãããªãã¯äœããã€ãŸãäœããžã®æåŸ ãç¬ç¹ã®åŸ ã¡æ¹ããã¹ãã§ããããšãããããŸãã å€ãã®äººã ããã¬ãŒããŒãããªãã®ããã«ãããããããšãæåŸ ããã®ã§ãããã¯ãã°ãã°åŸ æ©ã«ãã£ãŠè¡ãããŸããã ããšãã°ãWebãã©ã€ããŒã«ã¯æé»çãªåŸ æ©ãšããæŠå¿µããããŸããã€ãŸãããŠãŒã¶ãŒã®å Žåã¯ããã©ãŠã¶ãŒã®åŽãããã®èŠçŽ ãæé»çã«åŸ æ©ããŸãã
ãOKãããã§ååã§ãããšèšã人ãããŸãããæé»ã®åŸ æ©ãå°ããããããããŸããããªãå Žåã¯ãäœãã培åºçã«åŸ æ©ãããšãã«ããããæ瀺çãªåŸ æ©ã衚瀺ãããŸãã ãè«çããŒãžãå€æŽããŸãããwaitã«ãã£ãŠè£å®ãããŸããäœãããã-åŸ ã€ãäœãããã-åŸ ã€
ãã®ãããªãã³ãã¬ãŒãã¯ãã¹ãããžãã¯ãéåžžã«ããŒãããŸãã説æèªäœã«ãã¹ãããªããããããã®ããŒãžã«ç§»åããšèšã£ãŠããã®æåŸ ããªã³ã«ããŸãã
ãããåé¿ããããã«ãããŒãå¯èœãªã³ã³ããŒãã³ãããäœæãããã¹ãŠã®ããŒãžãç¶æ¿ããããŒããããã¡ãœããããªãŒããŒããŒãã§ããããããã®æåŸ ãé衚瀺ã«ããŠããŒãžå ã®åããŒãžã«æå®ããããšãã§ããŸãã ãã®å Žåãããžãã¯ã1ãæã«ã«ãã»ã«åããŸããåãããŒãžã5ãæã§åŒã³åºããä»ã®ã©ãã«ããã®åŸ æ©ãèªåã®æã§æžãããšã¯ãããŸããã ãããããã®ãã¿ãŒã³ãçºæãããŠååšããçç±ã§ãã
ãªã圌ã¯ç©è°ãéžããŠããã®ã§ããïŒ ç§ã®èŠ³ç¹ããã¯ãã»ãšãã©ã®å Žåãæé»çãªåŸ æ©ã䌎ãããã©ã«ãã®åäœã«äŸåããŠããŸãããããã§ååã§ãã ãã®ãããã©ã®ã³ã³ããã¹ãã§é©çšã§ãããã調ã¹ãå¿ èŠããããŸãã
æŠç¥ãšåŒã°ãã次ã®ãã¿ãŒã³ã¯ãåããã®ïŒã·ãŒã±ã³ã¹ãŸãã¯ã¢ã¯ã·ã§ã³ïŒãè€æ°å®è£ ããå Žåã«å¿ èŠã§ãã ã³ã³ããã¹ãã«å¿ããŠãããã§ãã®å®è£ ã眮ãæããããšãã§ããŸãã
ããã¯ãããšãã°ãæ€èšŒã§äœ¿çšã§ããŸãïŒããã€ãã®æœè±¡æ€èšŒã¡ãœãããããããã®æŠç¥ãçŽæ¥é©çšããŸãã ãŸããããçš®ã®èšç®ã¢ã«ãŽãªãºã ã䜿çšããããšãã§ããŸããè€éãªã¢ã«ãŽãªãºã ãŸãã¯åçŽãªã¢ã«ãŽãªãºã ã䜿çšã§ããŸãããã³ãŒãã«çŽæ¥å ¥åããããªããããç¹å®ã®æŠç¥ã®ç¹å®ã®å®è£ ã眮ãæããæè»æ§ãåŸãããŸããã
ãã®ç¹å®ã®å Žå-äžèšã®ã¹ã©ã€ãã«ã¯ããŠãŒã¶ãŒç»é²ã®æŠç¥ããããŸãã ãã®æŠç¥ã®æåã®å®è£ ã§ã¯ããã®ããã«ãã©ãŠã¶ãŒã䜿çšããŸããããŒãžãéããŠãã£ãŒã«ãããç»é²ããã¿ã³ã衚瀺ããURLããåºåã§IDãåãåãããŠãŒã¶ãŒãªããžã§ã¯ããè¿ããŸãã2çªç®ã¯APIãééããŸãã
ã©ã¡ããéããšæããŸããïŒ
確ãã«2çªç®ïŒåŸã§97ïŒ ã«å€æŽããããšã«ããå Žåããã®ã³ãŒããæã§ã©ãã«ã§ãæžãããã§ããïŒ ãããããªãã
ãããããã©ãã§ãå€æŽããå¿ èŠã¯ãªãã§ããããçµå±ã®ãšãããã©ããã§ãŠãŒã¶ãŒç»é²ãæ¬åœã«ç¢ºèªããå¿ èŠããããŸããWebã§ç¢ºèªããªããã°ããã¹ãŠãæ²ãããªããŸãã ãããã£ãŠãããå Žæã§1ã€ã®æŠç¥ã䜿çšããå¥ã®å Žæã§å¥ã®æŠç¥ã䜿çšããããšæããŸãããã¹ãããžãã¯èªäœã¯ãã©ã®å®è£ ã§ãããã瀺ããããã®å®è£ ã䜿çšããã€ã³ã¿ãŒãã§ã€ã¹ã«äŸåãããããå·éã«è¡ãããšãã§ããŸãããããã¹ãäžã«çœ®ãæããŸãã
ãã®ãããç§ã¯æŠå¿µã®æè»æ§ãšåé¢ãæã«å ¥ããŸããããŸããããããã¹ãŠããµããŒãããå¿ èŠããã人ã ã®ç掻ãç°¡çŽ åããŸããã
ããŒã¿ãã¿ãŒã³-ããŒã¿ãã¿ãŒã³
ããªããå ã®åçã§èŠãããã«-ãªãç§ãã¡å šå¡ããããããŠããã®ã-ããŒã¿ã®äžè§åœ¢ããããŸããã ãããããã€ã©ãŒãã¬ãŒãã³ãŒãïŒãã¹ããè©°ãŸãããã¬ããŒãžã³ãŒãïŒã®éãåé€ããããã«ããã¹ãããžãã¯ããããŒã¿ãšããŒã¿ç®¡çãå¯èœãªéãåé€ããããšæããŸãã ããã«ãããããžãã¯ãããã«éæã«ãªãããããã®èªåãã¹ããäœæãã人ã®ãµããŒãã容æã«ãªããŸãã
ããããã¹ãŠã®ããŒã¿ãã¿ãŒã³ã®åæ©ã§ãã
å€ãªããžã§ã¯ã
ãã®ã°ã«ãŒãã®æåã®ãã¿ãŒã³ã¯éåžžã«ã·ã³ãã«ã§ãçãããããã䜿çšãããšæããŸãããæ®å¿µãªããšã«ããããç¡èŠãããéåžžã«é£ããããšãå€æãããããžã§ã¯ããããããèŠãŸããã
ãã¿ãŒã³ã®æ¬è³ªã¯æ¬¡ã®ãšããã§ããè«ççã«çµåãããè€æ°ã®ãªããžã§ã¯ããããå ŽåïŒãã®äŸã§ã¯registerUserãããã5ã€ã®ãã©ã¡ãŒã¿ãŒ-åãå§ã幎霢ã圹å²ãªã©ïŒãæž¡ããŸãã ç§ã¯å人çã«çŽ100åã®ãã©ã¡ãŒã¿ãäœæããæ¹æ³ãèŠãŠã䟿å©ãªéãããã§éãã«æ®ãããŸãã-æšæž¬ããããšããã§ããŸããã ãã©ã¡ãŒã¿ãŒã¯è«ççã«ç€ºãããŠããŸãããããã®æ¥ç¶ã¯ã©ãã«ã瀺ãããŠããŸããã§ããã
ãã®å Žåãè¿œå ã®ValueObjectãå°å ¥ããããšã§ãããå€æã§ããŸããããã¯ãè«çãŠãŒã¶ãŒãšåŒã°ãããã®ãã¹ãŠã®æ å ±ãéçŽããŸãã
ãªãValueObjectãªã®ãïŒ äžå€ã§ããäœæåŸãå€æŽããããšã¯ã§ããŸãããããã¯ã¿ã¹ã¯ã§ããããããã€ã³ãAãããã€ã³ãBã«ããŒã¿ã転éããããã®ãã®ã§ãããå€æŽå¯èœãŸãã¯ãµãŒãããŒãã£ã®å¹æãããããããã§ã¯ãããŸããã
ãã®ãããªãŠãŒã¶ãŒã®äœæãšæäœãç°¡çŽ åããããã«ãJavaã䜿çšããŠããå ŽåãLombokããŒã«ã䜿çšã§ããŸããããã«ãããããŒã¿ãååŸããã²ãã¿ãŒã®ã¿ã䜿çšããŠã³ã³ãã¯ããªèŠçŽ ãç°¡åã«äœæã§ããŸãã ã³ã³ã¹ãã©ã¯ã¿ãå¿ èŠãªå Žå-ããããéã®ã³ã³ã¹ãã©ã¯ã¿ãçæãããã®ãšåæ§ã«ããã®ã³ãŒããæã§èšè¿°ããå¿ èŠã¯ãããŸããã
ãã«ããŒ
次ã®ãã¿ãŒã³ã¯ãã«ããŒã§ãã 倧ããªãªããžã§ã¯ããããããã®ãªããžã§ã¯ãããŸã£ããç°ãªãæ¹æ³ã§æ§æã§ãããšããŸãã æåã®æ¹æ³ã«é²ã¿ãããªãšãŒã·ã§ã³ãããæ°ã®ã³ã³ã¹ãã©ã¯ã¿ãŒãè¿œå ã§ããŸããæ°ããããªãšãŒã·ã§ã³ã«åºäŒããã³ã«ãæ°ããã³ã³ã¹ãã©ã¯ã¿ãŒãè¿œå ã§ããŸãã ãã®çµæãã³ã³ã¹ãã©ã¯ã¿ãŒã¯100,500ã«ãªããã©ã®ã³ã³ã¹ãã©ã¯ã¿ãŒããã€åŒã³åºããã¯å®å šã«äžæ確ã«ãªããŸãã
ãããåçŽåããã«ã¯ãã³ã³ã¹ãã©ã¯ã¿ãŒãããç解ããããããä»ã«äœãæ§æã§ããããèªåçã«ããã³ãââãããæ©èœãè¿œå ããŸããBuilderãã¿ãŒã³ã䜿çšãããŸãããã®å®è£ ã¯æ¬¡ã®ãšããã§ãã
Builderãã¯ã©ã¹ã¿ãŒããšã«ååŸããŸãããã®å Žåããã¡ã€ã³ã¡ãœããã䜿çšããŠãã®ã¯ã©ã¹ã¿ãŒãæ§æããŸããContactPointsãããŒããåè©Šè¡åæ°ãã¡ããªãã¯æ§æãè¿œå ãããã®åŸãæåŸã«ãã«ããšèšãããªããžã§ã¯ããååŸããŸããèªåãã¹ãã§äœ¿çšã§ããŸãã
ãã¹ãŠã®å¿ èŠãªãã£ãŒã«ããèšå®ããå¿ èŠããªããããããã¯éåžžã«äŸ¿å©ã§ããçŸæç¹ã§é¢å¿ã®ãããã£ãŒã«ãã®ã¿ãèšå®ã§ããæäœãããªããžã§ã¯ãã®æ§æãç°¡çŽ åããŸãã
ãªããžã§ã¯ã/ãããã£ãŒã®ã¢ãµãŒã
次ã®ãã¿ãŒã³ã¯èª°ãã話ããŸãããããã䜿çšãã人ã¯ã»ãšãã©ããŸããããã¢ãµãŒããªããžã§ã¯ããã€ãŸãããããã£ãŒãã§ãã ç§ãã¡ã«ã¯å€å žçãªã¢ãããŒãããããŸã-ç§ãã¡ã¯ãŠãŒã¶ãŒãåŒãæããŠã圌ãã«ããã€ãã®ãã§ãã¯ãããããšæããŸãã åŸæ¥ã®ã¢ãããŒãã¯ãå€ãã®ç°ãªããã§ãã¯ãè¡ããšããç¹ã§ç°ãªãããããã¯ãã¹ãŠ1ã€ã®ãã¡ã€ã³ãšã³ãã£ãã£ã«é¢é£ããŠããŸãã
ãããã®ãã§ãã¯ã®èåŸã«ãäžèšã®äŸã«ã¯3è¡ãããŸãããã§ãã¯ã®è«çåã¯ãããŸããã倱ãããŸããå ·äœçã«äœããã§ãã¯ããŸããã ãããŠããã®ç¹å®ã®ã³ã¬ã¯ã·ã§ã³ã«ã¯ç¹å®ã®ããŒã«ãæã€ãŠãŒã¶ãŒã1人ããããªãããšã確èªããŸããããã以å€ã®å Žåã¯äœãåé¡ãªã®ãç解ã§ããªãããããããããã€ãã®ãã§ãã¯ã«åå²ããå¿ èŠããããŸãïŒæåã«ããã®ã³ã¬ã¯ã·ã§ã³ã§ã®ã¿ç¢ºèªããå¿ èŠããããŸã1人ã®ãŠãŒã¶ãŒããããŠåœŒããã®ãããªåœ¹å²ãæã£ãŠããããšã ããããè«ççã«ã¯ããã®äž»åŒµãæžãããšãã«é ã®äžã«ãã£ãããããã®æ å ±ã¯ç§ãã¡ã«é ãããŠããŸãããçŸåšããã®æ å ±ã¯åçŸãããŠããŸããã
ãã®èšèšãã¿ãŒã³ã¯ãç¹°ãè¿ãã®æ§é ã®åœ¢ã§ã¢ãµãŒã·ã§ã³ãå®è£ ããå¿ èŠãããããšã瀺åããŸããããã«ãããå°æ¥å¿ èŠã«ãªã£ãå Žåããã®ãããªã¢ãµãŒã·ã§ã³ãèšè¿°ã§ããªããªããŸããå¥ã®ãã¹ãã§ã¯ããŠãŒã¶ãŒã1人ããããªãããšã確èªããå¿ èŠããããããããŸããããã ãå¥ã®ããŒã«ããŸãã¯ãã®ããŒã«ãæã€ãã¹ãŠã®ãŠãŒã¶ãŒãªã©ã
ã³ãŒãã®æžãæããé¿ããåæã«ãã¡ã€ã³ããžãã¯ãé 眮ããããšããŸãã ãããã£ãŠããã®æ¹æ³ã§ãããè¡ãããšããå§ãããŸãããŸããã¢ãµãŒã·ã§ã³ã®ã°ã«ãŒããå²ãåœãŠãŸããããã«ã¯ããŠãŒã¶ãŒãšã®ãã¹ãŠã®å¯èœãªã¢ãµãŒã·ã§ã³ãäœæããåå¥ã®ã¯ã©ã¹ïŒãã®å Žåã¯UserAssertïŒã®äœæã䜿çšã§ããŸãã UserAssertèªäœã®éçã¡ãœãããassertThatãæå®ãããã®ã¢ãµãŒã·ã§ã³ãè¿ããŸãããã®ã¢ãµãŒã·ã§ã³ã«å¯ŸããŠãããã«ãã§ãã¯ãè¡ãããšãã§ããŸãã èŠãç®ã¯çŸããã以åãããã¯ããã«èªã¿ããããªãããã§ãã¯å ã®ã³ãŒãã¯ãŸã£ããåããŸãŸã§ãããåå©çšã®ã¿ãå¯èœã§ããããšã誰ããç解ããŠããŸãã
ããã«å¯ŸããŠéçã¡ãœãããäœæã§ããŸããããã¯ãHamcrestã©ã€ãã©ãªãšä»ã®Fast assertã©ã€ãã©ãªã«ãã£ãŠå®è£ ãããå®å šã«ç¬ç«ããæ¹åã§ãããã®ã¢ãããŒãã䜿çšããŠãã¢ãµãŒã·ã§ã³ã®ãã§ãŒã³ãäœæããåå©çšã§ããç¬èªã®assertãèšè¿°ã§ããŸãã
åºæ¬ãµã€ã¯ã«çšã«ãã§ã«èšå€§ãªæ°ã®ã¢ãµãŒã·ã§ã³ãèšè¿°ãããŠãããããæåããèšè¿°ããå¿ èŠã¯ãããŸããã ããã§ã¯ãããžãã¹ã¢ãµãŒã·ã§ã³ã«ã€ããŠèª¬æããŸããããžãã¹ã¿ã¹ã¯ãçå®ããåºæ¬çãªã¿ã€ãã®æãåçŽãªæ©èœã¢ãµãŒã·ã§ã³ã®ã°ã«ãŒãã«ã€ããŠãããžãã¹ã®èŠ³ç¹ããæ£ç¢ºã«äœã確èªããŸããã
ããŒã¿ç»é²
次ã®ãã³ãã¬ãŒãã¯ããèå³æ·±ããã®ã§ãã 圌ã®åé¡ã¯ããã§ãïŒãã¹ãã§ããŒã¿ã䜿çšãå§ããããããäºãã«ç¬ç«ããŠãããšä»®å®ããŠãã©ããããããããããäºãã«è§£ãããšããŸãããçµæãšããŠäŸåãã¹ããååŸãããšããçµè«ã«éããããšãã§ããŸãäºãã®è«çããç¥ããã ããšãã°ããã®ãã¹ãã§ã¯ãŠãŒã¶ãŒ1ã2ã3ã䜿çšããŠããããšããããããã®åŸãããã¹ãŠã®ãŠãŒã¶ãŒ1ã2ã3ãç§ã«å²ãåœãŠãããä»ã®ãŠãŒã¶ãŒã¯ããã䜿çšããŸããããšããã¡ãã»ãŒãžã衚瀺ãããŸã圌ãå¥ã®å Žæã«é£ããŠè¡ãããã®ãããªåé¡ãç¥ããªãã
ããŒã¿ã¬ãžã¹ããªã¢ãããŒãã«ãããäžæã®ããŒã¿ãçæãããã®äžææ§ã远跡ã§ããŸãã ãã®å ŽåãæãåçŽãªã¢ãããŒãã䜿çšããŸãããäžæã®ãŠãŒã¶ãŒãæå®ãããéçå¢åãã«ãã¹ã¬ããã«ãŠã³ã¿ãŒã䜿çšããŸããããã¯åžžã«1ãã€å¢å ããäžæã®ãŠãŒã¶ãŒãä¿èšŒããŸãã
ç¹å®ã®ãã¿ãŒã³ã¯ããè€éã«ãªãå¯èœæ§ããããŸããããšãã°ãããŒã¿ããŒã¹ããã¡ã€ã«ãäºåå®çŸ©ããããŠãŒã¶ãŒã»ãããªã©ããååŸã§ããŸãã äžçªäžã®è¡ã¯ããã¹ãã§äœæ¥ãããã¹ãŠã®äººããããã€ãã®äžæã®ããŒã¿ã§äœæ¥ãéå§ããåã«ãã¬ãžã¹ããªãŠãŒã¶ãŒãŸãã¯ãã®ã¬ãžã¹ããªããä»ã®ããŒã¿ãèŠæ±ããã©ã³ãã åã¢ã«ãŽãªãºã èªäœãç¥ããªããã圌ãåãåãããšãåžžã«ç¢ºä¿¡ããŠããããšã§ããã®ããŒã¿ã¯ä»ã®ãã¹ãããç¬ç«ããŠããŸãã ããã«ãããããŒã¿ã«å¿ãã亀差ç¹ã®ãšã©ãŒã«ãããã¹ãã®ã»ãã¥ãªãã£ãåäžããŸãã
ãªããžã§ã¯ãããŒã«/ãã©ã€ãŠã§ã€ã
次ã®ãã¿ãŒã³ã¯æ¢ç¥ã§ãããããã«å°æ°ã®äººã ã«ãã£ãŠäœ¿çšãããŠããŸãã ãã©ã€ãŠã§ã€ãã¯ãå€å žçãªãã¿ãŒã³ã«ç±æ¥ãããã¿ãŒã³ã®ååã§ãããäœæãå°é£ãªãªããžã§ã¯ããŸãã¯ãªããžã§ã¯ãã®ã»ããã«é¢ããåé¡ã解決ããŸãã æ¯åäœæãã代ããã«ãããããååŸããŠäœ¿çšãããã®åŸãååŸããå ŽæããåãããŒã«ã«æ»ããŸãã
ãã®ãã¿ãŒã³ã®ãããã§ãããšãã°ãã©ãŠã¶ããŒã«ãå®è£ ã§ãããªã©ãå€ãã®èå³æ·±ããã®ãå®è£ ã§ããŸãã å€ãã®èŠæ -ãã©ãŠã¶ãç«ã¡äžããéãæåã®ããŒãžãèªã¿èŸŒãŸããéããããã¡ã€ã«ãã³ããŒãããéãªã©ãWebãã¹ãã¯é ããªããŸãã
ãã©ãŠã¶ãŒããã¹ãã§çŽæ¥äœæããå¿ èŠã¯ãããŸããã代ããã«ãå¿ èŠãªãã©ãŠã¶ãŒã®æ°ãæ§æãããŠããããã¯ã°ã©ãŠã³ãããŒã«ã䜿çšã§ããŸãããã®ããŒã«ã§ã¯ããã©ãŠã¶ãŒãæ»ã£ããšãã«ã¯ãªã¢ããŠä»ã®æäœãè¡ããŸããããã¹ãŠãããã¯ã°ã©ãŠã³ãã§å®è¡ãããŸãããã¹ãã¹ã¬ããã®å®è¡ãšäžŠè¡ããŠã ãŸãããã©ãŠã¶ããŒã«ããèªåçšã®æ°ãããã©ãŠã¶ãèŠæ±ãããšã䜿çšå¯èœãªãã©ãŠã¶ã®ã¿ããã¹ãã«æäŸãããŸãã
ããã«ãããæ§æéšåãšæéããã¹ãã®å®è¡æéãããã©ãŠã¶ãŒæ§æã«ç§»ãããšãã§ããããããã¹ãèªäœã§ãã©ãŠã¶ãŒãŸãã¯ãã®ä»ã®ãªãœãŒã¹ãæºåããã³ã¹ããå€§å¹ ã«åæžã§ããŸãã
ããŒãžã䜿çšããå¥ã®äŸïŒåžžã«åãããŒãžããéå§ããå ŽåãããŒãžãéãã®ãåŸ ã€å¿ èŠã¯ãããŸããã ããŒãžã®ããŒã«ãäœæããããããããŒãžããªã¯ãšã¹ãã§ããŸããã€ãŸããæ¢ã«ããã«éããŠããã©ãŠã¶ã€ã³ã¹ã¿ã³ã¹ã§åŸ æ©ããŠããããšãæå³ããŸãããŸããéããŠããããŒãžã§ããžãã¯ãæ¢ã«éå§ããŠããããªãŒãã³èªäœã¯é衚瀺ã®ããã¯ã°ã©ãŠã³ãããã»ã¹ã§è¡ãããŸãã
æåŸã«ããã®ãã¿ãŒã³ã®ããè€éãªäœ¿çšã®å žåçãªäŸã¯ãããŒã¿ããŒã¹ã€ã³ã¹ã¿ã³ã¹ã®ããŒã«ãããå Žåã§ãã å®éã®ããŒã¿ããŒã¹ã䜿çšãã代ããã«ãããŸããŸãªããŒãã§å¿ èŠãªéã®ããŒã¿ããŒã¹ã³ã³ãããŒã®å¿ èŠãªã»ãããéžæããŸããããã¯ãDockerãŸãã¯ä»ã®å©çšå¯èœãªä»®æ³åããŒã«ã䜿çšããŠãããŒã¿ããŒã¹ã§äœæ¥ããåŸã«éåžžã«ç°¡åã«å®è¡ãããŸããããªãã¯ããããæ¶ãããããŒã«ã§æ°ãããã®ãäžããŸããã ããã«ãããåžžã«ã¯ãªãŒã³ãªäœæ¥çšããŒã¿ããŒã¹ã䜿çšã§ããããŒã¿ããŒã¹ã®å解ãã¯ãªã¢ãããŒã¿ã®åéãšããŒããªã©ãè¡ãå¿ èŠããããŸããã
ããŒã¿ãããã€ããŒ
次ã®ãã¿ãŒã³ã§ããããŒã¿ãããã€ããŒã¯ããããã誰ããããç¥ã£ãŠãããã®ã§ãã ããŒã¿ããªãã³ãã¹ããäœæããåããã¹ãããžãã¯ãç°ãªãããŒã¿ã§å®è¡ãããå Žåã¯ãå€éšãœãŒã¹ïŒãã®å Žåã¯xlsïŒãŸãã¯CSVããããŒã¿ãèªã¿èŸŒããããã«ããŸãããã€ãã®ãµãŒãã¹ããããŸãã¯ããªãã¯ããããããã«çž«ãä»ããŠããŸãã
â «» , - -, , Entity, Value Object, .
dataProvider, JUnit 5, , .
, dataProvider- loadUsers, , . â , .
â , â Value Object. â , â , . , , .
Technical Patterns
, , .
Decorator
â Decorator. - (web- - ) â , , , - . . â .
« » â « », « », : , .
, - . EventFiringWebDriver, , , , â web-, .
, , Factory, . , , «Factory, », ( ). .
Proxy
Proxy â , -, , , .
, , , , -, - .
â HTTP proxy , , , black-, , , , - . , , , - exceptional- .
â , CSS, , http- , , , , .
Business Involvement Patterns
, â . product-owners, - , , , , , , , â .
Keyword Driven Testing
, : , .
Keyword Driven â , . - , , , , â -, , .
Robot Framework , . , .
, . , , , . , .
, , . , , , , â , .
Behavior Specification
â Behavior Specification, . .
: , , 50 70 , , , 120. «» , , , , , â , , , , , .
, , .
Behavior Driven Development
Behavior Specification Behavior Driven Development, , , , , , .
, , , , , .
, Behavior Driven Development Behavior Specification unit- , .
Steps
â Steps, , Behavior Driven Development, Keyword Driven Behavior Specification. , . , â - , , -, .
, , , , .
: , - , , .
â web-, Page Object, , . -, .
, . , . , , , , .
Page Object , , Steps, .
web- , Steps, â , .
, , , Steps, , â , , , . , , , , , .
. , , , , , , , , , - , , , , - - , âŠ
, , -, . -, , , , .
é¢çœãã£ããšæããŸãã ããããšã
, Heisenbug 2017 Moscow , 8-9 . .
, :
- Truths about technical testing (Alan Page, Unity)
- web ( , Netcracker)
- ( , ALM Works)