ການທົດສອບຫົວໜ່ວຍ

ການທົດສອບແບບ Unit Test ແມ່ນວິທີການທົດສອບທີ່ກວດສອບໜ່ວຍທີ່ນ້ອຍທີ່ສຸດຂອງໂປຣແກຣມ ເຊັ່ນ: function ຫຼື method ແຕ່ລະອັນໂດຍສະເພາະ. ໂດຍການແທນທີ່ການເພິ່ງພາພາຍນອກດ້ວຍ mock ເພື່ອໃຫ້ສາມາດກວດສອບສະເພາະ logic ທີ່ຕ້ອງການໄດ້ຢ່າງວ່ອງໄວ.
"ໜ່ວຍ" ໝາຍຄວາມວ່າຫຍັງ
"ໜ່ວຍ" ໃນ unit test ມີລະດັບຄວາມລະອຽດທີ່ແຕກຕ່າງກັນໄປຕາມພາສາແລະ framework. ບາງຄັ້ງໝາຍເຖິງ function ດຽວ, ບາງຄັ້ງໝາຍເຖິງ class ດຽວຫຼືທັງ module. ສິ່ງທີ່ມີຮ່ວມກັນຄືຫຼັກການ "ທົດສອບໃນສະພາບທີ່ຕັດ external I/O (DB, network, file system) ອອກ".
external dependency ຈະຖືກແທນທີ່ດ້ວຍ mock ຫຼື stub. ຕົວຢ່າງເຊັ່ນ: ສົ່ງຄືນຜົນລັບ query ຂອງ Supabase ຜ່ານ mock object, ຫຼືແທນທີ່ API call ດ້ວຍ stub. ດ້ວຍວິທີນີ້, ຄວາມໄວໃນການ execute ຈຶ່ງຢູ່ໃນລະດັບ millisecond, ແລະສາມາດ run ໄດ້ຫຼາຍຮ້ອຍຫາຫຼາຍພັນ test case ໃນທຸກ commit ໃນ CI pipeline.
ຂໍ້ຈຳກັດຂອງ Mock
ເນື່ອງຈາກ mock ສາມາດສົ່ງຄືນ object ທີ່ມີ property ໃດກໍໄດ້, ຈຶ່ງບໍ່ສາມາດກວດຈັບຄວາມບໍ່ສອດຄ່ອງກັບ DB schema ໄດ້. incident ທີ່ວ່າ "test ຜ່ານ GREEN ທັງໝົດ ແຕ່ເກີດ column does not exist ໃນ production" ນັ້ນບໍ່ແມ່ນເລື່ອງແປກ. unit test ມີຄວາມເຂັ້ມແຂງໃນການກວດສອບ business logic, ແຕ່ຄວາມສອດຄ່ອງຂອງ system boundary ຈຳເປັນຕ້ອງໄດ້ເສີມດ້ວຍ functional test ຫຼື E2E test.
ຄວາມສຳພັນກັບ TDD
TDD (Test-Driven Development) ແມ່ນວິທີການພັດທະນາທີ່ນຳໃຊ້ unit test ເປັນ "ເຄື່ອງມືອອກແບບ". ການຂຽນ test ກ່ອນຈະເຮັດໃຫ້ specification ຂອງ input/output ຂອງ function ຖືກກຳນົດໄວ້ກ່ອນການ implement. ເນື່ອງຈາກ unit test ເປັນສິ່ງທີ່ຕ້ອງມີເປັນພື້ນຖານ, ທັງສອງຈຶ່ງມີຄວາມສຳພັນທີ່ໃກ້ຊິດກັນ.
ບົດຄວາມທີ່ກ່າວເຖິງຄຳສັບນີ້
- ຄູ່ມືການອອກແບບການປະເມີນຜົນ AI Agent — ການຮຽກໃຊ້ເຄື່ອງມື, ເສັ້ນທາງການປະຕິບັດງານ ແລະ ການກວດຫາການຖົດຖອຍ
- AI Observability ແມ່ນຫຍັງ? ກົນໄກການຕິດຕາມ ແລະ ຄູ່ມືການປະຕິບັດງານ LLM ໃນສະພາບແວດລ້ອມຈິງຮຽນຮູ້ພື້ນຖານ AI Observability, ການຕິດຕາມ, ການປະເມີນຜົນ ແລະ ການຈັດການຕົ້ນທຶນສຳລັບ LLM, ພ້ອມຂັ້ນຕອນການນຳໃຊ້ ແລະ ການເລືອກເຄື່ອງມືທີ່ເໝາະສົມ.
- ການນຳໃຊ້ AI Observability: ການເຊື່ອມໂຍງກັບການຕິດຕາມແອັບພລິເຄຊັນທີ່ມີຢູ່ ແລະ ການນຳໃຊ້ແບບເປັນຂັ້ນຕອນຂັ້ນຕອນການປະຕິບັດເພື່ອເຊື່ອມໂຍງ AI Observability ເຂົ້າກັບໂຄງສ້າງພື້ນຖານ ຫຼື Infrastructure ການຕິດຕາມແອັບພລິເຄຊັນ. ຮຽນຮູ້ວິທີສ້າງຂະບວນການ ຫຼື Pipeline ແລະຍຸດທະສາດການນຳໃຊ້.
- ການອອກແບບງົບປະມານ Latency ສຳລັບ AI Agent — ວິທີຄວບຄຸມການແລກປ່ຽນ ຫຼື Trade-off ລະຫວ່າງເວລາຄິດ ແລະ ເວລາຕອບສະໜອງອະທິບາຍບັນຫາ "ເວລາຄິດ" ໃນ Multi-step reasoning agent ທີ່ເຮັດໃຫ້ເກີດຄວາມຊັກຊ້າ, ພ້ອມປຽບທຽບການຈັດສັນ Latency budget ແລະ ຮູບແບບການນຳໃຊ້ຕາມຄວາມຊັບຊ້ອນ.
ຄຳສັບທີ່ກ່ຽວຂ້ອງ

ການທົດສອບ E2E
ການທົດສອບ E2E (End-to-End Testing) ແມ່ນວິທີການທົດສອບທີ່ເລີ່ມຕົ້ນຈາກການກະທຳຂອງຜູ້ໃຊ້ງານ ໂດຍຜ່ານ brows

ການທົດສອບການຮັບຮອງ
ການທົດສອບການຍອມຮັບ (Acceptance Test) ແມ່ນວິທີການທົດສອບທີ່ກວດສອບວ່າຟັງຊັນທີ່ພັດທະນາແລ້ວນັ້ນຕອບສະໜອງຄວ

SSM (AWS Systems Manager)
AWS Systems Manager (SSM) ແມ່ນ AWS Managed Service ທີ່ໃຊ້ສໍາລັບການດໍາເນີນງານ ແລະ ຈັດການ EC2 instance

ATDD
ATDD (Acceptance Test-Driven Development) ແມ່ນວິທີການພັດທະນາທີ່ທີມງານທັງໝົດກຳນົດເງື່ອນໄຂຂອງ acceptan



