ການທົດສອບແບບ 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 ສາມາດສົ່ງຄືນ object ທີ່ມີ property ໃດກໍໄດ້, ຈຶ່ງບໍ່ສາມາດກວດຈັບຄວາມບໍ່ສອດຄ່ອງກັບ DB schema ໄດ້. incident ທີ່ວ່າ "test ຜ່ານ GREEN ທັງໝົດ ແຕ່ເກີດ column does not exist ໃນ production" ນັ້ນບໍ່ແມ່ນເລື່ອງແປກ. unit test ມີຄວາມເຂັ້ມແຂງໃນການກວດສອບ business logic, ແຕ່ຄວາມສອດຄ່ອງຂອງ system boundary ຈຳເປັນຕ້ອງໄດ້ເສີມດ້ວຍ functional test ຫຼື E2E test.
TDD (Test-Driven Development) ແມ່ນວິທີການພັດທະນາທີ່ນຳໃຊ້ unit test ເປັນ "ເຄື່ອງມືອອກແບບ". ການຂຽນ test ກ່ອນຈະເຮັດໃຫ້ specification ຂອງ input/output ຂອງ function ຖືກກຳນົດໄວ້ກ່ອນການ implement. ເນື່ອງຈາກ unit test ເປັນສິ່ງທີ່ຕ້ອງມີເປັນພື້ນຖານ, ທັງສອງຈຶ່ງມີຄວາມສຳພັນທີ່ໃກ້ຊິດກັນ.


ການທົດສອບຟັງຊັນ (Feature Test) ແມ່ນວິທີການທົດສອບທີ່ກວດສອບພຶດຕິກຳຂອງລະບົບໃນລະດັບຟັງຊັນສະເພາະ ຫຼື Use Case. ມັນຄອບຄຸມຂອບເຂດທີ່ກວ້າງກວ່າການທົດສອບໜ່ວຍ (Unit Test) ແລະ ກວດສອບວ່າຫຼາຍ Module ເຮັດວຽກຮ່ວມກັນໄດ້ຢ່າງຖືກຕ້ອງຫຼືບໍ່.

ການປັບແຕ່ງລະອຽດ (Fine-Tuning) ແມ່ນຂະບວນການທີ່ນຳເອົາຂໍ້ມູນການຮຽນຮູ້ເພີ່ມເຕີມມາໃຫ້ກັບໂມເດລ Machine Learning ທີ່ຜ່ານການຮຽນຮູ້ລ່ວງໜ້າແລ້ວ ເພື່ອປັບໃຫ້ເໝາະສົມກັບວຽກງານ ຫຼື ໂດເມນສະເພາະໃດໜຶ່ງ.

ການທົດສອບການຍອມຮັບ (Acceptance Test) ແມ່ນວິທີການທົດສອບທີ່ກວດສອບວ່າຟັງຊັນທີ່ພັດທະນາແລ້ວນັ້ນຕອບສະໜອງຄວາມຕ້ອງການທາງທຸລະກິດ ແລະ User Story ຫຼືບໍ່ ໂດຍອີງຕາມທັດສະນະຂອງ Product Owner ແລະ Stakeholder.

ຄູ່ມືສອບເສັງໃບຢັ້ງຢືນ AWS: ອະທິບາຍຄົບຈົບຕັ້ງແຕ່ການສະໝັກຈົນຮອດວັນສອບເສັງ

ການທົດສອບ E2E (End-to-End Testing) ແມ່ນວິທີການທົດສອບທີ່ເລີ່ມຕົ້ນຈາກການກະທຳຂອງຜູ້ໃຊ້ງານ ໂດຍຜ່ານ browser ຫຼື API ເພື່ອກວດສອບວ່າລະບົບທັງໝົດເຮັດວຽກໄດ້ຕາມຜົນລັບທີ່ຄາດຫວັງ.