ãŠããããã¹ããæ£ããæžãæ¹æ³ã¯ïŒ 100ïŒ ã®ã«ãã¬ããžãè¿œãããã䟡å€ã¯ãããŸããïŒ ãšã³ãžãã¢ã¯å®éã«ã©ã®ãããªå°é£ã«çŽé¢ããŠããŸããïŒ Marc PhilippãšVsevolod Brekelovã¯åœŒãã®çµéšãå ±æããŠããŸãã
Marc Philippã¯ãJavaãã¹ã¿ãŒåãã®ããŒã«ã§ããJUnit 5ãã¬ãŒã ã¯ãŒã¯ã®äž»èŠãªéçºè ã®1人ã§ãã çŸåšã圌ã¯ãã€ãã®äŒç€ŸLogMeInã§ã¯ã©ãŠãSaaSãœãªã¥ãŒã·ã§ã³ã®ãšã³ãžãã¢ãšããŠåããŠããŸãã
Vsevolod Brekelov-Grid Dynamicsã®ã·ãã¢QAãšã³ãžãã¢ã¯ã5幎以äžãã¹ããè¡ã£ãŠããããã¹ãã®èªååããŒãããæ§ç¯ããçµéšããããŸãã
-åäœãã¹ãã«é¢ããèšäºã§ã¯ãéåžžããã¹ãæ¹æ³ãšèšç®æ©ã®ã¯ã©ã¹ãäŸãšããŠæããããŠããŸãã ãã®ãããªäŸã¯ãå®éã®ã¿ã¹ã¯ã®è€éãã瀺ãããšãã§ããŸããïŒ ãã«æ©èœã®ããã°ã©ã ã®ãã¹ã¿ãŒã¯äœã«çŽé¢ããŸããïŒ
Marc PhilippïŒå®éãèšç®æ©ã䜿çšããäŸã§ã¯ãå®éã®ã¿ã¹ã¯ã®è€éãã瀺ãããšã¯äžå¯èœã§ãã èšäºã§éžæãããŠãããããèªè ã¯è€éãªã³ãŒãã解æããããšãªãåäœãã¹ãã®ã¢ãããŒããç解ããããšã«éäžã§ããŸãã ãããã®äŸã¯éåžžã«åçŽã§ããããŠããããã¹ãã®åºæ¬çãªèãæ¹ãšååããã瀺ããŠããŸãã å®éã«ã¯ãåäœãã¹ããå®è¡ãããããšãèæ ®ããŠããã¹ãæžã¿ã®ã³ãŒããæåã«èšè¿°ããå¿ èŠããããŸãã ããã確å®ã«ãã1ã€ã®æ¹æ³ã¯ãã³ãŒããèšè¿°ããåã«ããŸãã¯ã»ãŒåæã«ãã¹ããèšè¿°ããããšã§ãã ãã¹ãã«é©ããã³ãŒããããå Žåãåäœãã¹ãã®äœæã¯é»åã®å Žåã»ã©è€éã§ã¯ãããŸããã
Vsevolod BrekelovïŒå®éã®ã¿ã¹ã¯ã®è€éãã¯å®éã®åé¡ã§ããç解ã§ããªããšæããŸãã çå£ã«ãéåžžã«éèŠãªäŸã詳现ã«æ€èšãããŠããè¯ãèšäºããããŸãã çŸå®ã«è¿ã¥ãã®ã«åœ¹ç«ã€ãšæããŸãã
ããšãã°ããJavaã®åäœãã¹ãããšãããªã¯ãšã¹ãã§ã¯ã Habréã«é¢ããèšäºããã°ããèŠã€ããããšãã§ããŸã ã ããã¯ãã£ãšåã«å ¬éãããŸãããããã®é¢é£æ§ã倱ã£ãŠããŸããã
äœæ¥ã®æ©èœã«é¢ããŠã¯ã次ã®ãã¹ã¿ãŒã®ã°ã«ãŒããéžã³åºããŸãïŒèª°ããæãããªãã§ãã ããïŒã
- ããã¯ãšã³ã-ã·ã¹ãã ãçµ±åãã³ã³ããŒãã³ããåäœãã¹ããäœæã§ããŸãïŒãªãã§ããïŒïŒã
- ããã³ããšã³ã-e2eãã¹ããšã³ã³ããŒãã³ãããã³ãŠããããã¹ãã®äž¡æ¹ãäœæã§ããŸãã
- DB-圌ãã¯ããŒã¿/ããŒã¿ããŒã¹èªäœã®ãã¹ãã«åŸäºããŠããŸãã
- ããã©ãŒãã³ã¹-ããã§ã¯æãããªããã§ãã
- ã€ã³ãã©ã¹ãã©ã¯ãã£-ãnear-devobsnyeãåé¡ã®è©³çŽ°ã
- ã¢ãã€ã«ãã¹ãïŒiOSãAndroindãIoTïŒ-ä»ã§ã¯ããã®ãããªãšã³ãžãã¢ãåé¢ããããšã¯éåžžã«ãã¡ãã·ã§ããã«ã«ãªããŸããããç§ã®æèŠã§ã¯ããã¹ãŠåãããã¯ãšã³ã/ããã³ããšã³ãã§ãã
ãããã®äººã ã¯éåžžããœãããŠã§ã¢èªäœããã¹ãããã ãã§ãªããèŠä»¶ãšããã»ã¹èªäœããã¹ãããŸãã 確ãã«ã圌ãã¯ããã«æãé »ç¹ã«æ£åŒã«ã¢ãããŒãããŸãããããã¯ç§ã®æèŠã§ã¯ééã£ãŠããŸãã
ããã»ã¹ã«æ³šæãåèµ·ããããšæããŸãã ç§ã®ç·Žç¿ã§ã¯ããã°ãšãäžèŠãªãã®ãå®è£ ããããã®æéã®äž»ãªç¡é§ãããããæé·ãããããåãã¹ã¿ãŒã¯éçºããã»ã¹ã®æ§ç¯ã«ç²ŸéããŠããå¿ èŠããããšèããŠããŸãã
-åãã¹ãã§1ã€ã®ããšã確èªããå¿ èŠããããŸãã å®éã«ã¯ããã®æ¡ä»¶ãã©ã®çšåºŠå®å šã«æºããããšãã§ããŸããïŒ ã©ã®ãã¬ãŒã ã¯ãŒã¯ã䜿çšããŸããïŒ
Marc PhilippïŒåäœãã¹ããäœæãããšããéåžžããã¹ã察象ã®åé¡é åã®ç䟡ã¯ã©ã¹ããã®å ¥åã®ãµã³ãã«ã1ã€ååŸãããŸãã ãã¡ãããæåã«ãããã®åãç䟡ã¯ã©ã¹ãå®çŸ©ããå¿ èŠããããŸãã åãã¹ãã§ã¯ããã¹ãã«é¢é£ããããããã£ã«å¯ŸããŠã®ã¿ã¢ãµãŒã·ã§ã³ãè¿œå ããŸãã åãã¢ãµãŒã·ã§ã³ãæ°ããåãã¹ãã«ã³ããŒããŠè²Œãä»ããªãã§ãã ããã ãŠãããã®ããã©ãŒãã³ã¹ã«åœ±é¿ãäžããäŸåé¢ä¿ãããå Žåã¯ãã¹ã¿ããŸãã¯ã¢ãã䜿çšããŠãã¹ãã®ç¬ç«æ§ãç¶æããããšãæ€èšããŠãã ããã
JUnit 5ã®åäœãã¹ãã®å€ãã¯ãã¢ãã¯ãã¬ãŒã ã¯ãŒã¯ïŒãã®å Žåã¯MockitoïŒã«ãã£ãŠäœæãããã¢ãã¯ã䜿çšããŸãã äžã§èšã£ãããã«ããããã¯åé¢ãããã³ãŒãããã¹ãããã®ã«éåžžã«äŸ¿å©ã§ãã ãã®å Žåã®äž»ãªã¿ã¹ã¯ã¯ãmokãå®éã®ã³ãŒããšåæ§ã«åäœããããšã確èªããããšã§ãã ããããªããšããã¹ãã¯ç¡æå³ã«ãªããŸãã
Vsevolod BrekelovïŒã¯ããæèŠããããŸãã1ã€ã®ãŠããããã¹ã-1ã€ã®ã¢ãµãŒã·ã§ã³ã§ãã å®éã«ã¯ãããã¯ãã£ãã«èŠãŸããã§ããã ãããããŒã ã®å²åŠã ãšæããŸãã è€æ°ã®ã¢ãµãŒã·ã§ã³ã«ã¯å ŽæããããŸãã
ã³ã³ããŒãã³ããã¹ãã§ã¯ãªããŠããããã¹ããå®æœããå Žåããã¹ãŠã®äŸåé¢ä¿ïŒmokiãã¹ã¿ã-ãã¹ãŠã¯ããªãã®æã«ãããŸãïŒãåé¢ããŸãã ç§ã®æèŠã«åé¡ã¯ãããŸããã ãããããªããStackOverflowã¯ééããªã圹ç«ã¡ãŸãã
Java / JavaScriptïŒAngularïŒã§èšè¿°ããŠãããããéåžžã®äžè¬çãªããŒã«ã䜿çšããŸãã
Javaã§-Mockito / EasyMockã ã³ã³ããŒãã³ããã¹ãã®å Žåãã¬ã¹ãã³ã·ãã¢ãã¯ãäœæããããšããå§ãã§ãã çããã«ã¢ããã€ã¹ããŸãã
JavaScript-ngMockã ãšããã§ãã³ã³ããŒãã³ããã¹ãã®éåžžã«ã¯ãŒã«ãªãããã¯ã¯AngularPlaygroundã§ãã
-ãæžã蟌ã¿ããããžã§ã¯ããå®è£ ããéã«ããã¹ãã®äººä»¶è²»ãšè²¡åã³ã¹ããããã³æçµãœãããŠã§ã¢ã®å質ã®éã§åŠ¥åç¹ãèŠã€ããæ¹æ³ ãã®ãããªå Žåã®å®å šãªãã¹ãã®éèŠæ§ãéåžžã©ã®ããã«äž»åŒµããŸããïŒ
Marc Philipp ïŒç§ã®çµéšã§ã¯ããã¹ããã¹ãããããŠãæžã蟌ã¿ããããžã§ã¯ããä¿åããããšã¯ã§ããŸããã åäœãã¹ãã®äœæã¯ããœãããŠã§ã¢éçºã®äžå¯æ¬ ãªéšåã§ãã ãããªãã§ã¯ãããªãã®ã³ãŒããæ¬åœã«ããªãããã¹ãã ãšæãããšããã£ãŠãããã©ãããç¥ãæ¹æ³ããããŸããã äœãå£ããã®ãåãããªããããããã«ä¿®æ£ããããšã¯ã§ããŸããã UncleBobãèšã£ãããã« ããéãè¡ãå¯äžã®æ¹æ³ã¯ããŸãããããšã§ããã
Vsevolod BrekelovïŒåäžã®çãã¯ãªããšæããŸãã ãããããããžã§ã¯ãã®çµéšãšçš®é¡ã圹ç«ã¡ãŸãã å»çãããžã§ã¯ããè¡ã£ãŠããå Žåããã±ãããæ§ç¯ããŠããå Žåã¯ããã¹ãã®éèŠæ§ã«ã€ããŠè©±ãå¿ èŠã¯ãããŸããã ã¹ã¿ãŒãã¢ããã1é±éèŠãå Žå-äœããã¹ãããŸããïŒ
çªç¶ã®ãã°ã誀ã£ãŠå®è£ ãããèŠä»¶ãåé¿ããããã«ãããã»ã¹ãæŽçããããšãéåžžã«éèŠã§ãã é©åãªããã»ã¹ãšã¯äœã§ããïŒ ãã¡ãããã¢ãžã£ã€ã«ãããã§ã¹ãããããŸããããã¯ãããã»ã¹ãæŽçãããšãã«å€ãã®äººãèŠããã®ã§ãããããã§ãäœããããŸããããŸããã ããã»ã¹ã®ããã«ããã»ã¹ãååŸããã³æ§ç¯ã§ããŸãã ãŸãã¯ã httpïŒ//programming-motherfucker.com/ã«åŸã£ãŠãã ããã
äž»ãªããšã¯ãããŒã ã®éçºè ãšãã¹ã¿ãŒã«ââé©ããèŠä»¶ãæã€ããšã§ãã ããã¯ã圌ããäœãèµ·ãããã«ã€ããŠåãç解ãæã£ãŠããããšãæå³ããŸãã
-ãã¹ãã®æéãšäººä»¶è²»ãåæžããã®ã«åœ¹ç«ã€ãã¯ããã¯ã¯äœã§ããïŒ
ããŒã¯ãã£ãªããïŒ ããã¹ãããšããçšèªã¯ãéå°ãªçšèªã§ãã åäœãã¹ããæåãã¹ããããã©ãŒãã³ã¹ãã¹ããªã©ãäœã§ãæå³ããããŸã...ç§ã®çµéšã§ã¯ãæåãã¹ããã€ãŸããã¹ãã±ãŒã¹ããã¹ããããã®æ®µéçãªèšç»ã®æåå®è¡ã¯ãæ¬åœã«é«äŸ¡ã§ãå€ãã®å Žåãæã£ãã»ã©å¹æçã§ã¯ãããŸããã ããã«ããããã®éå±ãªãã¹ãã®èªååã¯ãããçšåºŠããæå³ããããŸããã ãã ããå®éã«ã¯ãã¹ããã©ãããã«åŸãå¿ èŠãããããããã®ãšã³ãããŒãšã³ã/ UIãã¹ããããŸãèšè¿°ããªãã§ãã ããã ãã¹ãã®ã»ãšãã©ã¯ãå®éã®ãŠããããã¹ãã§ããå¿ èŠããããŸããéåžžã«é »ç¹ã«å®è¡ã§ããç¬ç«ããã¯ã€ãã¯ãã¹ãã§ãã ãããã®ãã¹ãã®äœæã¯ãç¹ã«ããŒã«ãç¥ã£ãŠããå Žåã¯æ¯èŒçå®äŸ¡ã§ãã ãããã¯éåžžã«ä¿¡é Œæ§ãé«ããããæŽæ°ã«æéã浪費ããããšã¯ãããŸããã èšå€§ãªæ°ã®ã³ã³ããŒãã³ããé¢ä¿ãããããUIããã³çµ±åãã¹ãã¯åžžã«è匱ã«ãªããŸãã
Vsevolod BrekelovïŒè¯ãããªãã¯ããããŸã-å°ãªãã³ãŒããæžããŠãã ããã
äž»ãªããšã¯ãããã»ã¹ãšäœã解決ïŒãŸãã¯ãã¹ãïŒããããç解ããããšã§ãã
äºç®ãšæéãé©åã«è©äŸ¡ããããšãåžžã«å¿ èŠã§ãã ããã¯ã©ãããæå³ã§ããïŒ 100ïŒ ã®ã«ãã¬ããžã«è¿ãéé¡ã®ãéã泚ãäœè£ããããªãããªãã§ããïŒ ãã¹ã¿ãŒã¯ãã¹ã¿ãŒã§ãã
èªåãã¹ãã«ãéããªãå ŽåïŒãåãã®ããã«ãäž»ã«é·æã«ããããããžã§ã¯ãã§æŠã£ãŠããŸãïŒãå€ãã®æåãã¹ã¿ãŒãéžæè¢ã§ãã
極端ã«è¡ããªãå Žåãæãäžè¬çãªééãã¯ããŠããããã¹ããã³ã³ããŒãã³ããã¹ããããã¯ãšã³ããããã³ããšã³ããDBãããã©ãŒãã³ã¹ãªã©ã®çµ±åãã¹ããæžãããåã«ããã«ã¹ã倱ãåã«ãããã§e2eãã¹ããæžãããšã§ãã ãã®åŸåã¯ããããããã¬ã³ãã£ãªBDDã¢ãããŒãã«ãããã®ã§ãïŒç§ã¯ããããããŸã奜ãã§ã¯ãããŸããïŒã ããã¯ãã¹ãŠäœã«ã€ãªãããŸããïŒ
ãäžæ¯ãã®ç¬¬äžæ®µé-ããªãã®èªååã¯æ¬åœã«åãå§ããŸãã æåãã¹ãã±ãŒã¹ãèªåãã¹ãã±ãŒã¹ã«çœ®ãæããŸãã ãã¹ã¿ãŒã¯åã³å§ããŸãã ãããŒãžã£ãŒã¯ã圌ããæãããšããŠãããšèãå§ããŠããŸãã
2床ç®-å€ãã®ãã¹ãããããäœããã®çç±ã§å®æçã«å€±æãããã®ããããŸãã ãã¹ã¿ãŒã¯ãã¯ãããŸã幞ãã§ã¯ãããŸããã 座ã£ãŠçç±ãç解ããå¿ èŠããããŸãã ãããããã°ã¯ãŸã ã¯ããŒã«ããŸãã ãããŠããããã圌ãã¯æåïŒããããç¿ïŒã®ãã¹ãã«ãã£ãŠQAç°å¢ã«ããã®ã§ãã
3床ç®-誰ããSeleniumã«é¢ããäŒè°ã«åå ãå§ãïŒãããã®äŒè°ã«å察ããããšã¯ãããŸããïŒãFlakyãã¹ãã®å¯ŸåŠæ¹æ³ãåŠã³ãããŸããŸãªãœãªã¥ãŒã·ã§ã³ãè©ŠããŸãã ãã¹ãã䞊è¡ããŠå®è¡ããŸãã
4çªç®ã®åŠäœã¯ã50ã®ãšãŒãžã§ã³ãã§500ã®e2eãã¹ããå®è¡ããããã®ã¹ãŒããŒéå±€å šäœãæ§ç¯ãããã¹ãŠã10åãšããçãæéã§è¿ éã«é£ã¶ããã«ããããšã§ãïŒãã¡ãããããã§èªåŒµããŸãïŒã ãããŠãŸã ãã°ããããŸãã
5床-ç§ã¯ãããéæäžå¯èœãšåŒã³ãŸãã ã»ãšãã©ã®e2eãã¹ãã¯äžèŠã§ããããšãããããŸãã 誰ãæžããããšã®ãªãä»ã®ãã¹ããå¿ èŠã§ãã ããšãã°ãã³ã³ããŒãã³ãã¯ããã¯ãšã³ãã§ãã¹ãããããUIã§ããã¹ãããŸãã ãããšãã·ã¹ãã ãã¹ãã§ã¯ãªãã®ã§ããããïŒ ãããšãã¬ã€ã¢ãŠããã¹ãã§ããïŒ ãããšãã{username}ãªãã·ã§ã³ã§ããïŒ
ãã¡ããããã¹ãŠããæ£ãããè¡ããããããžã§ã¯ãããããŸãã ããããå€ãã®å Žåããã¹ãããå¿ èŠããããã®ãç解ããŠããªããšããåé¡ããããŸãã ååãªç解ãããã°ãæéãšãéãç¯çŽã§ããŸãã ããã«ã補åã®å質ãåäžãããŸãã
-éçºããŒã«ã®éçºãšã³ãŒãäœæã®ã¢ãããŒãã¯ããã¹ã¿ãŒã®ããŒã«ãšã¢ãããŒãã«ã©ã®ããã«åœ±é¿ããŸããïŒ ã©ã®é©æ°ããããããç°¡åã«ããŸãã
åäœãã¹ãïŒããšãã°ãã¡ãœãããã©ã ãé¢æ°ãšããŠè¡šãïŒ
Marc PhilippïŒæ°ããããŒã«ã¯ãéçºè ã«æè»æ§ãäžããããšã§éçºè ã®ç掻ã楜ã«ããŸãã ãã ããæçµçã«ããã¹ããã¡ãœãããšããŠæ瀺ããããã©ã ãé¢æ°ãšããŠæ瀺ãããã¯åé¡ã§ã¯ãªããšæããŸãã äœããã¹ãããã©ã®ããã«ãã¹ãããããç解ããããšãæãé£ããéšåã§ãã
Vsevolod BrekelovïŒããŒã«ãšã¢ãããŒãã®éçºã¯ã䜿çšããã°ãã©ã¹ã®å¹æããããŸãã èªå€§åºåã®æè¡ãè·å Žã§ã®ã¢ãããŒããåžžã«é©çšã§ãããšã¯éããŸããã ç§ãã¡ã¯ãŸã ããžãã¹äžã®åé¡ã解決ããŠããŸãã ããããåžžã«ãã©ã³ã¹ãèŠã€ããããšãã§ããŸãã
ãã¹ããç°¡åã«ããã®ã¯å¥åŠãªè³ªåã§ãã ãã¯ãããžãŒã¯äººçã倧ããä¿é²ããããšã¯ã§ããªããšæããŸãã æ°ãããã®ïŒãã¯ãããžãŒãããŒã«ïŒã䜿çšããããã«ã¯ãããŒã å šäœã§èª¿æ»ããããçš®ã®ãããªã·ãŒããã³ãŒãã¹ã¿ã€ã«ãåãå ¥ããå¿ èŠãããããã§ãã é·ãç®ã§èŠãã°ããã¯ãã¡ããç掻ã楜ã«ããããšãã§ããŸãããçè·é¢ã§ã¯åŽåéçŽçã§ãããããããŸãæçšã§ã¯ãããŸããã
ãšããã§ãKotlinã«åãæ¿ãããªãã·ã§ã³ïŒJavaãã¹ãã«ã€ããŠè©±ããŠããå ŽåïŒã¯è¯ãã¢ã€ãã¢ãããããŸããã ç§ã¯ãŸã ç·Žç¿ã§è©ŠããŠããŸããã
èšèªã®é©æ°ïŒã©ã ãããã®ä»ã®ãŠãŒãã£ãªãã£ïŒã«é¢ããŠã¯ããã¡ããããã¯ãã¹ãŠè¯ãããšã§ããã枬å®ããå¿ èŠãããã®ã§ãã©ãã»ã©ç°¡åã«ç掻ã楜ã«ãªãããèšãã®ã¯é£ããã§ãã ç§ã¯æž¬å®ããŸããã§ããã ããããé²æ©ã®å察è ãšããŠç§ãæžãçããŠã¯ãããŸãããç§ã¯äœãæ°ããããšãåŠã¶/䜿ãç¿æ £ãåžžã«ååšããã¹ãã§ãããšä¿¡ããŠããŸãã ããã¯éåžžã®ç¶ç¶çãªæ¹åã¹ããŒãªãŒã§ãã
-åäœãã¹ãã§çç£ãããžã§ã¯ããã©ã®çšåºŠã«ããŒããŠããŸããïŒ 100ïŒ ã®ã«ãã¬ããžã«æéãè²»ãã䟡å€ã¯ãããŸããïŒ
Marc PhilippïŒäœ¿çšããããã°ã©ãã³ã°èšèªãšãã¬ãŒã ã¯ãŒã¯ã«ãã£ãŠã¯ããããžã§ã¯ãã«ããžãã¯ãå«ãŸãªãå®åçãªã³ãŒããå«ãŸããŠããå ŽåããããŸãã ããããç§ã®æèŠã§ã¯ããã®ãããªéšåã«å ããŠããã¹ãŠã®ã³ãŒãã«å¯ŸããŠåäœãã¹ããäœæããå¿ èŠããããŸãã ãããã£ãŠãç§ã¯90ïŒ ä»¥äžã®ã«ãã¬ããžããå§ãããŸãã
Vsevolod BrekelovïŒç§ãä»äºãããªããã°ãªããªãã£ããããžã§ã¯ãã§ã¯ãã»ãšãã©ã®å Žåãéçºè ã¯ãã¹ãã90ïŒ ã§ã«ããŒããããšããŸãã æéã«èŠåã䟡å€ããããã©ããã¯éåžžã管çè ã決å®ããŸãã ç§ã¯ãããŒãžã£ãŒã§ã¯ãããŸããããç§ã«ãšã£ãŠã¯åäœãã¹ãã¯éåžžã«è¯ãç¿æ £ã§ãããã®ããã®ãªãœãŒã¹ãããå Žåã¯ã100ïŒ ã®ã«ãã¬ããžãåŸãã®ãè¯ãã§ãããã
èŠããŠããã¹ãäž»ãªããšã¯ãæ®å¿µãªãã100ïŒ ã®ã«ãã¬ããžã¯ãã°ããªãããšãä¿èšŒãããã®ã§ã¯ãªããšããããšã§ãã
ã«ãã¬ããžã90ïŒ ãã100ïŒ ã®ã¬ãŒã¹ãããæçšãšæããããã®ãããçªç¶å€ç°ãã¹ããäœæããããšãã§ããŸãã 2012幎ã®èšäºã«é¢ããŠãæ°ããããšã¯äœãèšããŸããã ãããå®éã«ã¯ããã®ã¢ãããŒããé©çšãããŠããããšã¯ããŸãèŠãŸããã§ããïŒãããŠç§èªèº«ãæãæ¹ããŠããŸãïŒã ããã§ãå€åããã¯éå§ããæã§ããïŒ
-ãã¹ããã¬ãŒã ã¯ãŒã¯ã¯åäœãã¹ãã«ã©ã®ããã«åœ¹ç«ã¡ãŸããïŒ åœŒãã¯ä»äºã®ã©ã®éšåãåŒãåããŸããïŒ ãã¬ãŒã ã¯ãŒã¯ã䜿çšããå ŽåãäœãæåŸ ãã¹ãã§ã¯ãããŸãããïŒ
Marc PhilippïŒåªãããã¬ãŒã ã¯ãŒã¯ã䜿çšãããšãåçŽãªåäœãã¹ããéåžžã«è¿ éãã€ç°¡åã«èšè¿°ã§ãããšåæã«ãããè€éãªãã¹ããå®è¡ããããã®åŒ·åãªã¡ã«ããºã ãå«ããããšãã§ããŸãã ããšãã°ããã¹ãããŒã¿ãæºåããå€ãã®ãã¹ãã§åãããžãã¯ãåå©çšã§ããæ¡åŒµãã€ã³ããæäŸããã®ã«åœ¹ç«ã¡ãŸãã ããããã©ã®ãã¬ãŒã ã¯ãŒã¯ããã¹ãã®å¯Ÿè±¡ã決å®ããããšã¯ãããŸããã ãŸãã圌ã¯ããªãã®ãããžã§ã¯ããéæ³ã®ããã«æ¹åããŠããã¹ãããããããããšãã§ããŸããã
-åäœãã¹ããæãé£ããã³ãŒãèŠçŽ ã¯ã©ãã§ããïŒ ããªãã®åé¡ã¯ã©ã®ããã«è§£æ±ºãããŸããïŒ
Vsevolod BrekelovïŒäŸåé¢ä¿ãå€ãã»ã©ãã«ãŒãã³ãå€ãã»ã©ãåäœãã¹ããæžãã®ãé£ãããªããŸãã ããããäžè¬çã«ãæ£çŽãªãšãããç¹å®ã®åé¡ã¯èŠåœãããŸããã ãŠããããã¹ãã®ãããã¯ã«ã€ããŠã¯å€æ°ã®æ¬ãæžãããŠããŸããããã®ãã¡ã®1æ¬ã¯æåŸãŸã§èªãã§ããŸããã ãã¶ããããåé¡ãæ±ããŠããªãçç±ã§ãã
ããšãã°ããªããžã§ã¯ãã®ã³ã³ã¹ãã©ã¯ã¿ã«æ¥éšã®ã³ãŒããå«ãŸããŠããå Žåãåäœãã¹ããæžãããšã¯å°é£ã§ããããã®åŸãæ¬ãèªãããã«ä»²éã«ã¢ããã€ã¹ããããšãã§ããŸãã
ããšãã° ãã³ãŒãã¬ãã¥ãŒã®ãã©ã¯ãã£ã¹ã玹ä»ããŸãã
JavaScriptã³ãŒãã«ã€ããŠã¯ããã€ãžã§ã¹ãã®æäœãªã©ã䜿çšããããã¬ãŒã ã¯ãŒã¯ã«é¢é£ããå¯èœæ§ãé«ããããããŸããŸãªå°é£ãé©ãã«ééããå¯èœæ§ããããŸãïŒã¯ããç§ã¯JavaScriptã倧奜ãã§ãïŒã AngularJS / Angular2 / Angular4ã®ã¿ã䜿çšããŸããã AngularããŒã ã¯äŸ¿å©ãªãã¹ãæžã¿ã®ãã¬ãŒã ã¯ãŒã¯ãäœæããããšåªåããŠããŸããã確ãã«è§£æ±ºçã®ããåé¡ãçºçããããšããããŸããç§ãã¡ã¯ãšã³ãžãã¢ã§ãã
ãã¹ãã®ããããåŽé¢ã«é¢ããèšå€§ãªæ å ±ããè¿ãã®ãã€ãŒã³ãã°ã®åå è ãåŸ ã£ãŠããŸããããŒã¯ãã£ãªããã¯ãã¬ããŒããJUnit 5-Javaã®æ°ãããã¹ããã¬ãŒã ã¯ãŒã¯ãšJVMã®ãã©ãããã©ãŒã ããèªã¿ãŸãã
äŒè°ã§ä»ã®éèŠãªäººç©ãäœã話ãããç¥ãããšãã§ããå芳è ã®æãç·æ¥ã®è³ªåã«çããããšãã§ããŸãã