ການທົດສອບການທໍາງານ

ການທົດສອບການທໍາງານ

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

ລະຫວ່າງ Unit Test ແລະ E2E Test

ຊັ້ນກາງຂອງ Test Pyramid ຄືການທົດສອບຟັງຊັນ (Functional Test). ໃນຂະນະທີ່ Unit Test ຮັບປະກັນຄວາມຖືກຕ້ອງໃນລະດັບຟັງຊັນ ແລະ E2E Test ກວດສອບການເຮັດວຽກຂອງລະບົບທັງໝົດ, Functional Test ຈະກວດສອບ "ຜົນລັບຕໍ່ກັບ Action ໜຶ່ງຂອງຜູ້ໃຊ້".

ຕົວຢ່າງ, Functional Test ສຳລັບ "ສ້າງພະນັກງານ" ຈະດຳເນີນການຕັ້ງແຕ່ການເອີ້ນໃຊ້ Server Action, Validation, ການບັນທຶກລົງ DB, ຈົນເຖິງການສົ່ງ Response ກັບຄືນ. ຢ່າງໃດກໍຕາມ, ບໍ່ຈຳເປັນຕ້ອງເປີດ Browser, ສາມາດດຳເນີນການໄດ້ດ້ວຍການ Simulate HTTP Request ຫຼືການເອີ້ນໃຊ້ Server Action ໂດຍກົງ.

ຂອບເຂດຂອງ Functional Test

ຂອບເຂດຂອງ "ໜຶ່ງຟັງຊັນ" ມັກຈະບໍ່ຊັດເຈນ, ແຕ່ເກນການຕັດສິນໃຈນັ້ນງ່າຍດາຍ. ການເອີ້ນໃຊ້ Server Action ໜຶ່ງຄັ້ງ ຫຼື API Endpoint ໜຶ່ງຈຸດ ຈະສອດຄ່ອງກັບ Functional Test ໜຶ່ງລາຍການ. ສ່ວນສິ່ງທີ່ເຊື່ອມຕໍ່ Action ຫຼາຍອັນຕໍ່ກັນ ເຊັ່ນ "ສ້າງພະແນກ → ສ້າງປະເພດວຽກ → ສ້າງພະນັກງານ" ຈະຈັດຢູ່ໃນປະເພດ Integration Test.

ຄວາມແຕກຕ່າງຈາກ Acceptance Test

Functional Test ກວດສອບຈາກມຸມມອງຂອງນັກພັດທະນາວ່າ "ການ Implementation ຕົງຕາມ Specification ຫຼືບໍ່". Acceptance Test ກວດສອບຈາກມຸມມອງທາງທຸລະກິດວ່າ "ຕອບສະໜອງ Requirement ຫຼືບໍ່". ເຖິງແມ່ນວ່າຈະກວດສອບການດຳເນີນການດຽວກັນ, ແຕ່ມຸມມອງການກວດສອບ ແລະ ລະດັບຄວາມລະອຽດຂອງການອະທິບາຍຈະແຕກຕ່າງກັນ.