1. Trang chủ
  2. » Luận Văn - Báo Cáo

Ứng dụng katalon framework cho thực hiện kiểm thử tự động cho hệ thống quản trị sản xuất

52 8 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 52
Dung lượng 2,55 MB

Nội dung

TRƯỜNG ĐẠI HỌC KINH TẾ KHOA THỐNG KÊ – TIN HỌC BÁO CÁO THỰC TẬP NGHỀ NGHIỆP NGÀNH HỆ THỐNG THÔNG TIN QUẢN LÝ CHUYÊN NGÀNH QUẢN TRỊ HỆ THỐNG THÔNG TIN ỨNG DỤNG KATALON FRAMEWORK CHO THỰC HIỆN KIỂM THỬ TỰ ĐỘNG CHO HỆ THỐNG QUẢN TRỊ SẢN XUẤT Đơn vị thực tập : Công ty Cổ phần Tập đoàn Trường Hải Giảng viên hướng dẫn : ThS Cao Thị Nhâm ii LỜI CẢM ƠN Lời cảm ơn cho em gửi đến thầy cô giảng dạy trường Đại học Kinh tế - Đại học Đà Nẵng, người truyền dạy cho chúng em nhiều kiến thức hay bổ ích để chúng em hồn thiện thân nhiều kiến thức chun mơn khác Để hồn thành đề tài tập nghề nghiệp, em gửi lời cảm ơn sâu sắc đến cô Cao Thị Nhâm- Thạc Sĩ Khoa Thống kê - Tin Học ln quan tâm, dạy hướng dẫn tận tình cho em suốt thời gian thực đề tài báo cáo thực tập nghề nghiệp Tiếp theo đến em xin gửi lời cảm ơn chân thành đến quý Công ty Cổ phần tập đoàn Trường Hải anh Nguyễn Tam Quang - Trưởng Phòng Ban CNTT THACO Chu Lai tạo điều kiện cho em thực tập Anh Huỳnh Hải Hòa - người hướng dẫn em thời gian thực tập dành thời gian bảo tận tình hướng dẫn em hồn thành báo cáo Bên cạnh đó, em cảm ơn anh chị đồng nghiệp giúp đỡ em truyền đạt cho em kinh nghiệm làm việc Thời gian vừa thực tập vừa làm báo cáo không dài, em cố gắng để hoàn thành thật tốt báo cáo khó tránh khỏi nhiều thiếu sót Em kính mong q thầy bảo giúp đỡ để báo cáo em hoàn thiện Em xin chân thành cảm ơn! iii LỜI CAM ĐOAN Em xin cam đoan kết đạt báo cáo thực tập nghề nghiệp em nghiên cứu hướng dẫn giáo viên hướng dẫn: ThS Cao Thị Nhâm Trong suốt trình nghiên cứu thực đề tài này, em sử dụng nguồn liệu từ thầy cô, đơn vị cơng ty Cổ phần tập đồn Trường Hải em thực tập cung cấp tự tìm kiếm hướng dẫn để học tập, tham khảo, thu thập kiến thức khơng có hành vi chép Em xin cam đoan kết báo cáo dựa tìm tịi, cố gắng thân chịu trách nhiệm phát thông tin sai lệch, thiếu trung thực báo cáo đề tài nghiên cứu iv MỤC LỤC LỜI CẢM ƠN iii LỜI CAM ĐOAN iv MỤC LỤC v DANH MỤC HÌNH ẢNH vii DANH MỤC BẢNG BIỂU viii DANH MỤC CÁC TỪ VIẾT TẮT ix LỜI MỞ ĐẦU CHƯƠNG 1: TỔNG QUAN VỀ CƠNG TY VÀ VỊ TRÍ THỰC TẬP 1.1 Giới thiệu tổng quát công ty: 1.1.1.Tổng quan công ty: 1.1.2 Lĩnh vực hoạt động: 1.1.3 Cơ cấu tổ chức: 1.1.4 Chính sách phúc lợi: 1.2 Tổng quan vị trí Kiểm thử phần mềm: 1.2.1 Yêu cầu kiến thức kỹ năng: 1.2.2 Công việc Kiểm thử phần mềm: 1.2.3 Mức lương: CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 10 2.1 Khái niệm kiểm thử phần mềm: 10 2.2 Quy trình kiểm thử phần mềm: 10 2.3 Vai trò kiểm thử phần mềm: 11 2.4 Kiểm thử tự động (Automation Testing): 12 2.5 Cấp độ kiểm thử phần mềm: 12 2.5.1 Kiểm thử đơn vị (Unit Testing): .12 2.5.2 Kiểm thử tích hợp (Integration Testing): .12 2.5.3 Kiểm thử hệ thống (System Testing): .13 2.5.4 Kiểm thử chấp nhận (Acceptance Testing): 13 CHƯƠNG 3: PHÂN TÍCH HỆ THỐNG QUẢN TRỊ SẢN XUẤT 15 3.1 Tổng quan hệ thống quản trị sản xuất: 15 3.1.1 Giới thiệu Website Quản trị sản xuất: .15 3.1.2 Ưu nhược điểm website quản trị sản xuất: 15 3.2 Workflow hệ thống quản trị sản xuất: 16 3.3 Sơ đồ Use Case: 17 v 3.3.1 Sơ đồ Use Case tổng quát: 17 3.3.2 Vai trò tác nhân: 18 3.4 Mô tả chi tiết: 19 3.4.1 Sơ đồ Use Case cho chức “Đăng nhập”: .19 3.4.2 Sơ đồ Use Case cho chức “Quản lý Xưởng”: 22 CHƯƠNG 4: THỰC HIỆN KIỂM THỬ TỰ ĐỘNG TRÊN KATALON STUDIO 24 4.1 Thiết kế test case: 24 4.1.1 Môi trường kiểm thử: 24 4.1.2 Thực kiểm thử tự động: .24 4.2 Kịch kiểm thử : 27 4.2.1 Kịch kiểm thử chức đăng nhập: .27 4.2.2 Kịch kiểm thử chức tìm kiếm xưởng: 28 4.2.3 Kịch kiểm thử chức thêm xưởng: 28 4.2.4 Kịch kiểm thử chức cập nhật thông tin xưởng: .29 4.2.5 Kịch kiểm thử chức xóa xưởng: 29 4.3 Kết kiểm thử: 30 4.3.1 Kết kiểm thử chức Đăng nhập: 30 4.3.2 Kết kiểm thử chức Tìm kiếm xưởng: 30 4.3.3 Kết kiểm thử chức Thêm xưởng: 31 4.3.4 Kết kiểm thử chức Cập nhật thông tin xưởng: 31 4.3.5 Kết kiểm thử chức Xóa xưởng: 32 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 33 TÀI LIỆU THAM KHẢO 35 PHỤ LỤC 36 vi DANH MỤC HÌNH ẢNH Hình 1 Logo THACO Hình Cơ cấu tổ chức THACO Bảng 1 Lương theo trình độ học vấn Bảng Lương theo năm kinh nghiệm Hình Quy trình kiểm thử phần mềm 10 Hình 2 Katalon Studio 13 Hình Giao diện Website Quản trị sản xuất 15 Hình Workflow hệ thống quản trị sản xuất 16 Hình 3 Sơ đồ Use Case tổng quát 17 Bảng Vai trò actor 18 Hình Sơ đồ Use Case Đăng nhập 19 Hình Giao diện trang đăng nhập Website Quản trị sản xuất 20 Hình Giao diện Không nhập thông tin 20 Hình Giao diện Nhập sai tên tài khoản 21 Hình Giao diện Nhập sai mật 21 Hình 10 Sơ đồ Use Case Quản lý xưởng 22 Hình Ứng dụng Katalon Studio 24 Hình Giao diện tạo Project 25 Hình Giao diện tạo Test Case 25 Hình 4 Giao diện record hành động 26 Hình Giao diện tạo kịch 26 Hình Giao diện xem report test case 27 Hình File report chức Đăng nhập 30 Hình File report chức Tìm kiếm xưởng 30 Hình File report chức Thêm xưởng 31 Hình 10 File report chức Cập nhật thông tin xưởng 31 Hình 11 File report chức Xóa xưởng 32 vii DANH MỤC BẢNG BIỂU Bảng 1 Lương theo trình độ học vấn Bảng Lương theo năm kinh nghiệm Bảng Vai trò actor .18 viii DANH MỤC CÁC TỪ VIẾT TẮT CI : Continuous Integration CD : Continuous Delivery PM : Project Manager BA : Business Analyst SRS : Software Requirement Specification BDD : Behaviour Driven Development SQL : Structured Query Language URL : Uniform Resource Locator API : Application Programming Interface ix LỜI MỞ ĐẦU Lý chọn đề tài: Hiện nay, công nghệ thông tin phát triển với tốc độ nhanh, điều đồng nghĩa với việc số lượng chương trình phần mềm ngày tăng lên Điều đòi hỏi nhà sản xuất phải nâng cao chất lượng hiệu suất sản phẩm để cạnh tranh thị trường ngày khốc liệt Để đạt mục tiêu đó, kiểm thử phần mềm đóng vai trị vơ quan trọng trình phát triển phần mềm Kiểm thử phần mềm trình kiểm tra đánh giá tính năng, hiệu suất độ tin cậy hệ thống phần mềm, để xác định liệu có đáp ứng yêu cầu mong đợi người dùng hay không Bằng cách kiểm thử, nhà sản xuất phần mềm tìm lỗi vấn đề sản phẩm sửa chúng trước sản phẩm đưa thị trường Điều giúp đảm bảo chất lượng sản phẩm cải thiện trải nghiệm người dùng Bên cạnh đó, việc phát triển công nghệ tự động doanh nghiệp, công ty ứng dụng rộng rãi Bên cạnh phát triển ấy, việc kiểm thử phần mềm tự động công việc quan trọng dự án Nó định đến hình thành chất lượng sản phẩm để mang lại sản phẩm chất lượng, uy tín, vừa tiết kiệm nguồn nhân lực, vừa giảm chi phí thời gian tiền bạc Với mong muốn có nhìn rõ quy trình kiểm thử phần mềm, đảm bảo chất lượng phần mềm tiếp cận công cụ hỗ trợ kiểm thử tự động để giải vấn đề quản lý lỗi, quản lý thời gian tiết kiệm chi phí Đồng thời rèn luyện kỹ cần thiết để tạo tiền đề cho định hướng phát triển thân sau trường Dưới hướng dẫn ThS Cao Thị Nhâm em xin chọn đề tài “Ứng dụng Katalon Framework cho thực kiểm thử tự động cho hệ thống quản trị sản xuất” Mục tiêu đề tài: − Nắm rõ quy trình kiểm thử, định nghĩa, khái niệm kiểm thử - Bước 7: Xác minh xem thêm thành công hay không Thành công hiển thị thông báo “Thêm thành công” Thất bại hiển thị thông báo “Mã xưởng tồn hệ thống” - Bước 8: Đóng trình duyệt web ⇨ Thông tin chi tiết test script chức nằm phụ lục mục chức thêm xưởng 4.2.4 Kịch kiểm thử chức cập nhật thơng tin xưởng: - Bước 1: Mở trình duyệt web, điều hướng đến URL định (http://10.11.7.23:5507/signin) - Bước 2: Đã đăng nhập thành công (các bước đăng nhập thực kịch kiểm thử đăng nhập nằm mục 4.2.1) - Bước 3: Chọn đơn vị cần cập nhật danh mục, chọn xưởng - Bước 4: Nhấn vào biểu tượng edit xưởng cần cập nhật, sau cập nhật thơng tin mã xưởng, tên xưởng, công đoạn nhấn nút lưu - Bước 5: Xác minh xem cập nhật thành công hay không Thông tin chi tiết thay đổi theo yêu cầu hiển thị thông báo cập nhật thành cơng - Bước 6: Đóng trình duyệt web ⇨ Thông tin chi tiết test script chức nằm phụ lục mục chức cập nhật xưởng 4.2.5 Kịch kiểm thử chức xóa xưởng: - Bước 1: Mở trình duyệt web, điều hướng đến URL định (http://10.11.7.23:5507/signin) - Bước 2: Đã đăng nhập thành công (các bước đăng nhập thực kịch kiểm thử đăng nhập nằm mục 4.2.1) - Bước 3: Chọn đơn vị cần xóa danh mục, chọn xưởng 29 - Bước 4: Nhấn vào biểu tượng xóa, xóa xưởng cần xóa khỏi danh sách xưởng Sau nhấn hiển thị hộp thơng báo, chọn đồng ý xưởng cần xóa xóa khỏi danh sách xưởng, cịn nhấn nút hủy hủy thao tác xóa - Bước 5: Đóng trình duyệt web ⇨ Thơng tin chi tiết test script chức nằm phụ lục mục chức xóa xưởng 4.3 Kết kiểm thử: 4.3.1 Kết kiểm thử chức Đăng nhập: Hình File report chức Đăng nhập 4.3.2 Kết kiểm thử chức Tìm kiếm xưởng: Hình File report chức Tìm kiếm xưởng 30 4.3.3 Kết kiểm thử chức Thêm xưởng: Hình File report chức Thêm xưởng 4.3.4 Kết kiểm thử chức Cập nhật thông tin xưởng: Hình 10 File report chức Cập nhật thông tin xưởng 31 4.3.5 Kết kiểm thử chức Xóa xưởng: Hình 11 File report chức Xóa xưởng 32 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ● Đạt được: Thông qua việc ứng dụng Katalon Framework để kiểm thử tự động hệ thống quản trị sản xuất, báo cáo đạt kết sau: - Xây dựng Test case kiểm thử chức hệ thống quản trị sản xuất đăng nhập, tìm kiếm xưởng, thêm xưởng, cập nhật xưởng,… - Tự động hóa Test case katalon framework, sử dụng thư viện có sẵn tùy biến để phù hợp với hệ thống quản trị sản xuất - Thực kiểm thử tự động nhiều trình duyệt khác nhau, Chrome, Firefox, Edge, - Áp dụng thành công việc sử dụng XPath để phục vụ cho việc kiểm thử tự động - Tạo báo cáo kiểm thử chi tiết trực quan, bao gồm số lượng Test case, trạng thái Test case, thời gian thực hiện, thông tin lỗi,… - Sử dụng katalon framework để tự động hóa kiểm thử giúp giảm thiểu rủi ro trình kiểm thử thực kiểm thử thủ cơng dẫn đến sai sót ● Hạn chế: Do thời gian thực báo cáo hạn chế nên báo cáo gặp phải số hạn chế sau: - Chưa kiểm thử chức phức tạp nâng cao hệ thống quản trị sản xuất - Chưa tối ưu thời gian thực kiểm thử tự động, có số Test case có thời gian chạy lâu bị lỗi - Các tính nâng cao chưa thực thi ● Hướng phát triển: 33 - Nghiên cứu thiết kế thêm Test case kiểm thử chức phức tạp nâng cao hệ thống quản trị sản xuất - Tìm hiểu sử dụng cơng cụ phương pháp để tối ưu hóa thời gian hiệu kiểm thử tự động - Thực đầy đủ bước quy trình đề Từ tìm hiểu thêm kiến thức khó hơn, nâng cao liên quan tới kiểm thử tự động 34 TÀI LIỆU THAM KHẢO Nhân viên Tester kiến thức, kỹ cần trang bị https://careerbuilder.vn/vi/talentcommunity/wiki-career/nhan-vien-tester-vanhung-kien-thuc-ky-nang-can-trang-bi.35A51F60.html Lộ trình phát triển nghề nghiệp Tester https://codestar.vn/lo-trinh-phat-trien-nghe-nghiep-cua-tester Kiểm thử phần mềm https://www.testing.vn/kiem-thu-phan-mem/ Tester gì? Làm tester cần gì? https://www.tma.vn/Hoi-dap/Cam-nang-nghe-nghiep/Tester-la-gi-Lamtester-can-nhung-gi/40280 Katalon Studio- Cách cài đặt cấu hình- Viết kịch thử nghiệm https://viblo.asia/p/katalon-studio-cach-cai-dat-va-cau-hinh-viet-mot-kichban-test-RQqKLEkmZ7z 35 PHỤ LỤC -Chức đăng nhập: File test script: import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase import static com.kms.katalon.core.testdata.TestDataFactory.findTestData import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject import static com.kms.katalon.core.testobject.ObjectRepository.findWindowsObject import com.kms.katalon.core.checkpoint.Checkpoint as Checkpoint import com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords as CucumberKW import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords as Mobile import com.kms.katalon.core.model.FailureHandling as FailureHandling import com.kms.katalon.core.testcase.TestCase as TestCase import com.kms.katalon.core.testdata.TestData as TestData import com.kms.katalon.core.testng.keyword.TestNGBuiltinKeywords as TestNGKW import com.kms.katalon.core.testobject.TestObject as TestObject import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords as WS import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI import com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords as Windows import internal.GlobalVariable as GlobalVariable import org.openqa.selenium.Keys as Keys WebUI.openBrowser('') WebUI.navigateToUrl('http://10.11.7.23:5507/signin') WebUI.setText(findTestObject('Object Repository/QUANTRISANXUAT/Login/input_username'), 'cntt') WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/combobox')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/lbl_TaiKhoan')) WebUI.setEncryptedText(findTestObject('Object Repository/QUANTRISANXUAT/Login/input_Password'), 'Gi/iNzIDdbARt/6mBG4hFQ==') WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/button_Login')) if (WebUI.verifyElementPresent(findTestObject('Object Repository/QUANTRISANXUAT/homePage/a_Trang chu'), 5)==true ) { println('STEP LOGIN - PASSSED') }else { println('STEP LOGIN - FAILED') } 36 WebUI.closeBrowser() -Chức tìm kiếm xưởng: File test script: import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase import static com.kms.katalon.core.testdata.TestDataFactory.findTestData import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject import static com.kms.katalon.core.testobject.ObjectRepository.findWindowsObject import com.kms.katalon.core.checkpoint.Checkpoint as Checkpoint import com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords as CucumberKW import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords as Mobile import com.kms.katalon.core.model.FailureHandling as FailureHandling import com.kms.katalon.core.testcase.TestCase as TestCase import com.kms.katalon.core.testdata.TestData as TestData import com.kms.katalon.core.testng.keyword.TestNGBuiltinKeywords as TestNGKW import com.kms.katalon.core.testobject.TestObject as TestObject import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords as WS import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI import com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords as Windows import internal.GlobalVariable as GlobalVariable import org.openqa.selenium.Keys as Keys WebUI.openBrowser('') WebUI.navigateToUrl('http://10.11.7.23:5507/signin') WebUI.setText(findTestObject('Object Repository/QUANTRISANXUAT/Login/input_username'), 'cntt') WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/combobox')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/lbl_TaiKhoan')) WebUI.setEncryptedText(findTestObject('Object Repository/QUANTRISANXUAT/Login/input_Password'), 'Gi/iNzIDdbARt/6mBG4hFQ==') WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/button_Login')) if (WebUI.verifyElementPresent(findTestObject('Object Repository/QUANTRISANXUAT/homePage/a_Trang chu'), 5)==true ) { println('STEP LOGIN - PASSED') }else { println('STEP LOGIN - FAILED') 37 } WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/homePage/cbo_mazda')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/homePage/span_MAZDA')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/a_Xuong')) String i ='MAZDA-BODY' WebUI.setText(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/input_TuKhoa'), i) WebUI.sendKeys(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/input_TuKhoa'),Keys.chord(Keys.ENTER)) if (WebUI.verifyElementPresent(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/list_searchxuong'), 5)==true ) { println('STEP SEARCH - PASSED') }else { println('STEP SEARCH - FAILED') } WebUI.sendKeys(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/input_TuKhoa'), Keys.chord(Keys.CONTROL,'a')) WebUI.sendKeys(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/input_TuKhoa'), Keys.chord(Keys.DELETE)) WebUI.sendKeys(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/input_TuKhoa'),Keys.chord(Keys.ENTER)) WebUI.closeBrowser() -Chức thêm xưởng: File test script: import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase import static com.kms.katalon.core.testdata.TestDataFactory.findTestData import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject import static com.kms.katalon.core.testobject.ObjectRepository.findWindowsObject import com.kms.katalon.core.checkpoint.Checkpoint as Checkpoint import com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords as CucumberKW 38 import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords as Mobile import com.kms.katalon.core.model.FailureHandling as FailureHandling import com.kms.katalon.core.testcase.TestCase as TestCase import com.kms.katalon.core.testdata.TestData as TestData import com.kms.katalon.core.testng.keyword.TestNGBuiltinKeywords as TestNGKW import com.kms.katalon.core.testobject.TestObject as TestObject import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords as WS import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI import com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords as Windows import internal.GlobalVariable as GlobalVariable import org.openqa.selenium.Keys as Keys WebUI.openBrowser('') //Dang nhap vao he thong quan tri san xuat WebUI.navigateToUrl('http://10.11.7.23:5507/signin') WebUI.setText(findTestObject('Object Repository/QUANTRISANXUAT/Login/input_username'), 'cntt') WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/combobox')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/lbl_TaiKhoan')) WebUI.setEncryptedText(findTestObject('Object Repository/QUANTRISANXUAT/Login/input_Password'), 'Gi/iNzIDdbARt/6mBG4hFQ==') WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/button_Login')) if (WebUI.verifyElementPresent(findTestObject('Object Repository/QUANTRISANXUAT/homePage/a_Trang chu'), 5)==true ) { println('STEP LOGIN - PASSED') }else { println('STEP LOGIN - FAILED') } //Chon don vi WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/homePage/cbo_mazda')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/homePage/span_MAZDA')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/a_Xuong')) //Them moi xuong String i='LINH' String j='LINH163' WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/btn_Add')) WebUI.setText(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/input_MaXuong'), i) 39 WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/input_MaXuong')) WebUI.setText(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/input_TenXuong'), j) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/input_TenXuong')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/cbo_Xuong')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/cbo_CongDoan_Son')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/btn_Save')) if (WebUI.verifyElementPresent(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/list_addxuong'), 5)==true) { println('STEP ADD - PASSED') println ('THÊM MỚI THÀNH CÔNG') }else { println('STEP ADD - FAILED') println('MÃ '+i+' ĐÃ TỒN TẠI TRONG HỆ THỐNG') } WebUI.closeBrowser() -Chức cập nhật xưởng: File test script: import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase import static com.kms.katalon.core.testdata.TestDataFactory.findTestData import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject import static com.kms.katalon.core.testobject.ObjectRepository.findWindowsObject import com.kms.katalon.core.checkpoint.Checkpoint as Checkpoint import com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords as CucumberKW import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords as Mobile import com.kms.katalon.core.model.FailureHandling as FailureHandling import com.kms.katalon.core.testcase.TestCase as TestCase import com.kms.katalon.core.testdata.TestData as TestData import com.kms.katalon.core.testng.keyword.TestNGBuiltinKeywords as TestNGKW import com.kms.katalon.core.testobject.TestObject as TestObject import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords as WS import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI 40 import com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords as Windows import internal.GlobalVariable as GlobalVariable import org.openqa.selenium.Keys as Keys WebUI.openBrowser('') //Dang nhap vao he thong quan tri san xuat WebUI.navigateToUrl('http://10.11.7.23:5507/signin') WebUI.setText(findTestObject('Object Repository/QUANTRISANXUAT/Login/input_username'), 'cntt') WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/combobox')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/lbl_TaiKhoan')) WebUI.setEncryptedText(findTestObject('Object Repository/QUANTRISANXUAT/Login/input_Password'), 'Gi/iNzIDdbARt/6mBG4hFQ==') WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/button_Login')) if (WebUI.verifyElementPresent(findTestObject('Object Repository/QUANTRISANXUAT/homePage/a_Trang chu'), 5)==true ) { println('STEP LOGIN - PASSED') }else { println('STEP LOGIN - FAILED') } //Chon don vi WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/homePage/cbo_mazda')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/homePage/span_MAZDA')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/a_Xuong')) //Cap nhat xuong vua them moi String CapnhattenXuong = '2002' WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/btn_Edit')) WebUI.setText(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/input_TenXuong'), CapnhattenXuong ) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/input_TenXuong')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/btn_Save')) if (WebUI.verifyElementPresent(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/list_addxuong'), 5)==true) { println('STEP UPDATE - PASSED') println ('CẬP NHẬT THÀNH CÔNG') }else { println('STEP UPDATE - FAILED') 41 } WebUI.closeBrowser() -Chức xóa xưởng: File test script: import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase import static com.kms.katalon.core.testdata.TestDataFactory.findTestData import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject import static com.kms.katalon.core.testobject.ObjectRepository.findWindowsObject import com.kms.katalon.core.checkpoint.Checkpoint as Checkpoint import com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords as CucumberKW import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords as Mobile import com.kms.katalon.core.model.FailureHandling as FailureHandling import com.kms.katalon.core.testcase.TestCase as TestCase import com.kms.katalon.core.testdata.TestData as TestData import com.kms.katalon.core.testng.keyword.TestNGBuiltinKeywords as TestNGKW import com.kms.katalon.core.testobject.TestObject as TestObject import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords as WS import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI import com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords as Windows import internal.GlobalVariable as GlobalVariable import org.openqa.selenium.Keys as Keys WebUI.openBrowser('') //Dang nhap vao he thong quan tri san xuat WebUI.navigateToUrl('http://10.11.7.23:5507/signin') WebUI.setText(findTestObject('Object Repository/QUANTRISANXUAT/Login/input_username'), 'cntt') WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/combobox')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/lbl_TaiKhoan')) WebUI.setEncryptedText(findTestObject('Object Repository/QUANTRISANXUAT/Login/input_Password'), 'Gi/iNzIDdbARt/6mBG4hFQ==') WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/Login/button_Login')) if (WebUI.verifyElementPresent(findTestObject('Object Repository/QUANTRISANXUAT/homePage/a_Trang chu'), 5)==true ) { println('STEP LOGIN - PASSED') 42 }else { println('STEP LOGIN - FAILED') } //Chon don vi WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/homePage/cbo_mazda')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/homePage/span_MAZDA')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/a_Xuong')) //Xoa xuong vua them moi WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/btn_Delete')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/btn_Exit')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/btn_Delete')) WebUI.click(findTestObject('Object Repository/QUANTRISANXUAT/btn_DongY')) if (WebUI.verifyElementPresent(findTestObject('Object Repository/QUANTRISANXUAT/XUONG/list_deleteXuong'), 5)==true) { println('STEP DELETE - PASSED') println ('XĨA THÀNH CƠNG') }else { println('STEP DELETE - FAILED') } WebUI.closeBrowser() 43

Ngày đăng: 12/12/2023, 19:47

TỪ KHÓA LIÊN QUAN

w