Nghiên cứu kỹ thuật kiểm thử tự động dựa trên mô hình, áp dụng trong hệ thống nhúngNghiên cứu kỹ thuật kiểm thử tự động dựa trên mô hình, áp dụng trong hệ thống nhúngNghiên cứu kỹ thuật kiểm thử tự động dựa trên mô hình, áp dụng trong hệ thống nhúngNghiên cứu kỹ thuật kiểm thử tự động dựa trên mô hình, áp dụng trong hệ thống nhúngNghiên cứu kỹ thuật kiểm thử tự động dựa trên mô hình, áp dụng trong hệ thống nhúngNghiên cứu kỹ thuật kiểm thử tự động dựa trên mô hình, áp dụng trong hệ thống nhúngNghiên cứu kỹ thuật kiểm thử tự động dựa trên mô hình, áp dụng trong hệ thống nhúngNghiên cứu kỹ thuật kiểm thử tự động dựa trên mô hình, áp dụng trong hệ thống nhúngNghiên cứu kỹ thuật kiểm thử tự động dựa trên mô hình, áp dụng trong hệ thống nhúngNghiên cứu kỹ thuật kiểm thử tự động dựa trên mô hình, áp dụng trong hệ thống nhúngNghiên cứu kỹ thuật kiểm thử tự động dựa trên mô hình, áp dụng trong hệ thống nhúngNghiên cứu kỹ thuật kiểm thử tự động dựa trên mô hình, áp dụng trong hệ thống nhúng
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - PHẠM THỊ NGỌC NGHIÊN CỨU KỸ THUẬT KIỂM THỬ TỰ ĐỘNG DỰA TRÊN MƠ HÌNH, ÁP DỤNG TRONG HỆ THỐNG NHÚNG LUẬN VĂN THẠC SĨ KỸ THUẬT (Theo định hướng ứng dụng) HÀ NỘI - 2018 HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THÔNG - PHẠM THỊ NGỌC NGHIÊN CỨU KỸ THUẬT KIỂM THỬ TỰ ĐỘNG DỰA TRÊN MƠ HÌNH, ÁP DỤNG TRONG HỆ THỐNG NHÚNG Chuyên ngành: Hệ thống thông tin Mã số: 8.48.01.04 NGƯỜI HƯỚNG DẪN KHOA HỌC : TS ĐỖ THỊ BÍCH NGỌC HÀ NỘI - 2019 i LỜI CAM ĐOAN Tôi cam đoan luận văn thạc sĩ “Nghiên cứu kỹ thuật kiểm thử tự động dựa mơ hình, áp dụng hệ thống nhúng” cơng trình nghiên cứu riêng Các số liệu, kết nêu luận văn trung thực chưa cơng bố cơng trình khác Tất tham khảo kế thừa trích dẫn tham chiếu đầy đủ Tác giả luận văn ii MỤC LỤC LỜI CAM ĐOAN………………………………………………………………………… i MỤC LỤC DANH MỤC HÌNH VẼ iii MỞ ĐẦU Chương – TỔNG QUAN VỀ HỆ THỐNG NHÚNG VÀ KIỂM THỬ TRONG HỆ THỐNG NHÚNG 1.1 Hệ thống nhúng 1.2 Đặc điểm hệ thống nhúng 1.2.1 Giao diện 1.2.2 Thiết bị ngoại vi 1.2.3 Công cụ phát triển 1.2.4 Độ tin cậy 1.2.5 Xu hướng phát triển hệ thống nhúng 1.2.6 Những thách thức vấn đề tồn với hệ thống nhúng 1.3 Lý thuyết kiểm thử 1.3.1 Mục tiêu kiểm thử 1.3.2 Nguyên tắc kiểm thử 1.3.3 Nội dung nhiệm vụ trình kiểm thử 10 1.4 Kiểm thử tự động 12 Kiểm thử tự động 12 Ưu điểm nhược điểm 12 Tầm quan trọng kiểm thử tự động 13 Chương 2-PHƯƠNG PHÁP KIỂM THỬ DỰA TRÊN MƠ HÌNH 15 2.1 Kiểm thử dựa mơ hình 15 2.1.1 Kiểm thử dựa mơ hình 15 2.1.2 Quy trình kiểm thử dựa mơ hình 16 2.1.3 Thuận lợi khó khăn kiểm thử dựa mơ hình 19 2.2 Các vấn đề trình kiểm thử dựa mơ hình 20 2.3 Lập mơ hình cho hệ thống 31 2.3.1 Mơ hình kiểm thử Simulink 32 2.3.2 Yêu cầu/ đặc tả mơ hình 33 2.3.3 Tạo ca kiểm thử từ mơ hình 35 2.3.4 Đánh giá mức phủ test case 35 Chương - THỬ NGHIỆM VÀ ĐÁNH GIÁ 39 3.1 Cài đặt Matlab & Simulink toolbox 39 3.2 Áp dụng kiểm thử dựa mơ hình vào tốn kiểm thử mơ hình điều khiển hành trình 40 3.2.1 Xây dựng mơ hình Matlab 40 3.2.2 Sinh ca kiểm thử thực thi kết kiểm thử 45 Chương – KẾT LUẬN 51 TÀI LIỆU THAM KHẢO 52 iii DANH MỤC HÌNH VẼ Hình 1.1: Bản kế hoạch kế hoạch chi tiết 11 Hình 2.1: Phân loại q trình kiểm thử dựa mơ hình 21 Hình 2.2: Ví dụ mơ hình bao gồm khối thử nghiệm tuần tự, kiểm tra liệu kiểm tra quản lý 33 Hình 2.3: Ví dụ sơ đồ khối hệ thống truyền lực 34 Hình 2.4: Sơ đồ mơ hình hóa kết mô động truyền động 34 Hình 3.1: Sơ đồ khối hệ thống điều khiển hành trình cho hệ thống tơ 41 Hình 3.2: Mơ hình lực cân xe tơ 42 Hình 3.3: Chi tiết khối Cruise control 45 Hình 3.4: Cơ sở liệu kiểm thử 46 Hình 3.5: Nhập file liệu đầu vào 47 Hình 3.6: Tạo file liệu sở từ ca kiểm thử 48 Hình 3.7: So sánh kết với đường sở baseline 48 Hình 3.8: Độ dốc đường tăng giảm với biên độ nhỏ 49 Hình 3.9: Vận tốc xe độ dốc thay đổi với biên độ nhỏ 49 Hình 3.10: Độ dốc đường tăng giảm với biên độ lớn 50 Hình 3.11: Vận tốc xe độ dốc đường lớn 50 MỞ ĐẦU Xuất từ năm đầu thập niên 1960, hệ thống nhúng dần trở thành ngành phát triển mạnh mẽ lĩnh vực công nghệ thông tin (CNTT), với ứng dụng rộng rãi công nghiệp đời sống Sự tăng trưởng hệ thống nhúng ngành công nghiệp dẫn tới q trình phát triển cơng nghệ dựa mơ hình (model based), mang lại nhiều thuận lợi cho phát triển công nghệ tự động Các kỹ thuật dựa mơ MATLAB/ Simulink, Statemate, MatrixX LabView công cụ cụ thể có chế mạnh mẽ nhằm hỗ trợ xử lý tín hiệu liên tục loại liệu quan trọng lĩnh vực điều khiển tự động Những cơng nghệ dựa mơ hình cho phép phát triển mơ hình cách chi tiết sử dụng để mơ giai đoạn phát triển Sự phát triển hệ thống nhúng kéo theo yêu cầu phát triển hoạt động kiểm thử Thông thường, cách phổ biến để kiểm thử cho hệ thống nhúng nói chung chạy giả lập phần cứng phần mềm mô Kiểm thử tự động giải pháp hữu hiệu nhằm nâng cao tính xác hiệu quả, giảm kinh phí rút ngắn thời gian q trình kiểm thử sản phẩm phần mềm nói chung hệ thống nhúng nói riêng Kiểm thử dựa mơ hình xem phương pháp kiểm thử có khả tự động hóa cao Kiểm thử dựa mơ hình phương pháp kiểm thử, ca kiểm thử sinh từ mơ hình đặc tả hành vi hệ thống kiểm thử Ngoài ra,việc đảm bảo chất lượng dựa phát triển mơ hình, đặc biệt thử nghiệm, hỗ trợ Trong luận văn này, thảo luận đặc tính quy trình phát triển dựa mơ hình cho hệ thống nhúng, đánh giá cần thiết hiệu việc kiểm thử thực tế Đặc biệt hệ thống nhúng yêu cầu cao chất lượng, cần kiểm thử từ mơ hình, việc mơ hình hóa & mơ hệ thống nhúng sử dụng hệ vật lý không tồn tại, tốn thời gian chi phí để xây dựng, cho phép quan sát trình, đáp ứng động hệ thống trước thực nghiệm thiết bị thực, cơng cụ hữu hiệu cho việc thiết kế, nghiên cứu, với chi phí thấp, dễ dàng thay đổi Các cơng cụ mơ hình hoá (như Simulink) hay dùng để thiết kế hệ thống nhúng Simulink tích hợp vào Matlab cơng cụ để mơ phòng hệ thơng, giúp người sử dụng phân tích tổng hợp hệ thống cách trực quan Trong Simulink, hệ thống mô tả dạng sơ đồ khối Với dạng sơ đồ khối này, ta quan sát đáp ứng thời gian hệ thống với nhiều tín hiệu vào khác như: tín hiệu bậc thang, tín hiệu sinus, xung chữ nhật, tín hiệu ngẫu nhiên, cách thực mơ Kết mơ xem theo thời gian thực môi trường Simulink Matlab Tất hàm Matlab cố thể truy cập từ Simulink, ngược lại, kết tìm Simulink sử dụng khái thác mơ trường Matlab Với mục đích tìm hiểu kỹ thuật kiểm thử áp dụng vào hệ thống nhúng, nhận thấy việc nghiên cứu phương pháp kiểm thử tự động dựa mơ hình hệ thống nhúng vấn đề cần thiết Luận văn cấu trúc với chương sau: Chương : Tổng quan hệ thống nhúng kiểm thử hệ thống nhúng Chương : Phương pháp kiểm thử dựa mơ hình hệ thống nhúng Chương 3: Thử nghiệm đánh giá Luận văn khảo sát toán kiểm thử dựa mơ hình áp dụng hệ thống nhúng, đề xuất phương pháp, mơ hình kiểm thử phù hợp với quy trình Đồng thời phương pháp đề xuất phân tích đánh giá số phương pháp đánh giá thông dụng tập liệu có sẵn Chương – TỔNG QUAN VỀ HỆ THỐNG NHÚNG VÀ KIỂM THỬ TRONG HỆ THỐNG NHÚNG 1.1 Hệ thống nhúng Xuất từ năm đầu thập niên 1960, hệ thống nhúng dần trở thành ngành phát triển mạnh mẽ lĩnh vực công nghệ thông tin (CNTT), với ứng dụng rộng rãi công nghiệp đời sống Hệ thống nhúng (embedded system) định nghĩa hệ thống chuyên dụng, thường có khả tự hành thiết kế tích hợp vào hệ thống lớn để thực chức chuyên biệt Hệ thống nhúng thuật ngữ để hệ thống có khả tự trị nhúng vào môi trường hay hệ thống mẹ Đó hệ thống tích hợp phần cứng phần mềm phục vụ toán chuyên dụng nhiều lĩnh vực cơng nghiệp, tự động hố điều khiển, quan trắc truyền tin Đặc điểm hệ thống nhúng hoạt động ổn định có tính tự động hố cao Hệ thống nhúng thường thiết kế để thực chức chuyên biệt Khác với máy tính đa chức năng, chẳng hạn máy tính cá nhân, hệ thống nhúng thực một vài chức định, thường kèm với yêu cầu cụ thể bao gồm số thiết bị máy móc phần cứng chun dụng mà ta khơng tìm thấy máy tính đa nói chung Vì hệ thống xây dựng cho số nhiệm vụ định nên nhà thiết kế tối ưu hóa nhằm giảm thiểu kích thước chi phí sản xuất Các hệ thống nhúng thường sản xuất hàng loạt với số lượng lớn Hệ thống nhúng đa dạng, phong phú chủng loại Đó thiết bị cầm tay nhỏ gọn đồng hồ kĩ thuật số máy chơi nhạc MP3, sản phẩm lớn đèn giao thông, kiểm soát nhà máy hệ thống kiểm soát máy lượng hạt nhân Xét độ phức tạp, hệ thống nhúng đơn giản với vi điều khiển phức tạp với nhiều đơn vị, thiết bị ngoại vi mạng lưới nằm gọn lớp vỏ máy lớn Các thiết bị PDA máy tính cầm tay có số đặc điểm tương tự với hệ thống nhúng hệ điều hành vi xử lý điều khiển chúng thiết bị hệ thống nhúng thật chúng thiết bị đa năng, cho phép sử dụng nhiều ứng dụng kết nối đến nhiều thiết bị ngoại vi 1.2 Đặc điểm hệ thống nhúng Hệ thống nhúng thường có số đặc điểm chung sau: Các hệ thống nhúng thiết kế để thực số nhiệm vụ chun dụng khơng phải đóng vai trò hệ thống máy tính đa chức Một số hệ thống đòi hỏi ràng buộc tính hoạt động thời gian thực để đảm bảo độ an tồn tính ứng dụng; số hệ thống khơng đòi hỏi ràng buộc chặt chẽ, cho phép đơn giản hóa hệ thống phần cứng để giảm thiểu chi phí sản xuất Một hệ thống nhúng thường khơng phải khối riêng biệt mà hệ thống phức tạp nằm thiết bị mà điều khiển Phần mềm viết cho hệ thống nhúng gọi firmware lưu trữ chip nhớ ROM nhớ flash ổ đĩa Phần mềm thường chạy với số tài nguyên phần cứng hạn chế: bàn phím, hình có với kích thước nhỏ, dung lượng nhớ thấp Với đặc điểm trên, việc thử nghiệm, xác định lỗi hệ thống nhúng gặp nhiều khó khăn Số lượng trường hợp thử nghiệm lớn, đòi hỏi phải có phương pháp mơ hình kiểm thử phù hợp 1.2.1 Giao diện Các hệ thống nhúng khơng có giao diện (đối với hệ thống đơn nhiệm) có đầy đủ giao diện giao tiếp với người dùng tương tự hệ điều hành thiết bị để bàn Đối với hệ thống đơn giản, thiết bị nhúng sử dụng nút bấm, đèn LED hiển thị chữ cỡ nhỏ hiển thị số, thường kèm với hệ thống menu đơn giản Còn hệ thống phức tạp hơn, hình đồ họa, cảm ứng có nút bấm lề hình cho phép thực thao tác phức tạp mà tối thiểu hóa khoảng khơng gian cần sử dụng Ý nghĩa nút bấm thay đổi theo hình lựa chọn Các hệ thống nhúng thường có hình với nút bấm dạng cần điểu khiển (joystick button) Sự phát triển mạnh mẽ mạng toàn cầu mang đến cho nhà thiết kế hệ nhúng lựa chọn sử dụng giao diện web thông qua việc kết nối mạng Điều giúp tránh chi phí cho hình phức tạp đồng thời cung cấp khả hiển thị nhập liệu phức tạp cần đến, thông qua máy tính khác Điều hữu dụng thiết bị điều khiển từ xa, cài đặt vĩnh viễn Ví dụ, router thiết bị ứng dụng tiện ích 1.2.2 Thiết bị ngoại vi Hệ thống nhúng giao tiếp với bên ngồi thơng qua thiết bị ngoại vi, ví dụ như: • Serial Communication Interfaces (SCI): RS-232, RS-422, RS-485 • Universal Serial Bus (USB) • Networks: Controller Area Network, LonWorks • Bộ định thời: PLL(s), Capture/Compare Time Processing Units • Discrete IO: General Purpose Input/Output (GPIO) 1.2.3 Công cụ phát triển Tương tự sản phẩm phần mềm khác, phần mềm hệ thống nhúng phát triển nhờ việc sử dụng trình biên dịch (compilers), chương trình dịch hợp ngữ (assembler) cơng cụ gỡ rối (debuggers) Tuy nhiên, nhà thiết kế hệ thống nhúng sử dụng số cơng cụ chun dụng như: • Bộ gỡ rối mạch chương trình mơ (emulator) • Tiện ích để thêm giá trị checksum CRC vào chương trình, giúp hệ thống nhúng kiểm tra tính hợp lệ chương trình • Đối với hệ thống xử lý tín hiệu số, người phát triển hệ thống sử dụng phần mềm workbench MathCad/ Mathematica để mơ phép tốn • Các trình biên dịch trình liên kết (linker) chuyên dụng sử dụng để tối ưu hóa thiết bị phần cứng • Một hệ thống nhúng có ngơn ngữ lập trình cơng cụ thiết kế riêng sử dụng cải tiến từ ngơn ngữ có sẵn 38 Khi trình tạo ca kiểm thử hoàn tất, ca kiểm thử xuất Test Manager: B5: Chạy ca kiểm thử - Sao chép ca kiểm thử vào mục: Logged Data and Coverage - Chạy lại Logged Data and Coverage lần - Khi q trình tính tốn hồn tất, chọn Results and Artifacts/ Aggregated Coverage Results Bộ kết hiển thị: a Decision: 100% b Condition: 100% c MCDC: 100% B6: Hồn tất q trình, thực xóa biến file kết Sau đóng mơ hình clear filePath reqDoc rollModel testFile testHarness topModel; sltest.testmanager.clearResults; sltest.testmanager.close; close_system('RollAutopilotRevised',0); 39 Chương - THỬ NGHIỆM VÀ ĐÁNH GIÁ 3.1 Cài đặt Matlab & Simulink toolbox MATLAB, tên viết tắt từ tiếng Anh MATrix LABoratory mơi trường tính tốn số lập trình, thiết kế công ty MathWorks MATLAB môi trường mạnh dành cho tính tốn khoa học Nó tích hợp phép tính ma trận phép tính số dựa hàm Hơn nữa, cấu trúc đồ họa hướng đối tượng Matlab cho phép tạo hình vẽ chất lượng cao MATLAB giúp đơn giản hóa việc giải tốn tính tốn kĩ thuật so với ngơn ngữ lập trình truyền thống C, C++, Fortran Ngày nay, Matlab trở thành ngôn ngữ chuẩn sử dụng rộng rãi nhiều ngành nhiều quốc gia giới Về mặt cấu trúc, Matlab gồm cửa sổ nhiều hàm viết sẵn khác Các hàm lĩnh vực ứng dụng xếp chung vào thư viện, điều giúp người sử dụng dễ dàng tìm kiếm hàm cần quan tâm Có thể kể số thư viện Matlab như: - Control System (Dành cho điều khiển tự động)) - Finacial toolbox (Lĩnh vực kinh tế)) - Fuzzy Logic ( Điều khiển mờ)) - Signal Processing (Xử lý tín hiệu) - Statistics ( Tính tốn thống kê) - System Identification ( Nhận dạng) - … Mỗi năm Mathworks - công ty sản xuất phân phối MATLAB đưa thị trường cập nhật rxxxxa vào đầu năm rxxxb vào cuối năm (với xxxx năm phát hành) Trong giới hạn luận văn, sử dụng Matlab R2016a Simulink tích hợp vào Matlab cơng cụ để mơ phòng hệ thơng, giúp người sử dụng phân tích tổng hợp hệ thống cách trực quan Trong Simulink, hệ thống mô tả dạng sơ đồ khối Với dạng sơ đồ khối này, ta quan sát đáp ứng thời gian hệ thống với nhiều tín hiệu vào khác như: tín hiệu bậc thang, tín hiệu sinus, xung chữ nhật, tín hiệu ngẫu 40 nhiên, cách thực mô Kết mơ xem theo thời gian thực môi trường Simulink Matlab Tất hàm Matlab cố thể truy cập từ Simulink, ngược lại, kết tìm Simulink sử dụng khái thác mơ trường Matlab Mọi chi tiết phần mềm, cách sử dụng ví dụ lệnh, tham khảo phần help Matlab download file dạng *.pdf tạo trang Web Matlab địa http://www.mathworks.com 3.2 Áp dụng kiểm thử dựa mô hình vào tốn kiểm thử mơ hình điều khiển hành trình Khái qt lại tốn kiểm thử dựa mơ hình, ta cần đảm bảo q trình thiết kế phát triển hệ thống, mơ hình đưa mơ lại xác tương ứng với hệ thống thực nhằm việc kiểm thử đạt hiệu tối đa Các bước thực trình kiểm thử: - B1: Xác định input port, output port mơ hình simulink - B2: Căn u cầu/ đặc tả mơ hình từ sinh ca kiểm thử tương ứng - B3: Chạy chương trinh mơ với mơ hình Simulink ca kểm thử thiết kế - B4: Đánh giá mức phủ ca kiểm thử 3.2.1 Xây dựng mơ hình Matlab Hệ thống điều khiển hành trình (cruise control) xe ô tô hệ thống phản hồi, ứng dụng rộng rãi xe ô tô Hệ thống xây dựng nhằm mục đích cố gắng trì vận tốc xe tơ có thay đổi độ dốc đường, vào đoạn đường gập ghềnh Bộ điều khiển bù thay đổi cách đo tốc độ xe điều chỉnh bướm ga cách thích hợp Sơ đồ khối thể mơ hinh hóa hệ thống: 41 Hình 3.1: Sơ đồ khối hệ thống điều khiển hành trình cho hệ thống ô tô Bộ điều khiển bướm ga động tạo mô men xoắn T truyền xuống đất thơng qua hộp số bánh Kết hợp với lực bên ngồi mơi trường lực cản khí động học trọng lực, lực giúp xe di chuyển Vận tốc v xe đo hệ thống điều khiển thay đổi bướm ga thông qua chế thực thi Giao diện người dùng cho phép hệ thống tắt bật thiết lập vận tốc mong muốn 𝑣𝑟 Cho 𝑣 vận tốc xe 𝑣𝑟 vận tốc mong muốn (vận tốc tham chiếu) Bộ điều khiển loại vi tích phân tỷ lệ (PI) nhận tín hiệu đầu vào 𝑣 𝑣𝑟 , sau tạo tín hiệu điều khiển u gửi tới truyền truyền động điều khiển vị trí bướm ga Bướm ga kiểm sốt mô men xoắn T tạo động cơ, truyền qua bánh báng xe, tạo lực F giúp xe di chuyển Các lực nhiễu 𝐹𝑑 gây xáo trộn thay đổi độ dốc đường đi, lực cản lăn lực động lực học Bộ điều khiển hành trình có giao diện người- máy cho phép lái xe thiết lập thay đổi tốc độ mong muốn Ngồi có chức ngắt kết nối điều khiển hành trình đạp phanh Hệ thống bao gồm nhiều thành phần riêng biệt: phận truyền động, động cơ, chuyển số, bánh xe thân xe với mơ hình chi tiết phức tạp Mặc dù vậy, mơ hình đáp ứng cho thiết kế điều khiển hành trình đơn giản 42 Hình 3.2: Mơ hình lực cân xe ô tô Căn vào biểu thức toán xây dựng trên, khối chức xây dựng Matlab tương ứng sau: Biểu thức biểu diễn thành khối sau: Biểu thức Được biểu diễn khối 43 Tổng lực cản khí động học ma sát lăn biểu diễn khối Cộng tổng khối ta tổng ngoại lực tác động lên xe trình chuyển động Biểu thức Được biểu diễn khối Ghép nối khối với ta mơ hình hoạt động hệ thống điều khiển hành trình xe 44 Căn vào đặc tả mơ hình phương trình lực tác động lên xe, hệ thống điều khiển hành trình mơ hình hóa thành mơ hình đơn giản sau: Trong đó: - Khối Cruise control điều khiển hành trình - Khối Hill Counter khối liệu đầu vào cho hệ thống độ dốc mặt đường, - Khối Set Velocity khối liệu đầu vào cho hệ thống vận tốc hành trình mong muốn - Khối Scope Velocity đầu hệ thống hiển thị tốc độ thực xe 45 Hình 3.3: Chi tiết khối Cruise control 3.2.2 Sinh ca kiểm thử thực thi kết kiểm thử Hệ thống phải đáp ứng yêu cầu sau: Sau thiết lập tốc độ hành trình thời gian để đạt tốc độ hành trình khơng q 60 giây Khi giá trị độ dốc mặt đường (hill couter) thay đổi hệ thống phải tự điều chỉnh để trì tốc độ hành trình mong muốn khơng q 10% Với yêu cầu trên, ca kiểm thử cho mơ hình tạo sau: - Trên giao diện Simulink chọn Analyst Test Manager - Tại giao diện Test Manager chọn New Test File from Model , chọn mơ hình cần kiểm thử 46 Simulink tạo test case tương ứng với tạo giá trị đầu vào hệ thống điều khiển hành trình Mặc định trường hợp kiểm thử tự động nhận tham số đầu vào nguồn tạo tham số để kiểm thử Khi thực thi trường hợp kiểm thử chưa có ràng buộc nên Simulink thực thi mơ hình hiển thị giá trị đầu ra, thông báo trường hợp kiểm thử thành công Trường hợp kiểm thử 1: Thay đổi giá trị tốc độ mong muốn, giữ nguyên độ dốc mặt đường, xem xét giá trị vận tốc đầu có nằm khoảng cho phép, thời gian thiết lập tốc độ nằm ngưỡng cho phép hay không Để thực kiểm thử, tạo sẵn file sở liệu thiết lập độ dốc mặt đường, vận tốc mong muốn xe thời điểm Hình 3.4: Cơ sở liệu kiểm thử 47 Để thực kiểm thử, tạo ca kiểm thử Chọn Input Add Input, chọn đường dẫn tới file sở liệu tạo, tạo nhiều file đầu vào để kiểm thử (mỗi file kiểm thử) Hình 3.5: Nhập file liệu đầu vào Sau chọn Run để thực thi để thực thi ca kiểm thử Như mơ hình đáp ứng với vận tốc mong muốn nhỏ 50km/h thời gian đáp ứng hệ thống đạt 60 giây 48 Trường hợp kiểm thử 2: Thay đổi giá trị độ dốc, giữ nguyên vận tốc hành trình, xem xét giá trị đầu có nằm khoảng cho phép Để thay đổi giá trị độ dốc theo thời gian, tạo file liệu đầu vào theo thời gian Trước thực kiểm thử, tạo liệu baseline làm sở đánh giá khả vận hành hệ thống Dữ liệu sử dụng làm baseline xe thiết lập vận tốc hành trình 50km/h, độ dốc 0, khơng đổi trình kiểm thử Trong cài đặt trường hợp kiểm thử chọn Baseline Critical Capture để lấy giá trị đầu làm baseline, kết ghi vào file cruise_control.mat để sử dụng cho kiểm thử khác Hình 3.6: Tạo file liệu sở từ ca kiểm thử Sau thực thi trường hợp kiểm thử Input để tạo baseline Hình 3.7: So sánh kết với đường sở baseline Trong kết kiểm thử xuất thêm Baseline Criteria Result so sánh kết kiểm thử với đường sở baseline 49 Để thực kiểm thử với số liệu độ dốc thay đổi, sử dụng file sở liệu excel chứa thông tin độ dốc mặt đường theo thời gian vận tốc mong muốn Khi độ dốc thay đổi vừa phải vận tốc mong muốn xe trì tương đối ổn định nằm khoảng cho phép Hình 3.8: Hình 3.9: Độ dốc đường tăng giảm với biên độ nhỏ Vận tốc xe độ dốc thay đổi với biên độ nhỏ 50 Trong ca kiểm thử tiếp theo, tiến hành tăng độ dốc mặt đường lên đột ngột, xe đạt tốc độ mong muốn sau khoảng thời gian, động xe không tạo đủ lực để đưa tốc độ xe lên vận tốc hành trình mong muốn với độ dốc lớn Hình 3.10: Độ dốc đường tăng giảm với biên độ lớn Hình 3.11: Vận tốc xe độ dốc đường lớn Như vậy, để minh họa cho phần lý thuyết kiểm thử tự động dựa mơ hình, học viên thực xong tạo ca kiểm thử cho mơ hình điều khiển hành trình đơn giản, sử dụng liệu đầu vào, phân tích đánh giá kết đầu phù hợp 51 Chương – KẾT LUẬN Hệ thống nhúng ngày ứng dụng rỗng rãi sống chúng ta, đặc biệt thời đại công nghệ 4.0, vạn vật kết nối (IoT) Kiểm thử dựa mơ hình cho hệ thống nhúng ngày có ý nghĩa quan trọng, nhằm phát khắc phục lỗi, nhược điểm hệ thống kiểm thử giúp hệ thống hoàn thiện, bảo đảm chức đưa vào hoạt động Luận văn thực tìm hiểu mơ hình hệ thống nhúng, nghiên cứu kỹ thuật kiểm thử cho mơ hình hệ thống nhúng thực kiểm thử số mơ hình Simulink Việc thực kiểm thử luận văn đơn giản Hướng phát triển luận văn áp dụng phương pháp sinh liệu kiểm thử để giúp tăng độ phủ 52 TÀI LIỆU THAM KHẢO [1] Kiểm thử tự động dựa biểu đồ hoạt động, Võ Văn Lường, Kỷ yếu hội nghị khoa học Đại học Duy Tân [2] Gabriela Nicolescu and Pieter J Mosterman, Model-Based Design for Embedded Systems; edited [3] Justyna Zander, Ina Schieferdecker, and Pieter J Mosterman, ModelBased Testing for Embedded Systems, edited [5] Eckard Bringmann, Andreas Krämer (2008), Model-based Testing of Automotive Systems [6] Mark Utting, Bruno Legeard (2007), Practical Model – Based Testing: A Tools Approach, Elsevier Inc [7] Pawel Skruch and Gabriel Buchala (2014), Model-Based Real-Time Testing of Embedded Automotive Systems; Delphi Automotive [8] Mark Utting , Alexander Pretschner , Bruno Legeard (2012), A taxonomy of model-based testing approaches, Software Testing, Verification and Reliability, 22(5), pp 297-312 [9] Mohammed Akour, Bouchaid Falah, Karima Kaddouri (2016), An Improvement in Comparison with traditional MBT ... phải trình sửa lỗi 1.4 Kiểm thử tự động Kiểm thử tự động Sử dụng công cụ kiểm thử tự động để thực thi ca kiểm thử thay cho người goi kiểm thử tự động Công cụ kiểm thử tự động lấy dự liệu từ file... chung hệ thống nhúng nói riêng Kiểm thử dựa mơ hình xem phương pháp kiểm thử có khả tự động hóa cao Kiểm thử dựa mơ hình phương pháp kiểm thử, ca kiểm thử sinh từ mơ hình đặc tả hành vi hệ thống kiểm. .. performance test, kiểm thử tự động cách 15 Chương 2-PHƯƠNG PHÁP KIỂM THỬ DỰA TRÊN MƠ HÌNH 2.1 Kiểm thử dựa mơ hình 2.1.1 Kiểm thử dựa mơ hình Kiểm thử dựa mơ hình dạng kiểm thử dựa hành vi mơ hình, mã