ããã³ããšã³ã ãšã³ãããŒãšã³ã ãã¹ãã¯ãE2E ãã¹ããšç¥ãããããšãå€ããã¢ããªã±ãŒã·ã§ã³ã®ããŸããŸãªã³ã³ããŒãã³ãã«ããããŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ (UI) èŠçŽ ãUI ã€ã³ã¿ã©ã¯ã·ã§ã³ãããŒã¿åŠçããã¬ãŒã³ããŒã·ã§ã³ã®æ€èšŒãå«ãå æ¬çãªãã¹ãææ³ã§ããããã³ããšã³ãéçºã®ã³ã³ããã¹ãã§ã¯ãE2E ãã¹ãã¯çŸå®äžçã®ãŠãŒã¶ãŒ ã·ããªãªãã·ãã¥ã¬ãŒãããWebãã¢ãã€ã«ããã¹ã¯ããã ã¢ããªã±ãŒã·ã§ã³ã®ã·ãŒã ã¬ã¹ãªæ©èœãããã©ãŒãã³ã¹ããŠãŒã¶ãŒ ãšã¯ã¹ããªãšã³ã¹ãä¿èšŒããããšãç®çãšããŠããŸãã E2E ãã¹ãã¯ãã¢ããªã±ãŒã·ã§ã³ã®ããã³ããšã³ãå šäœã®åäœãšçµå床ãè©äŸ¡ããäžã§éèŠãªåœ¹å²ãæãããç¹ã«AppMasterã®no-codeãã©ãããã©ãŒã ã®ãããªå ç¢ãªããŒã«ã䜿çšããŠçæãããããã³ããšã³ã ã¢ããªã±ãŒã·ã§ã³ã®å ŽåãçŸä»£ã®ãœãããŠã§ã¢éçºã®éèŠãªåŽé¢ãšããŠæ©èœããŸãã
åäœãã¹ããçµ±åãã¹ããšã¯å¯Ÿç §çã«ãããã³ããšã³ã E2E ãã¹ãã¯ããŠãŒã¶ãŒã®èгç¹ããèŠãå®å šãªããã³ããšã³ã ãšã¯ã¹ããªãšã³ã¹ã«çŠç¹ãåœãŠãŠããŸãã UI ã³ã³ããŒãã³ãããŠãŒã¶ãŒã®ããã€ã¹äžã§éå§ãããããã»ã¹ãããã³ã¢ããªã±ãŒã·ã§ã³ã«çµ±åãããŠãããµãŒãããŒã㣠ãµãŒãã¹éã®å¯Ÿè©±ãé©åã«æ©èœããŠããããšãæ€èšŒããŸãã State of Testing ã®èª¿æ»ã«ãããšãåçè ã® 85% ã宿çãªãã¹ã掻åã®äžç°ãšããŠãšã³ãããŒãšã³ã ãã¹ããå®è¡ããŠãããšåçããŠããŸãã
E2E ãã¹ãã§ã¯ããŠãŒã¶ãŒå ¥åããžã§ã¹ãã£ãŒãã¢ã¯ã·ã§ã³ãã·ãã¥ã¬ãŒãããè€æ°ã®ç»é¢ãã³ã³ããŒãã³ãããŸãã¯ããŒãžã®ãããŒãããã²ãŒãããããšã«ãã£ãŠãã¢ããªã±ãŒã·ã§ã³å šäœãæ€èšŒããŸãããã®ããã»ã¹ã¯ãã¢ããªã±ãŒã·ã§ã³ãå®éã®ãŠãŒã¶ãŒã«ãªãªãŒã¹ãããåã«ããªã³ã¯åããäžæ£ãªããŒã¿åŠçãUI èŠçŽ ã®äœçœ®ãããã³ã³ããŒãã³ãã®å¿çãªããªã©ã®åé¡ãç¹å®ããã®ã«åœ¹ç«ã¡ãŸãã E2E ãã¹ãã¯ã髿°Žæºã®ãŠãŒã¶ãŒ ãšã¯ã¹ããªãšã³ã¹ãç¶æããããŸããŸãªããã€ã¹ããã©ãŠã¶ãŒããã©ãããã©ãŒã ã«ããã£ãŠã¢ããªã±ãŒã·ã§ã³ã®ä¿¡é Œæ§ãšå®å®æ§ã確ä¿ããããã«äžå¯æ¬ ã§ãã
ããã³ããšã³ã E2E ãã¹ãã®éèŠæ§ã匷調ããAppMasterã®ãã©ãããã©ãŒã ã¯ãæ¬ é¥ãæå°éã«æããã¢ããªã±ãŒã·ã§ã³ãçæããè¿ éãªæéæ ã§æ£ç¢ºãªçµæãæäŸããããšãç®æããŠããŸãã AppMaster Web ã¢ããªã±ãŒã·ã§ã³çšã® Vue3 ãã¬ãŒã ã¯ãŒã¯ããAndroid çšã® Kotlin ãšJetpack Compose ãiOS ããã€ã¹çšã®SwiftUIã«åºã¥ããµãŒããŒé§ååã¢ãããŒããªã©ã®é«åºŠãªãã¯ãããžãŒãå©çšããŠããŸãããã®çµæã AppMasterã§éçºãããã¢ããªã±ãŒã·ã§ã³ã¯ãè€æ°ã®ãã©ãããã©ãŒã ã«ããã£ãŠã·ãŒã ã¬ã¹ãªãŠãŒã¶ãŒ ãšã¯ã¹ããªãšã³ã¹ãšããã©ãŒãã³ã¹ãæäŸããŸãã
ããã³ããšã³ã E2E ãã¹ãã®å®è¡ã«ã¯ãSeleniumãCypressãProtractor ãªã©ã®äžè¬çãªããŒã«ããã¬ãŒã ã¯ãŒã¯ãå«ããããã€ãã®ããŒã«ãšãã¬ãŒã ã¯ãŒã¯ãå©çšã§ããŸãããããã®ããŒã«ã¯ãã¢ããªã±ãŒã·ã§ã³ã®çš®é¡ããã®ã¢ãŒããã¯ãã£ãéçºã«äœ¿çšããããã¯ãããž ã¹ã¿ãã¯ã«å¿ããŠãããŸããŸãªãã¹ãèŠä»¶ã«å¿ãã倿§ãªæ©èœã»ãããæäŸããŸãã E2E ãã¹ãã«é©åãªããŒã«ãéžæããéã«ã¯ããã®æ±çšæ§ã䜿ãããããå©çšå¯èœãªããã¥ã¡ã³ããã³ãã¥ãã㣠ãµããŒããè©äŸ¡ããããšãéèŠã§ãã
ããã³ããšã³ã E2E ãã¹ãã§ã¯ãéèŠãªãŠãŒã¶ãŒ ã·ããªãªãšæœåšçãªãšããž ã±ãŒã¹ãã«ããŒããé©åãªãã¹ã ã±ãŒã¹ãå®çŸ©ããããšãäžå¯æ¬ ã§ãããã¹ã ã±ãŒã¹ã§ã¯ãåããŠã®ãŠãŒã¶ãŒãéåžžã®ãŠãŒã¶ãŒãããŸããŸãªã¬ãã«ã®å°éç¥èãæã€äžçŽãŠãŒã¶ãŒãªã©ãããŸããŸãªãŠãŒã¶ãŒ ãã«ãœããèæ ®ããå¿ èŠããããŸããæç¢ºã«å®çŸ©ããããã¹ã ã±ãŒã¹ãå«ãå æ¬çãªãã¹ãèšç»ã«ãããåºç¯ãªãã¹ãç¯å²ã確ä¿ãããã¢ããªã±ãŒã·ã§ã³ã®æ©èœããŠãŒã¶ãŒ ãšã¯ã¹ããªãšã³ã¹ã«åœ±é¿ãäžããå¯èœæ§ã®ãããã°ãæ¬ é¥ã®æ€åºã«åœ¹ç«ã¡ãŸããæåãã¹ãã«å ããŠãèªååããã E2E ãã¹ããæ¡çšããŠãæéãšãªãœãŒã¹ãç¯çŽããäžè²«ãããã¹ãã®å®è¡ãä¿èšŒã§ããŸããèªååããã E2E ãã¹ãã¯è¿ éã«å®è¡ã§ããè€æ°ã®ç°å¢ã§åæã«å®è¡ã§ããã¢ããªã±ãŒã·ã§ã³ã®å®å®æ§ã«é¢ãããã£ãŒãããã¯ãããè¿ éã«æäŸã§ããŸãããã ããã¢ããªã±ãŒã·ã§ã³ã®å æ¬çãªãã¹ãç¯å²ã確ä¿ããã«ã¯ãæåãã¹ããšèªåãã¹ãã®ãã©ã³ã¹ããšãããšãéèŠã§ãã
ããã«ãç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ããã³ç¶ç¶çãããã€ã¡ã³ã (CI/CD) ããã»ã¹ãããã³ããšã³ã E2E ãã¹ããšçµ±åããŠãã¢ããªã±ãŒã·ã§ã³ã®äžè²«ããå質ãšè¿ éãªãã£ãŒãããã¯ã確ä¿ããéçšç°å¢ã§ã®æœåšçãªé害ã®ãªã¹ã¯ãããã«è»œæžã§ããŸããããã³ããšã³ã E2E ãã¹ãã CI/CD ãã€ãã©ã€ã³ã«çµ±åããããšã§ãéçºè ã¯æ¬ é¥ãè¿ éã«ç¹å®ããŠä¿®æ£ã§ããå®å®ããé«å質ã®ã¢ããªã±ãŒã·ã§ã³ãå®çŸã§ããŸãã
çµè«ãšããŠãããã³ããšã³ãã®ãšã³ãããŒãšã³ã ãã¹ãã¯ãææ°ã®ãœãããŠã§ã¢éçºãç¹ã«AppMasterã®ãããªno-codeãã©ãããã©ãŒã ã§çæãããè€éãªå€å±€ããã³ããšã³ã ã¢ããªã±ãŒã·ã§ã³ã«ãšã£ãŠäžå¯æ¬ ãªéšåã§ãã E2E ãã¹ãã¯ãå®éã®ãŠãŒã¶ãŒ ã€ã³ã¿ã©ã¯ã·ã§ã³ãã·ãã¥ã¬ãŒãããå¹ åºããã¹ã ã±ãŒã¹ãã«ããŒããèªåãã¹ãã CI/CD ããã»ã¹ãšçµ±åããããšã«ãããã¢ããªã±ãŒã·ã§ã³ãåªãããŠãŒã¶ãŒ ãšã¯ã¹ããªãšã³ã¹ãæäŸããããŸããŸãªãã©ãããã©ãŒã ãããã€ã¹ããã©ãŠã¶ãŒã«ããã£ãŠä¿¡é Œæ§ãç¶æã§ããããšãä¿èšŒããŸããããã³ããšã³ã E2E ãã¹ãã«ããããããã®ãã¹ã ãã©ã¯ãã£ã¹ã«åŸãããšã§ãéçºè ã¯é«æ°Žæºã®ãŠãŒã¶ãŒ ãšã¯ã¹ããªãšã³ã¹ãæ§ç¯ããã³ç¶æããããšãã§ãããŠãŒã¶ãŒã®æºè¶³åºŠãé«ããæçµçã«ã¯ã¢ããªã±ãŒã·ã§ã³ã®æåã«ã€ãªãããŸãã