import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI // ====================== // LOGIN // ====================== WebUI.openBrowser('') WebUI.navigateToUrl('https://medory.my.id/login') WebUI.setText(findTestObject('Page_Login - MedData/input_Email'), 'admin@admin.com') WebUI.setEncryptedText(findTestObject('Page_Login - MedData/input_Password'), '8SQVv/p9jVRYfSV/eMGvjg==') WebUI.click(findTestObject('Page_Login - MedData/button_Masuk')) WebUI.delay(3) // ====================== // MASUK MENU OBAT MASUK // ====================== WebUI.click(findTestObject('Page_Dashboard MedData - MedData/a_Obat Masuk')) WebUI.delay(2) // ====================== // TC 1: BUKA FORM TAMBAH // ====================== WebUI.click(findTestObject('Page_Data Obat Masuk - MedData/svg_w-5 h-5')) WebUI.verifyElementPresent(findTestObject('Page_Tambah Obat Masuk - MedData/input_Masukkan nama obat'), 5) // ====================== // TC 2: ISI SEMUA FIELD // ====================== WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Masukkan nama obat'), 'Alcohol OneMed') WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Contoh_ BTH-2024-001'), 'BTH-001-2024') WebUI.selectOptionByLabel(findTestObject('Page_Tambah Obat Masuk - MedData/select_Kategori'), 'Antibiotik', false) WebUI.selectOptionByLabel(findTestObject('Page_Tambah Obat Masuk - MedData/select_Satuan'), 'Botol', false) WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Masukkan sumber dana (opsional)'), 'Dana Operasional') WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Masukkan barcode obat (opsional)'), '00102031') WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Jumlah obat masuk'), '10') WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Nomor faktur pembelian'), 'PBAO0012024') WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Nomor SBBK (opsional)'), '001') WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Tanggal Penerimaan'), '14-03-2025') WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Tanggal Kadaluarsa'), '30-03-2029') WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/textarea_Catatan tambahan (opsional)'), 'cash') // ====================== // TC 3: SIMPAN DATA // ====================== WebUI.click(findTestObject('Page_Tambah Obat Masuk - MedData/button_Simpan')) WebUI.delay(3) // ====================== // TC 4: SIMPAN KOSONG // ====================== WebUI.click(findTestObject('Page_Data Obat Masuk - MedData/svg_w-5 h-5')) WebUI.click(findTestObject('Page_Tambah Obat Masuk - MedData/button_Simpan')) WebUI.delay(2) // ====================== // TC 5: VALIDASI TANGGAL SALAH // ====================== WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Masukkan nama obat'), 'Alcohol OneMed edited') WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Contoh_ BTH-2024-001'), 'BTH-001-2024') WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Tanggal Penerimaan'), '30-03-2026') WebUI.setText(findTestObject('Page_Tambah Obat Masuk - MedData/input_Tanggal Kadaluarsa'), '14-03-2026') WebUI.click(findTestObject('Page_Tambah Obat Masuk - MedData/button_Simpan')) WebUI.delay(2) // ====================== // TC 6: SEARCH // ====================== WebUI.setText(findTestObject('Page_Data Obat Masuk - MedData/input_Cari obat'), 'Alcohol') WebUI.delay(2) // ====================== // TC 7: FILTER KATEGORI // ====================== WebUI.selectOptionByIndex(findTestObject('Page_Data Obat Masuk - MedData/select_kategori'), 1) WebUI.click(findTestObject('Page_Data Obat Masuk - MedData/button_Filter')) WebUI.delay(2) // ====================== // TC 8: FILTER STATUS // ====================== WebUI.selectOptionByIndex(findTestObject('Page_Data Obat Masuk - MedData/select_status'), 1) WebUI.click(findTestObject('Page_Data Obat Masuk - MedData/button_Filter_1')) WebUI.delay(2) // ====================== // TC 9: RESET FILTER // ====================== WebUI.click(findTestObject('Page_Data Obat Masuk - MedData/a_Reset')) WebUI.delay(2) // ====================== // TC 10: FILTER TANGGAL // ====================== WebUI.selectOptionByValue(findTestObject('Page_Data Obat Masuk - MedData/select_chart_month'), '3', false) WebUI.delay(2) // ====================== // TC 11: MENU AKSI // ====================== WebUI.click(findTestObject('Page_Data Obat Masuk - MedData/svg_w-5 h-5 text-7A7FAE')) WebUI.delay(1) // ====================== // TC 12: DETAIL // ====================== WebUI.click(findTestObject('Page_Data Obat Masuk - MedData/a_Detail')) WebUI.delay(2) // ====================== // TC 13: EDIT DARI DETAIL // ====================== WebUI.click(findTestObject('Page_Detail Obat Masuk - MedData/a_Edit')) WebUI.setText(findTestObject('Page_Edit Obat Masuk - MedData/input_Masukkan nama obat'), 'Alcohol OneMed edited edited') WebUI.click(findTestObject('Page_Edit Obat Masuk - MedData/button_Simpan Perubahan')) WebUI.delay(2) // ====================== // TC 14: KEMBALI // ====================== WebUI.click(findTestObject('Page_Detail Obat Masuk - MedData/a_Kembali')) WebUI.delay(2) // ====================== // TC 15: HAPUS DATA // ====================== WebUI.click(findTestObject('Page_Data Obat Masuk - MedData/svg_w-5 h-5 text-7A7FAE')) WebUI.click(findTestObject('Page_Data Obat Masuk - MedData/button_Hapus')) WebUI.waitForAlert(5) WebUI.acceptAlert() WebUI.delay(2) // ====================== // SELESAI // ====================== WebUI.closeBrowser()