Sinh tự động ca kiểm thử từ các mô hình thực thi được (tt)

37 214 0
Sinh tự động ca kiểm thử từ các mô hình thực thi được (tt)

Đ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

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ DƯƠNG THỊ THANH HUYỀN SINH TỰ ĐỘNG CA KIỂM THỬ TỪ CÁC HÌNH THỰC THI ĐƯỢC Ngành: Cơng nghệ thông tin Chuyên ngành: Kỹ thuật phần mềm Mã số: 60480103 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN CÁN BỘ HƯỚNG DẪN KHOA HỌC: TS Đặng Đức Hạnh HÀ NỘI – 2017 TĨM TẮT Luận văn trình bày phương pháp nghiên cứu tự động hóa q trình sinh ca kiểm thử từ hình luồng quy trình nghiệp vụ (BPMN) Hướng nghiên cứu dựa lý thuyết kiểm thử dựa hình Mục tiêu đề tự động hóa q trình kiểm thử, nâng cao hiệu kiểm thử, tiết kiệm chi phí thời gian phát triển sản phẩm phần mềm Phương pháp đề xuất với nội dung sau: Với đầu vào hình luồng nghiệp vụ BPMN lưu giữ dạng tệp xml, chương trình kiểm thử biến đổi tệp xml cách bóc tách thơng điệp, tốn tử ràng buộc đưa vào thiết kế Sau thực dò tìm sinh ca kiểm thử cho đường từ điểm bắt đầu điểm kết thúc gọi đường kiểm thử Để kiểm nghiệm mức độ khả thi phương pháp, công cụ hỗ trợ cài đặt thử nghiệm với số ví dụ đơn giản nhằm minh chứng cho tính đắn hiệu phương pháp Kết thực nghiệm cho thấy hiệu kịch ca kiểm thử khả thi để áp dụng cho công ty phát triển phần mềm Từ ca kiểm thử sinh áp dụng để kiểm thử tích hợp, kiểm thử hệ thống phần mềm Hơn nữa, ca kiểm thử áp dụng để kiểm tra tính đắn cơng cụ quản lý quy trình nghiệp vụ Từ khóa: Kiểm thử dựa hình, kiểm thử tự động, hình hóa quy trình nghiệp vụ, quản lý quy trình nghiệp vụ i TĨM TẮT i BẢNG THUẬT NGỮ VIẾT TẮT iv CHƯƠNG 1: ĐẶT VẤN ĐỀ .1 CHƯƠNG 2: TỔNG QUAN VỀ HÌNH HĨA QUY TRÌNH NGHIỆP VỤ VÀ KIỂM THỬ DỰA TRÊN HÌNH 2.1 Giới thiệu 2.2 Tổng quan hình thực thi 2.2.1 Khái niệm hình (Model) 2.2.2 Khái niệm siêu hình (Meta- model) 2.2.3 Khái niệm hình thực thi (executable model) 2.3 Tổng quan kiểm thử dựa hình 2.3.1 Phương pháp tiếp cận kiểm thử dựa hình 2.3.2 Thuận lợi khó khăn kiểm thử hình 2.4 Một số phương pháp kiểm thử dựa hình 2.4.1 Sinh tự động ca kiểm thử từ biểu đồ UML OCL 2.4.2 Sinh tự động ca kiểm thử từ biểu đồ UML 2.4.3 Khai thác đáng tin cậy trường hợp kiểm thử tự động từ đặc tả yêu cầu phần mềm 2.5 Tổng quan hình hóa quy trình nghiệp vụ BPMN 2.5.1 Tổng quan hình hóa quy trình nghiệp vụ 2.5.2 hình hóa quy trình nghiệp vụ với BPMN 2.5.3 Các phần tử (element) BPMN 2.5.3.1 Flow Object 2.5.3.2 Data 2.5.3.3 Connection Object 2.5.3.4 Swimlanes 2.5.3.5 Artifacts 2.5.4 Các hình thành phần BPMN 2.5.5 Các điều kiện ràng buộc thiết kế BPMN 2.5.6 Công cụ thiết kế thực thi hình BPMN 10 2.5.6.1 Công cụ MS Visio 10 2.5.6.2 Công cụ Bizagi 10 2.5.6.3 Công cụ Activiti 11 ii 2.6 Tổng kết chương 11 CHƯƠNG 3: PHƯƠNG PHÁP SINH CA KIỂM THỬ TỪ HÌNH BPMN 12 3.1 Giới thiệu 12 3.2 Phát biểu toán 12 3.3 Thuật toán sinh kịch ca kiểm thử từ hình BPMN 13 3.3.1 Ý tưởng 13 3.3.2 Chuyển đổi hình BPMN sang dạng CFG 13 3.3.3 Thuật toán sinh kịch ca kiểm thử 16 3.4 Tổng kết chương 18 CHƯƠNG 4: CÀI ĐẶT & THỰC NGHIỆM 19 4.1 Môi trường cài đặt 19 4.2 Kết thực nghiệm 19 4.3 Ý nghĩa thực nghiệm 29 CHƯƠNG 5: KẾT LUẬN 30 TÀI LIỆU THAM KHẢO 32 iii BẢNG THUẬT NGỮ VIẾT TẮT STT Từ viết tắt BPMN BPEL OMG standard KPI UML SUT BPM BPMI SDG 10 OCL 11 SRS 12 PIM 13 PSM 14 MSDN 15 16 M2M M2T 17 MDE Viết đầy đủ Business Process model and notation Business Process Execution Language Object management group standard Key Performance Indicators Unified Modeling Language Software under test Business Process Management Business Process Management Initiative Sequence diagram graph Object Constraint Language Software Requirement Specification Platform-independent model Platform-specific model Model-Driven Software Engineering Model-to-Model Model-to-Text Model-Driven Engineering Ý nghĩa Ký pháp hình quy trình nghiệp vụ Ngơn ngữ thực thi luồng quy trình nghiệp vụ Tiêu chuẩn nhóm quản lý đối tượng Các số hoạt động Ngơn ngữ hình hóa thống Phần mềm kiểm thử Quản lý quy trình nghiệp vụ Tổ chức sáng kiến quản lý quy trình nghiệp vụ Biểu diễn đồ họa biểu đồ Ngôn ngữ ràng buộc đối tượng Đặc tả yêu cầu phần mềm Độc lập với tảng hình Phụ thuộc tảng hình Phát triển phần mềm hướng hình hình thành hình hình thành văn Kỹ thuật ứng dụng hướng hình iv CHƯƠNG 1: ĐẶT VẤN ĐỀ Để phù hợp với xu hướng phát triển phần mềm ngày cao nay, kỹ thuật phương pháp tự động tạo ca kiểm thử từ hình quan tâm nhiều nước giới, Việt Nam kỹ thuật phương pháp nghiên cứu lĩnh vực chưa áp dụng phát triển mạnh công nghiệp sản xuất phẩn mềm Thật vậy, vấn đề cấp bách cần thiết công ty phần mềm tổ chức phát triển, triển khai dự án phần mềm Kiểm thử phần mềm tiến hành để cung cấp cho bên liên quan thông tin chất lượng sản phẩm dịch vụ kiểm thử Mục đích kiểm thử phát lỗi phần mềm để từ khắc phục sửa chữa Việc kiểm thử khẳng định chức sản phẩm điều kiện, mà khẳng định hoạt động điều kiện cụ thể Tùy thuộc vào phương pháp, việc kiểm thử thực lúc trình phát triển phần mềm với kỹ thuật tương ứng Quá trình kiểm thử theo phương pháp truyền thống kiểm thử dựa đặc tả yêu cầu để tạo trường hợp thử nghiệm tay Ngoài lợi kỹ kinh nghiệm kiểm thử viên, q trình có nhược điểm phải nhiều nỗ lực, chất lượng ca kiểm thử không đồng phụ thuộc vào kinh nghiệm người kiểm thử Trong đó, việc kiểm thử tự động mà đặc biệt kiểm thử dựa hình có lợi giúp giảm chi phí thời gian, độ bao phủ tốt giảm lỗi chủ quan, khả sử dụng lại cao, sớm phát lỗi, đảm bảo chất lượng phần mềm Có nhiều cách tiếp cận khác để tạo ca kiểm thử tự động tạo ca kiểm thử tự động từ biểu diễn máy hữu hạn trạng thái, ôtômat, đặc tả đại số, hình luồng quy trình nghiệp vụ, biểu đồ trạng thái Unified Modeling Language (UML),…Các hình biểu diễn máy hữu hạn trạng thái, ôtômat, đặc tả đại số, biểu đồ trạng thái UML đòi hỏi yêu cầu cao để đạt đặc tả xác hành vi hệ thống Trong hình BPMN- Business Process Model and Notation dễ dàng xây dựng, xác minh tính xác rõ ràng thơng tin tả luồng quy trình nghiệp vụ cán phát triển hệ thống người sử dụng bên liên quan Do đó, khn khổ luận văn này, tơi lựa chọn tiếp cận phương pháp kiểm thử tự động từ hình luồng quy trình nghiệp vụ BPMN Để áp dụng phương pháp kiểm thử kiểm thử dựa hình đòi hỏi hình phải đặc tả xác hành vi hệ thống Tuy nhiên, xây dựng hình cơng việc khó khăn đòi hỏi nhiều nỗ lực tiềm ẩn nhiều nguy lỗi Việc kiểm thử tính đắn cho thiết kế dựa hình từ đặc tả luồng quy trình nghiệp vụ thuận lợi mang lại nhiều lợi ích Do trường hợp kiểm thử tạo trước mã nguồn viết, cho phép nhà phát triển sử dụng trường hợp thử nghiệm để kiểm tra chương trình họ phát triển mã nguồn Điều làm giảm số lần lặp lại phát triển thử nghiệm, tiếp tục tiết kiệm nguồn lực, tài nguyên Các trường hợp kiểm thử tạo trực tiếp từ yêu cầu hệ thống sử dụng để phát lỗi sớm, giúp làm giảm chi phí Kiểm thử dựa hình thường tạo trường hợp kiểm thử từ hình trừu tượng phần mềm, bao gồm đặc tả thức tả thiết kế Với mục đích sinh ca kiểm thử trực tiếp từ hình luồng quy trình nghiệp vụ, luận văn trình bày nội dung sau: - Chương 1: Đặt vấn đề - Chương 2: Giới thiệu tổng quan hình thực thi được, tổng quan kiểm thử dựa hình, số phương pháp kiểm thử dựa hình Tập trung nghiên cứu tìm hiểu hình hóa quy trình nghiệp vụ nghiên cứu cách thức sử dụng ký pháp BPMN 2.0 Giới thiệu số công cụ thiết kế thực thi hình BPMN - Chương 3: Phát biểu toán, đề xuất phương pháp sinh tự động ca kiểm thử từ hình BPMN - Chương 4: tả cài đặt kết thực nghiệm triển khai phương pháp đề xuất - Chương 5: Trình bày tóm tắt kết đạt được, kết luận, hạn chế hướng nghiên cứu phát triển tương lai CHƯƠNG 2: TỔNG QUAN VỀ HÌNH HĨA QUY TRÌNH NGHIỆP VỤ VÀ KIỂM THỬ DỰA TRÊN HÌNH 2.1 Giới thiệu Phương pháp tiếp cận hướng hình hóa cơng nghiệp phần mềm có vai trò vơ quan trọng khơng cho q trình phát triển phần mềm mà cho trình kiểm thử phần mềm nhằm tăng tính hiệu quả, đảm bảo chất lượng sản phẩm tối ưu chi phí Do đó, phương pháp sinh ca kiểm thử từ hình đề cập nhiều nghiên cứu Tuy nhiên, nghiên cứu sinh ca kiểm thử từ hình luồng quy trình nghiệp vụ BPMN chưa đề cập nhiều Trong BPMN hình cần thiết trình phát triển phần mềm để cung cấp nhìn tổng quan nghiệp vụ hệ thống khơng cho nhà phát triển sản phẩm mà trực quan, dễ hiểu cho khách hàng bên liên quan Nội dung phần chương nêu kiến thức tổng quan kiểm thử dựa hình, giới thiệu số phương pháp kiểm thử hình, tổng quan hình hóa quy trình nghiệp vụ (BPMN) 2.2 Tổng quan hình thực thi 2.2.1 Khái niệm hình (Model) hình biểu diễn trừu tượng cấu trúc, tính hành vi hệ thống hình biểu diễn ký hiệu đồ họa diễn tả ngôn ngữ đặc tả miền cụ thể dạng ngơn ngữ hình thức Dưới hai định nghĩa “mơ hình” từ điển American Heritage: - hình đối tượng nhỏ xây dựng để quy mô, chi tiết đối tượng khác thường đối tượng lớn [3] - hình biểu đồ hóa tả chi tiết hệ thống, đồng thời tả chi tiết khía cạnh, đặc tính hệ thống [3] Theo AnnneKe, hình định nghĩa: "Một hình tả (hoặc phần) hệ thống viết ngôn ngữ hình thức" [4] "Ngơn ngữ hình thức ngơn ngữ với mẫu xác định rõ ràng ngữ nghĩa phù hợp với việc biên dịch tự động máy tính" [4] 2.2.2 Khái niệm siêu hình (Meta- model) Meta-model hình mức trừu tượng sử dụng để biểu diễn hình Meta-model viết ngôn ngữ gọi meta-language 2.2.3 Khái niệm hình thực thi (executable model) Ngơn ngữ hình hóa cho phép xác định cấu trúc hành vi hệ thống phần mềm cách thức mức trừu tượng cao gần với không gian vấn đề mức ngôn ngữ lập trình Ngơn ngữ hình thực thi khơng cho phép đặc tả khía cạnh tĩnh hệ thống mà đặc tả khía cạnh động, tức hành vi hệ thống phần mềm thông qua hình thực thi Do đó, “một hình thực thi từ viết chương trình thực thi chạy hình” [10,11] Theo quan điểm Jordi Cabot xác định: “một hình thực thi một hình đủ để thực thi” [3] Theo đó, hình thực thi ngữ nghĩa, hoạt động xác định định nghĩa đầy đủ Trong thực tế, khả thực thi hình phụ thuộc nhiều vào công cụ thực thân hình (ví dụ cơng cụ u cầu tính đầy đủ chi tiết hình số cơng cụ khác có khả “lấp đầy khoảng trống” – nghĩa tự bổ sung thành phần thiếu hình dựa định nghĩa có sẵn cơng cụ để thực thi hình khơng đầy đủ đó) BPMN hình tả cụ thể hành vi người dùng hệ thống đủ chi tiết để thực thi Từ BPMN sinh mã chương trình (M2T) thơng qua hỗ trợ ngôn ngữ thực thi BPEL – Business process execution language sinh ca kiểm thử kịch kiểm thử tích hợp chức năng, kiểm thử hệ thống Một thể cụ thể cho việc BPMN hình đủ chi tiết để thực thi BPMN thực thi trực tiếp cơng cụ quản lý quy trình nghiệp vụ (BPM) Điều có nghĩa là, có hình BPMN import vào cơng cụ BPM, ta thực luồng nghiệp vụ cơng cụ Trực quan hóa việc thực thi BPMN công cụ Activiti trình bày chi tiết chương III chương IV 2.3 Tổng quan kiểm thử dựa hình 2.3.1 Phương pháp tiếp cận kiểm thử dựa hình Có bốn phương pháp tiếp cận với kiểm thử dựa sau: - Sinh liệu đầu vào kiểm thử từ hình chính: - Sinh ca kiểm thử từ hình mơi trường - Sinh ca kiểm thử với dự đốn từ hình hành vi - Sinh đoạn mã kiểm thử từ kiểm thử trừu tượng Quá trình kiểm thử dựa hình thực qua bước sau - Sinh hình dựa u cầu chức hệ thống - Sinh ca kiểm thử (bộ đầu vào giá trị đầu mong đợi cho ca kiểm thử) - Chạy kịch kiểm thử để phát lỗi/khiếm khuyết sản phẩm - So sánh kết đầu thực tế với kết đầu dự kiến - Quyết định hành động (sửa đổi hình, tạo thêm ca kiểm thử, dừng kiểm thử, đánh giá chất lượng phần mềm) [1] 2.3.2 Thuận lợi khó khăn kiểm thử hình Trong q trình phát triển phần mềm, phương pháp kiểm thử thủ công truyền thống thường tốn nhiều thời gian chi phí Kiểm thử tự động dựa hình giải pháp hiệu góp phần giải vấn đề - Kiểm thử dựa có ưu điểm sau: Giảm chi phí thời gian, độ bao phủ tốt hơn, đầy đủ tài liệu, khả sử dụng lại cao, sớm phát lỗi - Tuy nhiên, kiểm thử dựa hình khơng dễ áp dụng thực tế số khó khăn sau: Khó xây dựng hình xác, u cầu cao kiểm thử viên, khó khăn việc sử dụng ca kiểm thử tạo từ hình 2.4 Một số phương pháp kiểm thử dựa hình Để áp dụng phương pháp kiểm thử dựa hình, u cầu cần thiết xây dựng hình đặc tả xác hành vi hệ thống cần kiểm thử hình đặc tả phương pháp hình thức như: máy trạng thái UML, máy hữu hạn trạng thái, biểu đồ trạng thái, văn phạm, bảng định, Từ hình sinh ca kiểm thử Mỗi ca kiểm thử đường từ trạng thái bắt đầu đến trạng thái kết thúc hệ thống Mỗi ca kiểm thử phải có phép chuyển trạng thái Trong mục giới thiệu tổng quan số phương pháp phổ biến sinh ca kiểm thử từ hình khác khơng phải hình BPMN 2.4.1 Sinh tự động ca kiểm thử từ biểu đồ UML OCL Ngôn ngữ ràng buộc đối tượng (Object Constraint Language -OCL): ngôn ngữ cho phép tả biểu thức ràng buộc hình hướng đối tượng vật thể hình hóa đối tượng khác Trường hợp khác, OCL liên quan đến điều kiện trước/ sau hoạt động Nó kết hợp điều kiện OCL khác thơng tin điều khiển dòng chảy máy trạng thái Các công thức điều kiện đầu diễn giải phép thực hình cách tượng trưng Với biểu đồ ca sử dụng, biểu đồ lớp, biểu đồ biến đổi thành biểu diễn gọi đồ thị biểu đồ (Sequence Diagram GraphSDG) Mỗi nút SDG chứa thông tin cần thiết cho việc tạo ca kiểm File kết kịch ca kiểm thử tương ứng với nhánh đồ thị: Hình 3.2: Kịch ca kiểm thử toán chia sẻ data Cụ thể gồm kịch kiểm thử sau: STT Kịch ca kiểm thử Start, Check Permission, VerifyLogin, Access Denied, End Start, Check Permission, VerifyLogin, RequestToShareData, Processing required to share data, VerifyShareData, DataSharingSucceeded , End Start, Check Permission, VerifyLogin, RequestToShareData, Processing required to share data, VerifyShareData, DataSharingFailed, End 3.4 Tổng kết chương Nội dung chương giới thiệu khái quát phương pháp sinh ca kiểm thử từ hình, từ tập trung vào phương pháp sinh ca kiểm thử từ hình BPMN Trong đó, có tả tốn từ đưa hướng xử lý thơng qua thuật tốn sinh ca kiểm, đồng thời có ví dụ trực quan sơ đầu toán thực nghiệm Trong chương (Chương 4), tìm hiểu chi tiết mơi trường cài đặt chương trình ứng dụng thực nghiệm 18 CHƯƠNG 4: CÀI ĐẶT & THỰC NGHIỆM Chương tập trung giới thiệu môi trường cài đặt chương trình thực nghiệm, kết thực nghiệm trình bày thơng qua hai tốn ví dụ, cuối phần ý nghĩa thực nghiệm từ chương trình xây dựng 4.1 Mơi trường cài đặt Chương trình sinh kịch kiểm thử từ hình BPMN xây dựng công cụ môi trường sau:  Công cụ phát triển - NetBeans IDE verion 8.2 - Eclipse Java verion Oxygen - Apache-tomcat-8.5.23 - Activiti-5.22.0  Môi trường cài đặt: - Hệ điều hành Windows 10 - Hệ điều hành Windows - Hệ điều hành Windows  Mơi trường lập trình: Java SE Development Kit  Yêu cầu phần cứng: - Bộ vi xử lý: GHz 32-bit (x86) 64-bit (x64) - RAM: GB (32-bit) GB (x64) - Ổ đĩa cứng: trống 50MB - Độ phân giải hình: 800 x 600 cao 4.2 Kết thực nghiệm Để kiểm tra tính đắn, tính khả thi khả áp dụng thực tế trình kiểm thử phần mềm công ty/tổ chức phát triển phần mềm, sau tơi xin trình bày 02 tốn minh họa kết thực nghiệm Đầu vào toán hình BPMN biểu diễn luồng quy trình nghiệp vụ Thơng qua chương trình cài đặt sinh đầu file định dạng *.txt chứa tập kịch kiểm thử Các kịch ca kiểm thử sau áp dụng để kiểm thử cơng cụ quản lý quy trình nghiệp vụ Activiti cách thực thi hình BPMN Activiti  Bài tốn 01: (luồng nghiệp vụ đa nhánh) tả yêu cầu toán chia sẻ liệu (Share data) : Tài khoản yêu cầu chia sẻ liệu nhập thông tin đăng nhập ứng dụng Thông tin đăng nhập xác minh để xác định quyền truy cập tài khoản yêu cầu Nếu thông tin không xác thực tài khoản u cầu nhận thơng từ chối đăng nhập (Access 19 Denied) kết thúc giao dịch Ngược lại, tài khoản yêu cầu nhập thông tin yêu cầu chia sẻ dung lượng đến tài khoản khác Yêu cầu kiểm tra, thỏa mãn điều kiện ràng buộc nghiệp vụ thực yêu cầu chia sẻ liệu, ngược lại kết thúc giao dịch Đầu vào: file xml biểu diễn luồng nghiệp vụ sau: Hình 4.1: hình BPMN yêu cầu chia sẻ data Đầu ra: Các đường path bao phủ nhánh sau Hình 4.2: Kịch ca kiểm thử yêu cầu chia sẻ data Cụ thể gồm kịch kiểm thử sau: STT Kịch ca kiểm thử Start, Check Permission, VerifyLogin, Access Denied, End Start, Check Permission, VerifyLogin, RequestToShareData, Processing required to share data, VerifyShareData, DataSharingSucceeded , End Start, Check Permission, VerifyLogin, RequestToShareData, Processing required to share data, VerifyShareData, DataSharingFailed, End 20  Thực thi kịch ca kiểm thử hình chia sẻ liệu công cụ Active-explorer Khi import đầu vào file bpmn model lên công cụ activit-explorer, giao diện chương trình sau import thành cơng sau: Hình 4.3: hình BPMN “Share data” import lên cơng cụ activiti  Kịch ca kiểm thử đầu tiên: Thông tin đăng nhập không xác thực nên tài khoản yêu câu nhận thông báo từ chối đăng nhập (Access Denied) Kịch ca kiểm thử Bước 1: Start, Bước 2: Check Permission, Bước 3: VerifyLogin, Bước 4: Access Denied, Bước 5: End Bước 1: Start - Nhập thông tin username/password ấn chọn “Start process” để bắt đầu luồng nghiệp vụ 21 Hình 4.4: Bước start kịch ca kiểm thử thứ Bước 2: Check Permission - Đăng nhập với account “gonzo” Sau đó, form hiển thị cho bước “Check Permission” thực không cho phép truy cập Hình 4.5: Bước Check Permission kịch ca kiểm thử thứ Bước 3: VerifyLogin - Tại gateway “VerifyLogin” kiểm tra liệu từ bước để xác định user có quyền đăng nhập thành cơng hay thất bại Trong trường hợp user đăng nhập thất bại nên hiển thị thông báo qua email Bước 4: Access Denied - Login với acc Kermit để kiểm tra, task danh sách cơng việc hồn thành - Một thông báo gửi đến địa mail acc yêu cầu chia sẻ liệu để thông báo đăng nhập thất bại (Trong luồng nghiệp vụ cấu hình người gửi người nhận/người gửi địa mail: duonghuyen0805@gmail.com) 22 Hình 4.6: Thơng báo access denied kịch ca kiểm thử thứ Bước 4: End Bài toán 2: ( luồng nghiệp vụ đa nhánh có vòng lặp) tả luồng nghiệp vụ quy trình xin việc (apply for job): ứng viên thực tạo hồ sơ xin việc (Create Application) gửi hồ sơ xin việc (Submit Application) đến nhà tuyển dụng Nhà tuyển dụng đánh giá hồ sơ xin việc định có mời ứng viên tham gia vấn tuyển dụng hay không? Nếu hồ sơ không đạt yêu cầu nhà tuyển dụng không mời ứng viên tham gia vấn kết thúc luồng nghiệp vụ Ngược lại, ứng viên tham gia vấn (Attend Interview) Sau buổi vấn, nhà tuyển dụng thực đánh giá kết (Evaluating the results of the interview) Nếu kết vấn không thành công nhà tuyển dụng gửi thông báo từ chối (Send Rejection) tới ứng viên kết thúc luồng nghiệp vụ Nếu kết vấn thành công, nghĩa ứng viên đáp ứng yêu cầu nhà tuyển dụng, lúc ứng viên thực xem xét mức lương mà nhà tuyển dụng đề nghị (Review Offer): - Nếu ứng viên không đồng ý mức lương nhà tuyển dụng đề nghị gửi thơng báo từ chối (Reject Offer) tới nhà tuyển dụng kết thúc luồng nghiệp vụ tả hình 4.24 hình 4.25 bên - Nếu ứng viên đồng ý với mức lương nhà tuyển dụng đề nghị gửi thơng báo chấp nhận (Submit Acceptance Form) tới ứng viên kết thúc luồng nghiệp vụ - Trường hợp ứng viên cần trao đổi lại mức lương đề nghị, nhà tuyển dụng đặt lịch hẹn (Make appointment) với ứng viên thảo luận lại mức lương (Disscuss offer again) sau quy lại trình xem xét mức lương mà ứng viên u cầu (Review Offer) Đầu vào: hình BPMN luồng quy trình xin việc 23 Hình 4.7: hình BPMN luồng quy trình xin việc (apply for job) Kết đầu ra: dạng file *.txt Hình 4.8: Kịch ca kiểm thử luồng nghiệp vụ xin việc Cụ thể gồm kịch kiểm thử sau: STT Kịch kiểm thử Start, Submit Application, Qualify Application, Called for Interview?, Attend interview, Evaluating the results of the interview, Interview sucessfull?, Review Offer, Accept Offer?, Reject offer, End Start, Submit Application, Qualify Application, Called for Interview?, Attend interview, Evaluating the results of the interview, Interview sucessfull?, Review Offer, Accept Offer?, Submit Acceptance Form, End Start, Submit Application, Qualify Application, Called for Interview?, Attend interview, Evaluating the results of the interview, Interview 24 STT Kịch kiểm thử sucessfull?, Interview failed, End Start, Submit Application, Qualify Application, Called for Interview?, End Start, Submit Application, Qualify Application, Called for Interview?, Attend interview, Evaluating the results of the interview, Interview sucessfull?, Review Offer, Accept Offer?, Make appointment, Disscuss offer Again, Review Offer, Accept Offer?, Reject offer, End Start, Submit Application, Qualify Application, Called for Interview?, Attend interview, Evaluating the results of the interview, Interview sucessfull?, Review Offer, Accept Offer?, Make appointment, Disscuss offer Again, Review Offer, Accept Offer?, Submit Acceptance Form, End - Thực thi kịch kiểm thử Activiti- explorer Khi import hình quy trình xin việc lên cơng cụ activiti có giao diện sau: Hình 4.9: Import bpmn lên công cụ activiti  Kịch ca kiểm thử thứ nhất: ứng viên vấn thành công từ chối đề nghị từ nhà tuyển dụng Kịch kiểm thử 25 Bước 1: Start, Bước 2: Submit Application, Bước 3: Qualify Application, Bước 4: Called for Interview? Bước 5: Attend interview, Bước 6: Evaluating the results of the interview, Bước 7: Interview sucessfull? Bước 8: Review Offer, Bước 9: Accept Offer? Bước 10: Reject offer, Bước 11: End Bước 1: Start - Đăng nhập với tài khoản ứng viên – tài khoản Kermit - Thực import bpmn model lên activity - Click chọn button Start process Bước 2: Submit Application - Nhập địa email - Đính kèm file thơng tin đơn xin việc chi tiết - Ấn chọn nút completed task để gửi đơn xin việc Hình 4.10: Bước Submit application kịch ca kiểm thử thứ Bước 3: Qualify Application - Đăng nhập với tài khoản nhà tuyển dụng (Gonzo) để xét duyệt đơn xin việc có đạt u cầu hay khơng 26 - Sau chọn đủ điều kiện (eligible) ấn chọn nút “Complete task” Hình 4.11: Bước Qualify Application kịch ca kiểm thử thứ Bước 4: Called for Interview? - Tại gateway “Called for Interview?” kiểm tra liệu từ bước để xác định đơn xin việc có đủ điều kiện hay khơng Trong trường hợp liệu bước chọn đơn xin việc đủ điều kiện nên chuyển sang bước tham gia vấn (attend interview) Bước 5: Attend interview - Thực đăng nhập với tài khoản người tuyển dung (kermit) ấn chọn nút “Complete task” để hoàn thành buổi vấn Bước 6: Evaluating the results of the interview - Đăng nhập với tài khoản nhà tuyển dụng (gonzo) để đánh giá kết vấn - Chọn “Pass” để đánh giá kết vấn ứng viên đạt yêu cầu nhà tuyển dụng 27 Hình 4.12: Bước đánh giá kết vấn kịch kiểm thử thứ Bước 7: Interview sucessfull? - Tại gateway “Interview sucessfull?” kiểm tra liệu từ bước để xác định kết vấn có đạt hay khơng? Trong trường hợp liệu bước chọn kết vấn đạt yêu cầu nên chuyển sang bước tiếp theo: ứng viên cân nhắc đề nghị ký hợp đồng lao động từ nhà tuyển dụng (Review Offer) Bước 8: Review Offer - Ứng viên cân nhắc đề nghị nhà tuyển dụng Tại bước ứng viên chọn không đồng ý (disagree) Hình 4.13: Bước review offer kịch ca kiểm thử thứ 28 Bước 9: Accept Offer? - Tại gateway “Accept Offer” kiểm tra liệu từ bước để xác định theo hình Trong trường hợp , bước ứng viên chọn từ chối đề nghị (Reject offer) nhà tuyển dụng Bước 10: Reject offer, - Sau ứng viên từ chối đề nghị nhà tuyển dụng, email gửi đến nhà tuyển dụng: Hình 4.14: Mail từ chối đề nghị kịch ca kiểm thử thứ Bước 11: End 4.3 Ý nghĩa thực nghiệm Kết thực nghiệm sinh thành công kịch ca kiểm thử từ hình BPMN cho thấy tính khả thi việc áp dụng phương pháp sinh kịch kiểm thử tự động từ hình luồng quy trình nghiệp vụ phát triển phẩn mềm Điều giúp giảm chi phí thời gian nguồn lực, mang lại nhiều hiệu cho trình kiểm thử Ngồi ra, đầu vào chương trình biểu đồ luồng quy trình nghiệp vụ trực quan nên kiểm thử viên thuận lợi quan sát việc thực thi ca kịch kiểm thử Các ca kịch kiểm thử sinh áp dụng để kiểm thử giai đoạn tích hợp chức năng, kiểm thử hệ thống, kiểm thử chấp nhận q trình phát triển phần mềm Ngồi ra, áp dụng để kiểm thử công cụ quản lý quy trình nghiệp vụ Tuy cơng cụ hạn chế việc chưa sinh liệu đầu vào cho ca kiểm thử tiền đề cho việc phát triển, mở rộng nhằm hồn thiện chu trình kiểm thử tự động khép kín dựa hình luồng quy trình nghiệp vụ 29 CHƯƠNG 5: KẾT LUẬN Sau nghiên cứu sở lý thuyết thực luận văn này, thu nhiều kiến thức có hướng nhìn rõ ràng cụ thể phương pháp sinh ca kiểm thử tự động từ hình thực thi được, đặc biệt từ hình thực thi cụ thể hình BPMN Luận văn tập trung nghiên cứu phương pháp sinh kịch kiểm thử từ hình hóa quy trình nghiệp vụ thơng qua ngơn ngữ hình hóa BPMN, từ đề xuất phương pháp áp dụng kiểm thử tự động dựa hình BPMN cơng nghiệp phần mềm Qua q trình nghiên cứu, thực nghiệm, luận văn đạt kết sau: - Tìm hiểu tổng quan kiểm thử dựa hình Trình bày số phương pháp kiểm thử dựa hình, thuận lợi khó áp dụng phương pháp kiểm thử tự động - Cung cấp nhìn tổng quan tốn hình hóa quy trình nghiệp vụ ngơn ngữ hình hóa BPMN Đồng thời giới thiệu cơng cụ quản lý quy trình nghiệp vụ hỗ trợ thiết kế thực thi hình BPMN, trực quan hình BPMN thiết kế thực thi cơng cụ Activiti - Luận văn đóng góp phương pháp sinh kịch ca kiểm thử từ hình BPMN dựa việc duyệt tất nhánh nghiệp vụ hình BPMN sinh ca kịch kiểm thử tương ứng Kết đầu áp dụng cho q trình kiểm thử tích hợp, kiểm thử hệ thống kiểm thử chấp nhận phát triển phần mềm Ngoài ra, kết đầu áp dụng để kiểm thử tính đắn cơng cụ quản lý quy trình nghiệp vụ Activiti Việc áp dụng ngơn ngữ hình hóa quy trình BPMN mang lại nhiều hiệu lợi ích việc xây dựng, thực quản lý quy trình quan tổ chức Đặc biệt hỗ trợ tốt cho trình sinh ca kiểm thử tự động từ hình Tuy nhiên q trình làm luận văn này, tơi nhận thấy bên cạnh ưu điểm BPMN áp dụng hình sinh ca kiểm thử có hạn chế chưa sinh liệu đầu vào tự động cho ca kiểm thử, BPMN hình quy trình nghiệp vụ tổng qt nên chưa có ràng buộc cụ thể chi tiết mặt liệu sinh liệu đầu vào cho ca kiểm thử 30 Để có tính ứng dụng cao thực tế, đưa số đề xuất định hướng nghiên cứu sau: - Tiếp tục hồn thiện chương trình sinh ca kiểm thử từ ngơn ngữ hình hóa BPMN Do quỹ thời gian có hạn, chương trình chưa thật hồn hảo việc chưa sinh liệu kiểm thử đầu vào tự động cho ca kiểm thử Hướng nghiên cứu tìm hiểu áp dụng tiền điều kiện hậu điều kiện cho lớp đối tượng mở rộng hình BPMN, từ áp dụng ngơn ngữ ràng buộc đối tượng OCL việc sinh liệu đầu vào cho ca kiểm thử - Nghiên cứu xây dựng phương pháp sinh ca kiểm thử cho công cụ quản lý quy trình nghiệp vụ Phạm vi luận văn áp dụng sinh ca kiểm thử cho hình BPMN thiết kế thực thi cơng cụ quản lý quy trình nghiệp vụ Activiti Từ áp dụng kiểm thử tính đắn cơng cụ quản lý quy trình nghiệp vụ Activiti Định hướng tơi tập trung tìm hiểu mở rộng phạm vi áp dụng chương trình ứng dụng cho cơng cụ quản lý quy trình nghiệp vụ khác 31 TÀI LIỆU THAM KHẢO Tiếng Việt: [1] Phạm Ngọc Hùng, Trương Anh Hoàng, Đặng Văn Hưng (2014), “Giáo trình kiểm thử phần mềm”, Nhà xuất giáo dục Việt Nam [2] Nguyễn Văn Hòa, “Phương pháp sinh liệu kiểm thử tự động từ biểu đồ UML, biểu đồ lớp ràng buộc OCL”, Luận văn thạc sĩ Đại học Công Nghệ- Đại học Quốc Gia Hà Nội Tiếng Anh: [3] Mark Utting, Bruno Legeard (2007), Practical Model – Based Testing: A Tools Approach, Elsevier Inc [4] AnneKe K., Jos W., Wim B (2003), MDA Explained: The Model Driven Architecture: Practice and Promise, Addison Wesley, United States [5] Vinaya Sawant and Ketan Shah.Automatic (2011) Generation of Test Cases from UML Models International Conference on Technology Systems and Management (ICTSM) International Jounal of Computer Appilication, [6] W Linzhang, Y Jiesong, Y Xiaofeng, H Jun, L Xuandong, and Z Guoliang (2004), Generating test cases from UML activity diagram based on gray-box method In 11th Asia-Pacific Software Engineering Conference (APSEC04), pp 284-291 [7] C Mingsong, Q Xiaokang, and L Xuandong (2006), Automatic test case generation for UML activity diagrams In 2006 international workshop on Automation of software test, pp 2-8 [8] Debasish Kundu and Debaisis Samanta.(2008), Journal of Object Technology In Chair of Software Engineering [9] Lilly Raamesh1 and G V Uma (2010) Reliable Mining of Automatically Generated Test Cases from Software Requirements Specification International Journal of Computer Science Issues [10] Paul C Jorgensen (2009) Modeling Software Behavior: A Craftsman’s Approach Auerbach Publications [11] Dipl.-Ing Tanja Mayerhofer, BSc (2014), Defining Executable Modeling Languages with fUML [12] Marco Brambilla, Jordi Cabot, Manuel Wimmer (2012), Model –Driven Software Engineering in Practice, Austria [13] Marlon Dumas, Marcello La Rosa, Jan Mendling, Hajo A Reijers (2013), Fundamentals of Business Process Management Nguồn tham khảo khác: [14] BPMN Poster, http://www.bpmn.org/, 2017-09-01 32 ... pháp kiểm thử dựa mơ hình 2.4.1 Sinh tự động ca kiểm thử từ biểu đồ UML OCL 2.4.2 Sinh tự động ca kiểm thử từ biểu đồ UML 2.4.3 Khai thác đáng tin cậy trường hợp kiểm thử tự động từ. .. kiểm thử từ mơ hình mơi trường - Sinh ca kiểm thử với dự đốn từ mơ hình hành vi - Sinh đoạn mã kiểm thử từ kiểm thử trừu tượng Q trình kiểm thử dựa mơ hình thực qua bước sau - Sinh mơ hình dựa yêu... thi t cho việc tạo ca kiểm thử, thông tin thu thập từ mẫu ca kiểm thử, kết hợp với OCL để tạo ca kiểm thử dựa tiêu chí bao phủ toàn nhánh 2.4.2 Sinh tự động ca kiểm thử từ biểu đồ UML Trong cách

Ngày đăng: 16/01/2018, 16:39

Tài liệu cùng người dùng

Tài liệu liên quan