ForEach Controller ໃນ Jmeter iterates ຜ່ານຕົວແປຕ່າງໆ.
ໃນການສອນ JMeter ນີ້, ພວກເຮົາຈະໃຊ້ ForEach Controller ເພື່ອລາກຜ່ານ JSON Array.
ມີບາງເວລາທີ່ພວກເຮົາ ຈຳ ເປັນຕ້ອງແຍກ ຄຳ ຕອບແລະສະກັດເອົາບາງຂໍ້ມູນຈາກມັນ. ຍົກຕົວຢ່າງ, ເມື່ອທົດສອບ API, ພວກເຮົາສາມາດໄດ້ຮັບການຕອບຮັບ JSON ເຊິ່ງສາມາດບັນຈຸ JSON Arrays.
ຈາກນັ້ນ, ພວກເຮົາ ຈຳ ເປັນຕ້ອງໄດ້ຜ່ານວົງຈອນແລະ ສຳ ລັບແຕ່ລະອົງປະກອບ ດຳ ເນີນການໃດ ໜຶ່ງ. ໃນ JMeter, ພວກເຮົາສາມາດໃຊ້ ForEach Controller ເພື່ອລະບາຍຄວາມຮ້ອນຜ່ານ JSON Array.
ໃນຕົວຢ່າງນີ້, ພວກເຮົາຈະເຮັດການຮ້ອງຂໍ GET ກັບຊັບພະຍາກອນທີ່ຕອບສະ ໜອງ ກັບ JSON.
ຄຳ ຕອບແມ່ນມີ ອາເລ ຂອງວັດຖຸ JSON.
ສຳ ລັບແຕ່ລະວັດຖຸ, ພວກເຮົາ ຈຳ ເປັນຕ້ອງເອົາ URL ທີ່ພວກເຮົາສາມາດເຮັດໄດ້ຜ່ານ JSONPath.
JSONPath ທີ່ຈະໄດ້ຮັບ URL ທັງ ໝົດ ໃນ ຄຳ ຕອບຂ້າງເທິງນີ້ແມ່ນ $.[*].url
. ເມື່ອພວກເຮົາແຍກ ຄຳ ຕອບຂອງ JSON ແລະສະກັດ URL, ຈາກນັ້ນພວກເຮົາກໍ່ມີແຖວຂອງ Strings, ໂດຍພື້ນຖານແລ້ວແມ່ນ URLs.
ພວກເຮົາປະຫຍັດແຖວນີ້ໄວ້ໃນຕົວແປທີ່ເອີ້ນວ່າ url_array
ຕອນນີ້ສົມມຸດວ່າ ສຳ ລັບແຕ່ລະອົງປະກອບຂອງແຖວ String, ພວກເຮົາຕ້ອງການຮ້ອງຂໍໃຫ້ URL. ໃນ JMeter, ສິ່ງນີ້ແມ່ນເຮັດໄດ້ໂດຍການໃຊ້ ForEach Controller.
ເພື່ອເພີ່ມ ForEach Controller ໃສ່ແຜນການທົດສອບຂອງທ່ານ, ໃຫ້ກົດຂວາໃສ່ Thread Group> ເພີ່ມ> ຄວບຄຸມຕາມເຫດຜົນ> ForEach Controller
ຕົວຄວບຄຸມ ForEach ຮຽກຮ້ອງສອງຕົວ ກຳ ນົດການ:
ທ ຄຳ ນຳ ໜ້າ ຕົວແປທີ່ປ້ອນເຂົ້າ ເອົາຊື່ຂອງຕົວແປອາເລ, ໃນຕົວຢ່າງນີ້, url_array
. ສໍາລັບ ຊື່ຕົວແປຜົນໄດ້ຮັບ , ພວກເຮົາຈະມອບ ໝາຍ ຕົວແປ, ໃນຕົວຢ່າງນີ້, url_index
ເຊິ່ງພວກເຮົາຈະໃຊ້ໃນການຮ້ອງຂໍຕໍ່ໄປ.
ຈາກນັ້ນ, ໃນ ຄຳ ຮ້ອງຂໍຕໍ່ໆໄປຂອງພວກເຮົາ, ພວກເຮົາສາມາດສະກັດແຕ່ລະຄ່າໂດຍການໃຊ້ ${url_index}
ປະຈຸບັນນີ້ຈະຜ່ານການເຂົ້າແຕ່ລະຄັ້ງໃນ JSON Array ແລະເຮັດການຮ້ອງຂໍ HTTP ໄປທີ່ URLs.