
第34åïŒããã¹ãã³ãŒãã®ã¬ã€ãã©ã€ã³ ãã®9ããAI飿ºãAIã«ãã¹ããæžãããæ¥µæ ââ èŠåŸãªãAIã¯ãè² åµããéç£ããã
âšïž AIãšããåã®ãæŽèµ°ç¹æ¥ã
æ±æ ¹æž©æ³æ¯éšã®æãéçºå®€ã®çªããã¯ãæž©æ³è¡ãå ãæé§ãææ¥ãæµŽã³ãŠãç¥çè²ã«èŒããªããæ¶ãããã®ãèŠããããã®éè¬ãªç©ºæ°ãšã¯è£è ¹ã«ããããªã®ãã¹ã¯åšèŸºã ãã¯ããŸãã§æªæ¥éœåžã®ããã«æŽ»æ°ã¥ããŠããã
ãããªã¯ä»ãçæAIããã«æŽ»çšããéçºãããŒã®æ§ç¯ã«å€¢äžã ã£ãããšãã£ã¿äžã§AIã«æç€ºãé£ã°ããšããã®ã®æ°ç§ã§è€éãªãã¹ãã³ãŒããç»é¢ãåãå°œãããŠããã
ãããªïŒ ãâŠâŠããïŒ ãŸã10ã±ãŒã¹å®æãâŠâŠããµãå 茩ãèŠãŠãã ããïŒ AIãå°å ¥ãããããã¹ãã³ãŒãã®äœææéããããŸã§ã®10åã®1ã«ãªããŸããããã¯ãã¿ã€ãã³ã°ã®é床ããå¿ èŠãããŸãããããã§çééçºééããªãã§ããïŒã
ãããªã¯ããã€ãŠãªã髿æã«å ãŸããŠããããæžãèŠãã¿ãããè§£æŸãããèšå€§ãªãã¹ãã³ãŒãããèªåçãã«ç©ã¿äžãã£ãŠããå æ¯ã¯ããšã³ãžãã¢ã«ãšã£ãŠã®çæ³é·ïŒãŠãŒããã¢ïŒã«èŠããã
ãµãïŒ ãããŒãææã®å©åšããããâš æ¬åœãéæ³ã¿ããã«ã³ãŒããå¢ããŠãããâŠâŠãã
ãµãã¯ã次ã ãšçæãããã³ãŒãã®å¥æµãçºããªãããäžæµãªç¬ã¿ãæµ®ãã¹ãã
ãµãïŒ ãâŠâŠã§ãããã²ãŸããã®å±±ã®ãããªã³ãŒãã誰ãã¬ãã¥ãŒããã®ïŒâšã
âšïž ã¬ãã¥ãŒå°çãšãè² åµãã®å±±
ãµãã®ãã®äžèšã¯ãäºèšã®ããã«çäžããã ååŸããããªãèªä¿¡æºã ã«æåºãããã«ãªã¯ãšã¹ããã¬ãã¥ãŒãå§ãããµãã®é¡ããèŠãèŠããã¡ã«éºãããªã£ãŠããã
ãµãïŒ ãâŠâŠã²ãŸãã¡ãã£ãšãã£ã¡æ¥ãŠãâšã
ãããªïŒ ãã¯ãïŒ ã©ãã§ããïŒ ç¶²çŸ çãããããªã§ããããã°ãèŠåœãããªãã¯ãã§ãïŒã
ãµãïŒ ãããŒãããã°ããããã©ããã®åã«ãâŠâŠãèªã¿ãããªãããã ããããã®ã³ãŒããâšã
ãµããæå·®ããAIçæã³ãŒããããã«ã¯ãèŠåŸã倱ã£ããéè¯ã®AIããåãåºããéæªãªæ§é ãåºãã£ãŠããã
æ§é ã®äžåš: AAAã®ååãªã©ã©ããžãããæºåïŒArrangeïŒã®éäžã§ãããªãå®è¡ïŒActïŒãèµ°ãããŸãæºåã«æ»ããè¿·è·¯ã®ãããªæ§æã
宿³äžç¶ã®é£çº: ã倿°ã空ã§ãªãããšããåãæ£ããããšããªã©ãæ¬è³ªã«é¢ä¿ã®ãªãç®æã§ã¢ãµãŒã·ã§ã³ã10åã20åãæ£ãã°ã£ãŠããã
ä¿å®äžèœãªããžãã¯: ãã¹ãã³ãŒãã®äžã« if æãè€é㪠for ã«ãŒããå¹³ç¶ãšæ··ããããŸãã§ããºã«ãè§£ãããã«èªã¿è§£ããªããã°ãäœã確èªããŠããã®ãå€å¥äžèœã
ãµãïŒ ãã²ãŸãããããéã«ã¬ãã¥ãŒã«æéãããããïŒâš æžãã®ã¯äžç¬ã§ããã¡ã³ããã³ã¹ããã®ã¯äžçãªãã ãèŠåŸã®ãªãAIã«æžãããã³ãŒãã¯ããã ã®ãè² åµéç£æ©ãã ãããããªããæåãã人éãäžå¯§ã«æžããã»ãã100åãã·ã ããâšã
ãããªã¯çµ¶å¥ãããçéã ãšæã£ãŠããéçºå¹çããå®ã¯ãå°æ¥ã®èªåãã¡ãžã®ãã±ããç©ã¿äžããŠããã ãã ã£ãããšã«æ°ã¥ããã®ã ã
âšïž AIãã躟ãããããã³ããã®èŠåŸ ââ éã§çžãè·äººã®é
ã«ã«ïŒ ãïŒæã§ãã·ããšçŒé¡ã®ããªããžãçŽããå·åŸ¹ãªé¿ãã§æèšããïŒâŠâŠåœç¶ã®çµæã§ãããããªãããAIã«ãèªç±ããªã©äžããŠã¯ãããŸãããïŒð€ã
çªç¶ã®ã«ã«ã®èšèã«ããããªã¯èçãæ£ãã
ãããªïŒ ãèªç±ãâŠâŠäžããªãïŒã
ã«ã«ïŒ ãããã§ããAIããäžèœã®å€©æããšããŠæ±ãããè£åãããã®ã§ããAIã¯ããã¡ãã峿 Œã«ç®¡çãã¹ããèŠåŸãç¥ããªãè·äººãã«éããŸãããç§ãã¡ããããŸã§è¡èã«ããŠããããã¹ãã®äœæ³ãããããã³ãããšããåã®éŒã®éã§ãäžåäžå¥éãã¬ããçžãä»ããã®ã§ããïŒïŒð€ã
ã«ã«ã¯ãã¯ã€ãããŒããå©ããAIãã躟ãããããã®çŠå¿ãæžã殎ã£ãã
â AAAã®ç©ççãªåŒ·å¶
ããã¹ãã³ãŒãã¯ãå¿ ã空è¡ã§åºåããã Arrange / Act / Assert ã®äžæ®µæ§æã«ããããã以å€ã®æ§é ã¯èªããªãã
â¡ åäžè²¬ä»»ã®çµ¶å¯Ÿå
ãActïŒå®è¡ïŒã¯å¿ ãäžè¡ã«ãããã¢ãµãŒã·ã§ã³ã¯æåŸã®äžå¡ã«éçŽãããäžéã«æ€èšŒãæãããšã¯äžæ»ã«å€ããã
⢠ããžãã¯ã®å®å šçŠæ¢
ããã¹ãã³ãŒãå ã« ifãforãwhile ãªã©ã®å¶åŸ¡æ§æãæžãããšã¯æ»çœªãšãããåžžã«äžçŽç·ã®å®è¡ã«ãŒããä¿ãŠã
ã«ã«ïŒ ããããã®èŠåŸããããã³ããã®åé ã«å©ã蟌ãã®ã§ããAIããè³¢ããæ¯ãèãããšããã®ãçŠããç§ãã¡ã®ãåãã«åŸãããšã ãã匷ãããããããŠåããŠãAIã¯çã®æŠåãšãªããŸããïŒïŒð€ã
èŠåŸã«åŸã£ãAIã®ã³ãŒãã¯ã人éããããšèŠãç¬éã«ãäœããã¹ãããŠãããããè³ã«çŽæ¥æµã蟌ãã§ãããã¬ãã¥ãŒã³ã¹ãã¯æå°åãããAIã®ã¹ããŒãããã®ãŸãŸããŒã ã®æšé²åãžãšå€ããã
âšïž 人éã¯ãäœãä¿èšŒããããã«éäžãã
ã«ã«ã®ãæè²ããåãããããªã¯èªåå°çšã®ããã¹ãã³ãŒãçæããã³ãããã磚ãäžããã
ããªïŒ ãããããããããªã¡ãããã³ãŒãã£ã³ã°ãšãããäœæ¥ããAIã«ä»»ããããšã§ãç§ãã¡äººéã¯ãã£ãšå€§äºãªããšã«éäžã§ããããã«ãªã£ãããâã
ãããªïŒ ããã£ãšå€§äºãªããšâŠâŠïŒã
ããªïŒ ãããããäœãæ£ããçµæïŒæåŸ å€ïŒãããå®çŸ©ããèšèšè ã®åœ¹å²ããã³ãŒããæžãæã¯AIã«è²žããŠãç§ãã¡ã¯ãäœãä¿èšŒãã¹ããããšãã仿§ã®æ·±æ·µã«æœãã®ãâã
ããšãPythonã®ãããªèªç±åºŠã®é«ãèšèªã§ãã£ãŠããããã³ããã«ãèŠåŸããšããåã®éªšçµã¿ãéãã°ãåºæ¥äžããã³ãŒãã¯éã®ããã«ç¡¬ããéæãªçŸãšãªãã
ãŠã€ïŒ ããã âŠâŠã£ãâŠâŠç§ãã¡ããåããã¡ãããšå®ãããšã§âŠâŠåããŠãAIãæ¬åœã®çžæ£ã«ãªã£ãŠããããã ããâŠâŠã£ãâŠâŠAIã¯ãç§ãã¡ã®ãèŠåŸããé¡ã®ããã«æ ãåºãâŠâŠéæ³ã®é¡ãªãã ããâŠâŠã£ãã
ãŠã€ã®è©©çãªæ°ã¥ãã«ããããªã¯æŽããããªè¡šæ ã§é ·ããã ãã€ãŠã®ãæŽèµ°ç¹æ¥ãã¯ãä»ããããªã®æç¶±ãã°ãã«ãã£ãŠãæ£ç¢ºç¡æ¯ãªãå質ã®çŸããéãäžããæåŒ·ã®å·¥æ¿ãžãšå€ãã£ãŠããã
ãããªïŒ ãããã³ããã¯ãã ã®åœä»€ãããªããç§ãã¡ã®ããšã³ãžãã¢ãšããŠã®èªããã®å ±æãªãã§ãããâŠâŠãAIãšäžç·ã«ãäžçã§äžçªèªã¿ããããäžçªé Œãã«ãªãçŸãäœã£ãŠã¿ããŸãïŒã
ç¥çè²ã®æ¹¯æ°ãäžããæ±æ ¹æž©æ³ããã®æ¹¯è¹ãã身äœãæ¯ããé©åãªæ·±ããæã£ãŠããããã«ã èŠåŸãšãããåãããããããããAIãšããåºå€§ãªæµ·ã®äžã§ããšã³ãžãã¢ã¯æººããããšãªãæ³³ãç¶ããããšãã§ããã®ã ã
ãããªã®æéµé³ã¯ããã¯ãè¿·ãã®ãªããAIãšã®çŸããäºéå¥ïŒãã¥ãšããïŒãšãªã£ãŠéçºå®€ã«é¿ãæž¡ã£ãŠããã
ð ãã¹ã®ç§èµïŒèšèšã®çŸåŠãšçŸå Žã®ãªã¢ã«
ã€ãã«ãAIã®ç»å Žã§ãã ãããŸã§ã®ãèšèšãã®è©±ããããã¹ãã³ãŒããã®äœæ³ã®è©±ãããã¹ãŠã¯AIã«æé«ã®ãã¹ãã³ãŒããæžããŠãããããã®ãé·ãããããŠäžå¯æ¬ ãªãåºç« ãã§ãã£ããšèšã£ãŠãéèšã§ã¯ãããŸããã
AIã«ãããã¹ãã³ãŒãã®èªåçæã¯ã決ããŠæªã§ã¯ãããŸãããããããããããã®éçºã«ãããå¿ é ã¹ãã«ã§ããããããäœãèããã«ããã®ã¡ãœããã®ãã¹ãã³ãŒããæžããŠããšã ãæç€ºãåºãã°ãã©ããªãã§ããããã
AIã¯ããšãããã倱æããªãã³ãŒãããéç£ãå§ããŸããã¡ãœãããå©ãããšã©ãŒãåºãªããã°åæ ŒãšããâŠâŠããããªãã¢ãµãŒã·ã§ã³ïŒæ€èšŒïŒã®éãæãããæå³ã®ãªãã³ãŒãããç©ã¿äžãã£ãŠããã®ã§ãã
ããã§ã¯ããããã¯ãã³ãŒãã®åè³ªãæ ä¿ããããšã¯ã§ããŸãããå éšã®ããžãã¯ãã©ãã ãä¿®æ£ããŠãããã¹ãã¯æ²é»ãããŸãŸããã°ã¯èŠéãããããã¹ããããããå®å¿ããšããåœãã®èªä¿¡ã ããããŒã ãèãã§ãããŸãã
ããã§å¿ èŠã«ãªãã®ããç§ãã¡ãç©ã¿äžããŠãã**ãèŠåŸã**ã§ãã
ç§ãæ§ç¯ããããã¹ãã³ãŒãå®è£ ã«ãŒã«ããããããŸã§ã話ãããŠãããèšèšã®ã«ãŒã«ããããããããAIã«ããã³ãããšããŠèªã¿èŸŒãŸããã
# ãã¹ãã³ãŒãå®è£
ã«ãŒã«
æ¬ããã¥ã¡ã³ãã¯ãã·ã¹ãã ã®å質ãæ
ä¿ãããã°ã¬ãŒããæªç¶ã«é²ãããã®ãã¹ãå®è£
åºæºã§ããã
ãã¹ãã³ãŒãã¯åãªãæ€èšŒäœæ¥ã§ã¯ãªããããžãã¹ããžãã¯ã®ãæ¯ãèããã蚌æããå®è¡å¯èœãªä»æ§æžãšããŠèšè¿°ããããšã
## 1. ãã¹ãã®ç¯å²ãšåœ¹å²åæ
å¹ççãã€æå³ã®ãããã¹ããå®çŸãããããã¬ã€ã€ãŒããšã«ãã¹ãã®éç¹ãåããã
* **Unitãã¹ãïŒåäœãã¹ãïŒ**:
* **äž»æŠå ŽïŒããžãã¹ããžãã¯å±€ïŒService / Module / UtilïŒ**
* ãã¹ãŠã®æ¡ä»¶åå²ãäŸå€ç³»ãå¢çå€ãç¶²çŸ
ããããžãã¹ã«ãŒã«ã®æ£ãããå®å
šã«èšŒæããã
* å€éšäŸåïŒDBãå€éšAPIçïŒã¯ãã¹ãŠã¢ãã¯åããããžãã¯ã®ã¿ãçŽç²ã«æ€èšŒããã
* **Integrationãã¹ãïŒçµåãã¹ãïŒ**:
* **äž»æŠå ŽïŒã€ã³ã¿ãŒãã§ãŒã¹å±€ / ããŒã¿å±€**
* ããžãã¹ããžãã¯ã®æ£ããã¯Unitãã¹ãã§ä¿èšŒãããŠããããšãåæãšããããã§ã¯ãåå±€ãæ£ããæ¥ç¶ãããŠããããããã³ããã¬ãŒã ã¯ãŒã¯ïŒRouting, SQL, DIèšå®çïŒãæ£ããæ©èœãããããæ€èšŒããã
* æ£åžžç³»ãäžå¿ã«ããšã³ãããŒãšã³ãã§ã®çéã確èªããã
* **ã«ãã¬ããžç®æš**:
* **ç®æšå€: 80%**ãæ°å€ã远ãããã«ç¡æå³ãªãã¹ãïŒåçŽãªã²ãã¿ãŒã»ã»ãã¿ãŒçïŒãæžãããšã¯é¿ããéèŠãªããžãã¹ããžãã¯ã®ç¶²çŸ
ã«æ³šåããã
## 2. ãã¹ãã³ãŒãã®èšèš
### 2.1 é
眮ãšåœå
* **é
眮**: ãã¹ã察象ã®ãã¡ã€ã«ãšåããã£ã¬ã¯ããªïŒéå±€ïŒã«äœæããã
* **ãã¡ã€ã«å**: å
ã®ãã¡ã€ã«åã« `_test` ãä»äžããïŒäŸ: `user_service_test.py`ïŒã
* **颿°å**: ã仿§æžããšããŠæ©èœããããã以äžã®åœ¢åŒã§å
容ãæç¢ºã«ããã
* `test_æ£åžžç³»_ããã¹ããããæ¯ãèããšæåŸ
ããçµæã()`
* `test_ç°åžžç³»_ãçºçãã¹ãäºè±¡ãäŸå€ã()`
* äŸïŒ`test_æ£åžžç³»_éè€ã®ãªãã¡ãŒã«ã¢ãã¬ã¹ã®å Žåã¯ãŠãŒã¶ãŒç»é²ãæåãåçã¡ãŒã«ãéä¿¡ãããããš()`
### 2.2 ãã¹ãã®æ§æïŒ4ãã§ãŒãºæ§æïŒ
ãã©ã®ãããªåæã§ãäœããããšãã«ãã©ããªããããæç¢ºã«ããããã以äžã®æ§æãå³å®ããã
1. **ååŠç (Setup / Arrange)**
* ã¢ãã¯ã®çšæãäŸåãªããžã§ã¯ãã®æ³šå
¥ããã¹ãããŒã¿ã®äœæã
* ä»ã®ãã¹ãã«åœ±é¿ãäžããªããããå¯äœçšã鮿ããã¯ãªãŒã³ãªç°å¢ãçšæããã
2. **å®è¡ (Exercise / Act)**
* 察象ã®ã¯ã©ã¹ã»ã¡ãœãããå®è¡ããã
3. **ã¢ãµãŒã·ã§ã³ (Verify / Assert)**
* **ç¶æ
ã®æ€èšŒ**: æ»ãå€ãæ£ãããã確èªããã
* **æ¯ãèãã®æ€èšŒ**: å
éšã¡ãœããïŒã¡ãŒã«éä¿¡ããªããžããªä¿åçïŒããæåŸ
ãããåŒæ°ã§ãæåŸ
ãããåæ°åŒã³åºãããããæ€èšŒããã
4. **åŸåŠç (Teardown)**
* äœæããäžæããŒã¿ã®åé€ãªã©ãç°å¢ãå
ã®ç¶æ
ã«æ»ãã
## 3. ãæ¯ãèããã蚌æããããã®æé
* **仿§æžãšããŠã®å¯èªæ§**: ãã¹ãã³ãŒããäžèªããã ãã§ããã®ããžãã¹ããžãã¯ãã©ã®ãããªä»æ§ïŒã«ãŒã«ïŒãæã£ãŠãããçè§£ã§ããããã«èšè¿°ããã
* **ã¢ãã¯ãçšããäŸåé¢ä¿ã®æ€èšŒ**: ããžãã¹ããžãã¯ã®å®è¡æé ãæ£ããããšã蚌æãããããæ³šå
¥ããããªããžã§ã¯ãã®åŒã³åºãå±¥æŽãã¢ãµãŒã·ã§ã³å¯Ÿè±¡ã«å«ããã
* **ç°åžžç³»ã®ãçç±ããæ€èšŒ**: åã«ãšã©ãŒãåºãã ãã§ãªããæ£ããäŸå€ã¯ã©ã¹ããšã©ãŒã¡ãã»ãŒãžããšã©ãŒã³ãŒããè¿ãããŠããããå³å¯ã«æ€èšŒããã
## 4. çŠæ¢äºé
* **ãã¹ãã³ãŒãå
ã®ããžãã¯**: ãã¹ãã³ãŒãã®äžã«è€é㪠`if` æã `for` æãæžããªãããã¹ãã¯ã·ã³ãã«ã§å®£èšçã§ããã¹ãã
* **æ¬çªã»å€éšç°å¢ãžã®æ¥ç¶**: ãã¹ãå®è¡æã«ãå®éã®å€éšAPIãDBïŒæ¬çªçžåœïŒãžæ¥ç¶ããããšãå³çŠãšããã
* **äžç¢ºå®èŠçŽ ã®æŸçœ®**: çŸåšæå»ãä¹±æ°ãªã©ãå®è¡ã®ãã³ã«çµæãå€ããèŠçŽ ã¯å¿
ãåºå®å€ïŒã¢ãã¯ïŒã«å·®ãæ¿ããã
ïŒããã¯ã¢ããããŒããããã®ã§ãã®ã§ãããã§å®ç§ã§ã¯ãªãã§ãïœïŒ
ãããã®ãäœæ³ããAIã«åŒ·ããããšã§ãçæãããã³ãŒãã¯åçã«å€ãããŸããAIãåãåºãã³ãŒãã¯ã人éã«ãšã£ãŠãã¬ãã¥ãŒãããããããã€ã仿§ãéåŒã«èªããæå³ã®ãããã¹ããžãšé²åããã®ã§ãã
äžè¬çã«ããã¹ãã³ãŒããå®è£ ã«å«ãããšãå·¥æ°ã¯ãããã¯ãã³ãŒãåäœã®å®è£ ã®ã3åãã«è·³ãäžãããšèšãããŸããããã»ã©ãŸã§ã«ã³ã¹ãã®ãããäœæ¥ã§ãããAIããèŠåŸããè·äººããšããŠäœ¿ãããªãããšãã§ããã°ããã®ã³ã¹ããåçã«æãã€ã€ãå®è£ ã¹ããŒããé£èºçã«é«ããããšãã§ããŸãã
AIã«åœãå¹ã蟌ãã®ã¯ãAIèªèº«ã®ç¥èœã§ã¯ãªãã䜿ãæã§ããç§ãã¡ãæã€ãèšèšã®çŸåŠãã§ãã æé«ã®ããŒãããŒãšå ±ã«ãçéã§ãå質ã®çŸããéãäžããããã®æºåã¯ãããæŽã£ãŠããŸãã
ïŒã€ã¥ãïŒ
#ãšã³ãžã㢠#ããã°ã©ãã³ã° #ãã¹ãã³ãŒã #çæAI #ChatGPT #ããã³ãããšã³ãžãã¢ãªã³ã° #èšèš #AAA #ãŠããããã¹ã #ãœãããŠã§ã¢éçº #å質ä¿èšŒ #QA #ãªãã¡ã¯ã¿ãªã³ã° #ã¯ãªãŒã³ã³ãŒã #DX #æ±æ ¹æž©æ³ç§å¯çµç€Ÿ #ãšã³ãžãã¢ã®æ¥åžž #æè¡çè² åµ
- #çæAI
- #ChatGPT
- #ãšã³ãžãã¢
- #ããã°ã©ãã³ã°
- #èšèš
- #ããã³ãããšã³ãžãã¢ãªã³ã°
- #ãœãããŠã§ã¢éçº
- #å質ä¿èšŒ
- #QA
- #ãªãã¡ã¯ã¿ãªã³ã°
- #ãšã³ãžãã¢ã®æ¥åžž
- #aaa
- #æè¡çè² åµ
- #ãã¹ãã³ãŒã
- #ãŠããããã¹ã
- #æ±æ ¹æž©æ³ç§å¯çµç€Ÿ
- #ã¯ãªãŒã³ã³ãŒã