Kiểm thử hướng mô hình và ứng dụng trong phát triển ứng dụng cho điện thoại di động thông minh

58 350 0
Kiểm thử hướng mô hình và ứng dụng trong phát triển ứng dụng cho điện thoại di động thông minh

Đ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

Luận văn thạc sỹ MỤC LỤC LỜI CAM ĐOAN Danh mục từ viết tắt thuật ngữ Danh mục bảng Danh mục hình vẽ MỞ ĐẦU Chương TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM KIỂM THỬ HƯỚNG HÌNH 1.1 Tổng quan kiểm thử 1.1.1 Các khái niệm liên quan kiểm thử 1.1.2 Quy trình kiểm thử (Test Process) 12 1.2 Tổng quan kiểm thử hướng hình 15 1.2.1 Khái niệm kiểm thử hướng hình 15 1.2.2 Cách thức làm việc kiểm thử hướng hình 16 1.2.3 Ưu kiểm thử hướng hình 17 1.2.4 So sánh kiểm thử hướng hình kiểm thử thông thường 17 1.2.5 Khả ứng dụng kiểm thử hướng hình phát triển ứng dụng cho điện thoại di động thông minh 18 1.2.6 Giới thiệu số công cụ miễn phí hỗ trợ kiểm thử hướng hình 20 1.3 Kết chương 21 Chương SỬ DỤNG CÔNG CỤ SPEC EXPLORER ĐỂ SINH CÁC CA KIỂM THỬ TỰ ĐỘNG 23 Đặt vấn đề 23 Cơ sở lý thuyết áp dụng spec explorer 23 2.2.1 Trạng thái (state) 23 2.2.2 Máy tạo hình tự động (model automata) 24 2.2.3 Chương trình hình (model program) 25 2.2.4 Duyệt trạng thái (State exploration) 26 2.3 Các bước xây dựng chương trình hình sinh ca kiểm thử tự động spec explorer 27 2.3.1 Tóm lược yêu cầu ứng dụng ví dụ mẫu 29 2.3.2 Các bước tạo chương trình hình 30 2.3.3 Cấu hình kiểm thử để sinh ca kiểm thử 34 2.4 Kết luận 38 2.1 2.2 Chương THỬ NGHIỆM ỨNG DỤNG THỰC TẾ 39 3.1 Đặt vấn đề 39 Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 3.1.1 Thông tin chung dự án 39 3.1.2 tả ứng dụng (đặc tả hệ thống) 39 3.1.3 Xây dựng Ca kiểm thử (viết cách thủ công) 41 3.2 Ứng dụng kỹ thuật sinh kiểm thử tự động hướng hình vào dự án 42 3.2.1 Phân tích ban đầu 42 3.2.2 Xây dựng chương trình hình cho Tutle Run 43 3.2.3 Đánh giá kết 52 3.3 Kết chương 53 3.3.1 Ưu điểm kiểm thử hướng hình với Spec Explorer 53 3.3.2 Nhược điểm kiểm thử hướng hình với Spec Explorer 53 KẾT LUẬN KIẾN NGHỊ 54 A Kết luận 54 Các kết đạt đề tài: 54 Những khó khăn hướng giải 55 B Kiến nghị 56 C Hướng phát triển đề tài 57 Tài liệu tham khảo 58 Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ LỜI CAM ĐOAN Tôi xin cam đoan: Luận văn "Kiểm thử hướng hình ứng ụng phát triển ứng dụng cho điện thoại di động thông minh" thân tự thực hướng dẫn PGS.TS Huỳnh Quyết Thắng - Viện Công nghệ thông tin Truyền thông - Đại học Bách khoa Hà Nội; thông tin số liệu kết Luận văn có nguồn gốc rõ ràng, nội dung Luận văn chưa công bố công trình nghiên cứu nước Hà Nội, tháng năm 2015 Tác giả Luận văn Ngô Hoàng Thành Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ Danh mục từ viết tắt thuật ngữ Từ viết tắt, thuật ngữ Từ viết đầy đủ AAL Adapter Action Language IUT MBT OTC Impementation Under Test Model Based Testing Intel Open Source Technology Center System Under Test SUT Ngô Hoàng Thành Ý nghĩa Ngôn ngữ hình hóa sử dụng fMBT Bộ phần thực thi cần kiểm thử Kiểm thử hướng hình Trung tâm công nghệ mã nguồn mở Intel Hệ thống cần kiểm thử Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ Danh mục bảng Bảng 1: Ca kiểm thử Turtle Run 42 Bảng 2: Ca kiểm thử dùng với HowTo Scene Turtle Run 48 Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ Danh mục hình vẽ Hình 1-1: Mối liên hệ sai sót, lỗi thất bại Hình 1-2: hình chữ V 13 Hình 1-3: Ba phương pháp tích hợp kiểm thử vào kỹ nghệ hệ thống 14 Hình 1-4: Cách thức vận hành kiểm thử hướng hình 16 Hình 2-1: Quy trình sử dụng spec explorer 28 Hình 2-2: Normal Trace Sample 32 Hình 2-3: LoadAndSave Trace Sample 32 Hình 2-4: ShowOldMap Trace Sample 33 Hình 2-5: Hỉnh ảnh model program 35 Hình 2-6: Hình ảnh ví dụ ca kiểm thử 36 Hình 2-7: Hình ảnh minh họa state ca kiểm thử (S32) 37 Hình 2-8: Hình ảnh minh họa state ca kiểm thử (S65) 38 Hình 3-1: Scene Flow Turtle Run 40 Hình 3-2: hình SceneFlow Turtle Run 44 Hình 3-3: Ca kiểm thử SceneFlow Turtle Rune 44 Hình 3-4: hình ca kiểm thử TopScene Turtle Run 45 Hình 3-5: hình ca kiểm thử rankingScene Turtle Run 46 Hình 3-6: hình ca kiểm thử HowTo Scene Turtle Run 47 Hình 3-7: hình ca kiểm thử GameOver Scene Turtle Run 48 Hình 3-8: hình vào ca kiểm thử GameScene - Story Turtle Run 50 Hình 3-9: hình ca kiểm thử GameScene - gameplay Turtle Run 51 Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ MỞ ĐẦU Lý chọn đề tài Kiểm thử phần mềm khâu quan trọng việc phát triển phần mềm Tuy nhiên thực tế Việt Nam công ty trọng mức vào công đoạn kiểm thử (do tiết kiệm chi phí, trình độ nhân công lý khác) điều then chốt ảnh hưởng tới chất lượng sản phẩm đầu Khi làm việc công ty phát triển phần mềm Việt Nam, nhận thấy chất lượng sản phẩm mức mà có từ thường sử dụng “chấp nhận được”, sản phẩm công ty nói riêng có lẽ ngành gia công phần mềm Việt Nam nói chung chưa có tiếng nói, chưa thể sánh ngang với nước khác giới Ngoài ra, chất lượng việc kiểm thử vấn đề nan giải Do chọn đề tài hướng hứa hẹn giải vấn đề chất lượng phần mềm nói chung chất lượng ứng dụng điện thoại thông minh (lĩnh vực mà phát triển) cải thiện đảm bảo chi phí sản xuất khoảng cạnh tranh Tính cấp thiết đề tài Như nói trên, Việt Nam chất lượng việc kiểm thử lĩnh vực phát triển phần mềm nói chung phát triển ứng dụng cho điện thoại thông minh nói riêng vấn đề nan giải Qua trình tìm hiểu tác giả, vấn đề kiểm thử phần mềm cho ứng dụng điện thoại di động thông minh có nguyên nhân sau:  Quy trình kiểm thử mang nhiều tính chất chủ quan lệ thuộc vào kiểm thử viên Tại công ty phần mềm vừa nhỏ, việc kiểm thử chưa có quy chuẩn rõ ràng dẫn đến việc xây dựng ca kiểm thử việc tiến hành kiểm thử phụ thuộc nhiều vào cách nhìn nhận vấn đề kiểm thử viên  Do tiết kiệm chi phí nên bỏ qua nhiều công đoạn kiểm thử Các công ty phần mềm Việt Nam phần lớn dựa lĩnh vực “outsource” (làm cho khách hàng) nước Để tăng lợi nhuận, giảm giá thành (tăng tính cạnh tranh), chi phí cho việc kiểm thử thường bị cắt giảm xem nhẹ với dự án nhỏ, chi phí thấp Rất nhiều dự án phát triển ứng dụng cho điện thoại di động thông minh rơi vào trường hợp  Kỹ thuật kiểm thử nhiều hạn chế Các kỹ thuật kiểm thử chủ yếu kiểm thử thủ công phụ thuộc vào trình độ kiểm thử viên, kiểm thử viên thường không đào tạo bàn dẫn đến việc kiểm thử hạn chế mặt kỹ thuật Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ Từ đòi hỏi cần phải có phương pháp, kỹ thuật với công cụ để hỗ trợ quy trình kiểm thử, giúp cho khâu cải thiện chất lượng mà đảm bảo hợp lý mặt chi phí Kiểm thử tự độngkiểm thử hướng hình hướng tiếp cận hứa hẹn đáp ứng điều kiện đề Nhiệm vụ luận văn Với mục đích ứng dụng kỹ thuật kiểm thử hướng hình vào phát triển ứng dụng cho điện thoại di động thông minh (smart phone), luận văn tập trung nghiên cứu nội dung sau :    minh  Tìm hiểu kỹ thuật kiểm thử tập trung vào kiểm thử hướng hình Tìm hiểu công cụ, lựa chọn công cụ thích hợp Áp dụng công cụ vào trình phát triển ứng dụng cho điện thoại di động thông Đánh giá hiệu đưa hướng phát triển Bố cục luận văn Chương 1: Giới thiệu tổng quan kiểm thử phần mềm kiểm thử hướng hình Chương trình bày khái niệm kiểm thử, tiếp trình bày khái niệm đặc điểm chung kiểm thử hướng hình Chương 2: Phương pháp sử dụng công cụ kiểm thử hướng hình Chương tập trung vào việc tả quy trình, cách thức thực kiểm thử hướng hình cách sử dụng công cụ Spec Explorer Chương 3: Thực nghiệm đánh giá kết Chương cuối trình bày nội dung dự án thực tế phát triển ứng dụng smart phone (phát triển game Turtle Run), đưa kết chưa áp dụng kiểm thử hướng hình sau áp dụng kỹ thuật Từ đánh giá ưu, nhược điểm kỹ thuật việc phát triển ứng dụng điện thoại di động thông minh Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ Chương TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM KIỂM THỬ HƯỚNG HÌNH 1.1 Tổng quan kiểm thử 1.1.1 Các khái niệm liên quan kiểm thử Ta tìm hiểu vài thuật ngữ kiểm thử Trong đề tài ta sử dụng thuật ngữ IUT (Implementation Under Test) SUT (System Under Test) mang ý nghĩa phần thực thi hệ thống cần kiểm thử Ta hiểu đơn giản đối tượng ta muốn kiểm thử 1.1.1.1 Sai sót, Lỗi, Hỏng hóc Đây ba thuật ngữ việc kiểm thử mà ta cần phải làm rõ Định nghĩa – Sai sót(Fault): Là sai sót “tĩnh” hệ thống [9] Định nghĩa – Lỗi (Error): Là trạng thái nội hệ thống xảy sai sót hệ thống vận hành [9] Định nghĩa – Thất bại (Failure): Là sai khác thấy thực tế hệ thống so với dự kiến [9] Sơ đồ sau thể mối quan hệ sai sót, lỗi thất bại Đối chiếu Kích hoạt Sai sót Lỗi Thất bại Hình 1-1: Mối liên hệ sai sót, lỗi thất bại Sơ đồ biểu thị trình phát sinh thất bại hệ thống sai sót, sai sót trình hệ thống thực thi tạo lỗi làm cho kết hệ thống không mong muốn tạo thất bại Vậy đâu nguồn gốc sai sót? Ta quy nguyên nhân sai sót ba nguyên nhân sau: Thứ nhất, cần phải kể đến sai lầm, thiếu sót yêu cầu hệ thống Trong trường hợp này, kỹ sư hệ thống thiếu số trường hợp sử dụng hệ thống thiếu định nghĩa hành động mà ta mong muốn hệ thống thực Những sai sót thuộc loại phát việc phân tích yêu cầu hệ thống Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 10 Thứ hai, sai sót liên quan đến chức hệ thống, ví dụ việc sai khác đặc tả kiểm thử với kết thực thi hệ thống kiểm thử Sai sót thường xảy thiếu sót trình phát triển, cài đặt phần mềm phần cứng Sai sót loại phát kiểm thử chức Thứ ba, sai sót phi chức Những sai sót gắn liền với đặc tả phi chức hệ thống hiệu năng, tính bảo mật, tính mở rộng, tính tương thích… hệ thống Để phát sai sót loại ta cần có phương pháp tương ứng với đặc điểm phi chức cụ thể Ngoài ta phát sai sót loại trình thực thi hệ thống để kiểm thử Trên ba khái niệm kiểm thử, sau ta đưa khái niệm kiểm thử 1.1.1.2 Kiểm thử (testing) gì? Trong phần ta làm rõ khái niệm liên quan, từ đưa khái niệm đâu kiểm thử đâu kiểm thử Kiểm thử (testing) thực tế vừa thẩm định (Validation) vừa kiểm chứng (Verification) [9] Trước hết ta cần hiểu thẩm định kiểm chứng Định nghĩa – Thẩm định (validation): Thẩm định trình đánh giá hệ thống để đảm bảo phù hợp với đặc tả mục đích sử dụng [9] Định nghĩa – Kiểm chứng (verification): Kiểm chứng trình xác minh kết giai đoạn phát triển hệ thống có thực đầy đủ yêu cầu đưa giai đoạn trước hay không [9] Ta hiểu cách đơn giản kiểm chứng phát lỗi lập trình, tức tìm sai khác hệ thống ta tạo với yêu cầu đề Còn thẩm định phát hệ thống có đáp ứng nhu cầu thực tế hay không, ta phát lỗi thiết kế mức cao kiểm chứng Định nghĩa – Kiểm thử (Testing): Kiểm thử trình đánh giá cách có hệ thống (systematically) hệ thống việc quan sát hoạt động [9] Định nghĩa – Gỡ lỗi (Debugging): Gỡ lỗi trình tìm sai sót dẫn đến thất bại hệ thống [9] Định nghĩa cho ta thấy rõ kiểm thử vừa thẩm định, vừa kiểm chứng Thông thường kiểm thử viên tạo ca kiểm thử từ đặc tả yêu cầu hệ thống cách thủ công, việc kiểm thử kỹ thuật thẩm định hệ thống Đối với kiểm thử hướng hình, ca kiểm thử thường sinh tự động từ tả hệ thống kiểm thử việc ta xác minh lại kết thực thi hệ thống ca kiểm thử này, lúc kiểm thử kỹ thuật kiểm chứng Ở ta cần phân biệt kiểm thử gỡ lỗi Có thể hiểu kiểm thử trình tìm thất bại gỡ lỗi trình xác định sai sót tạo thất bại Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 44 (Lưu ý action có ta chưa bàn đến điều kiện để thực chúng (các Rule)) hình: Hình 3-2: hình SceneFlow Turtle Run Ca kiểm thử: Hình 3-3: Ca kiểm thử SceneFlow Turtle Rune Chương trình hình ca kiểm thử cho ta nhìn tổng quát hệ thống ta kiểm tra lại luồng chung hệ thống Điều ca kiểm thử thủ công tạo sử dụng trình phát triển hệ thống thực tế 3.2.2.2 Xây dựng chương trình hình hình Tiếp theo ta xây dựng chương trình hình hình cụ thể với chức cần thiết chúng Với hình: Top Scene, Ranking Scene, HowTo Scene, GaveOver Scene thao tác hình đơn giản Do ta không sâu phân tích hình mà đưa kết thực tế xây dựng Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 45 3.2.2.2.1 Top Scene Hình 3-4: hình ca kiểm thử TopScene Turtle Run Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 46 3.2.2.2.2 Ranking Scene Hình 3-5: hình ca kiểm thử rankingScene Turtle Run Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 47 3.2.2.2.3 HowTo Scene Hình 3-6: hình ca kiểm thử HowTo Scene Turtle Run Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 48 Với hình Howto ta nhận thấy ca kiểm thử xây dựng model program sinh chi tiết nhiều so với ca kiểm thử sử dụng phát triển ứng dụng Ca kiểm thử sử dụng sau: No Main point Sub Point How to Thao tác Sub-sub Point Type Confirmation State click bt Prev trở trang How to liền trước, How to trang Top OK click bt Next tiến tới trang How to liền sau, hết vòng How to OK Note Bảng 2: Ca kiểm thử dùng với HowTo Scene Turtle Run Về mặt chất, sai sót thường thấy tạo ca kiểm thử Người tạo ca kiểm thử cách thủ công thường không nhìn thấy rõ ràng thao tác hệ thống, khởi tạo ca kiểm thử tả nội dung cách chung chung, thiếu tính chi tiết Điều hoàn toàn khắc phục sử dụng chương trình hình 3.2.2.2.4 GameOver Scene Hình 3-7: hình ca kiểm thử GameOver Scene Turtle Run Tới ta đưa đánh giá chung ca kiểm thử chương trình hình sinh đầy đủ hơn, xác so với ca kiểm thử viết cách thủ công sử dụng trình thực dự án Đối với hình gameScene tính phức tạp ta bàn tới việc xây dựng chương trình hình cho hình phần sau Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 49 3.2.2.3 Xây dựng model program cho hình gameScene Màn hình bao gồm phần story dùng để hiển thị cốt truyện ứng dụng phần gameplay phần để người dùng sử dụng (chơi game) Qua phân tích sơ ta nhận thấy lựa chọn không kỹ lượng action gọi hình lớn Trước hết ta cần tách riêng hai chức biệt lập hình để tả riêng, phần story phần gameplay Để kết nối luồng hai phần ta sử dụng lớp chung chứa liệu toàn hình (class gameSceneData) Tiếp ta xây dựng hai chương trình hình hai hành động kết nối với (thông qua gameSceneData): story action storyEnd() với gameplay action gameStart() Khi tách hai thành phần (được biểu diễn hai chương trình hình khác nhau) thành phần story biểu diễn tương tự scene Ta thu hình ảnh hình ca kiểm thử thành phần sau 3.2.2.3.1 gameScene – Story Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 50 Hình 3-8: hình vào ca kiểm thử GameScene - Story Turtle Run 3.2.2.3.2 gameScene – gameplay Đây thành phần phức tạp ứng dụng, đòi hỏi phải tính toán kỹ xây dựng chương trình hình Trước hết ta nhận thấy mục đích ứng dụng đặt cho người dùng điều khiển Rùa quãng đường xa tốt Điều kéo theo đặc điểm: mặt lý thuyết phần gameplay kéo dài mãi (miễn người chơi trì thể lực Rùa con) Như cố tình tả trình ta đáp ứng yêu cầu “hữu hạn” hình action Do ta cần trừu tượng hóa trạng thái action đồng thời đưa số giới hạn cho để tả phần gameplay cách hữu hạn Ta nhận thấy người dùng tác động “Rùa con” không lấy vật phẩm bổ sung thể lực sau khoảng thời gian định gameplay trở trạng thái gameOver Vì thực chất để tả hành vi phần gameplay ta cần ba action:  Rùa lấy vật phẩm đường  Rùa va phải vật cản đường  Game Over Tuy nhiên chưa đủ để hữu hạn hóa số lượng hành động xảy Giả dụ Rùa liên tục lấy vật phẩm phục hồi thể lực đường lượng action gọi vô hạn Ngoài ra, lượng action tăng lên kéo theo phức tạp hình ca kiểm thử Ở đây, ta dùng biến passedStep để giới hạn lượng action thực Khi đạt tới giới hạn lượng action ta Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 51 chấp nhận gameplay “trạng thái” playing ta xem xét, so sánh thông số trạng thái Khi xác định action giới hạn số lượng action tối đa ta mong muốn kiểm thử ta đưa hình ca kiểm thử cho thành phần gameplay Hình 3-9: hình ca kiểm thử GameScene - gameplay Turtle Run (Hình ảnh thể phần hình ca kiểm thử sinh ra) Với giới hạn ca kiểm thử ta đa có tới 2706 states, từ ta thấy khả sinh ca kiểm thử kiểm thử hướng hình mạnh tới mức Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 52 Thế vấn đề lại với lượng ca kiểm thử lớn với sức người khó đảm đương việc kiểm thử Trong trường hợp ta cần tới 3.2.3 Đánh giá kết 3.2.3.1 Sản phẩm thu Sử dụng kiểm thử hướng hình thông qua công cụ spec explorer ta thu hai sản phầm chính:  hình hệ thống (cũng phần tài liệu phục vụ cho phát triển tiếp sau này)  Ca kiểm thử Tuy hình ca kiểm thử sinh spec explorer chưa có yêu cầu phi chức hệ thống thể cách trực quan đầy đủ chức cần có hệ thống, chí có nhiều trường hợp đầy đủ hẳn với ca kiểm thử viết cách thủ công Điều có việc sử dụng công cụ cách tự động làm giảm thiểu sai sót người gây ra, đồng thời việc viết ca kiểm thử phụ thuộc nhiều vào trình độ hiểu biết người viết nên thực tế người cho ta ca kiểm thử khác nhau, khó thống chung nội dung 3.2.3.2 Chi phí sản xuất Như đưa trên, chi phí thực tế dự án: o System design: md o Testing: 15 md Trong cụ thể sau: thiết kế chung hệ thống 1.5 md, viết ca kiểm thử md (chức md, phi chức 2md) Như tổng cộng trình tương đương với ta sử dụng công cụ có mức chi phí: 4.5md Trong thực tế xây dựng hình sinh ca kiểm thử (tự động) 1.5 md Nếu nhìn vào số 1.5, 4.5 đơn vị md ta cho việc sử dụng công cụ không tiết kiệm nhiều chi phí Tuy nhiên suy xét kỹ lại hoàn toàn khác biệt Thứ nhất: ta cần nhận chi phí cho việc sử dụng công cụ ta bớt chi phí cho việc xây dựng ca kiểm thử, với hệ thống lớn chi phí đáng kể khả xảy sai sót lớn Thứ hai: việc xây dựng thiết kế chung hệ thống điều bỏ qua phát triển ứng dụng Tuy nhiên thực tế Việt Nam, Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 53 form mẫu tả hệ thống nhiều điều chưa thống nhất, khó hiểu khó sử dụng Khi sử dụng công cụ ta có chuẩn chung tả hệ thống, từ dễ dàng phát triển tiếp ứng dụng sau Ngoài có điều ta cần nhận thấy việc sử dụng nguồn lực linh hoạt nhiều Nếu trước ta cần người thiết kế kiểm thử viên để xây dựng hình hệ thống ca kiểm thử sử dụng công cụ ta cần người thiết kế Điều thật giải phóng không thân nhân kiểm thử mà phía quản lý phân phối nhân Mặt khác với việc sử dụng nhân thiết kế ta tăng cao khả hệ thống kiểm thử (với ca kiểm thử sát với hình) xác so với đặc tả yêu cầu 3.3 Kết chương Việc áp dụng kiểm thử hướng hình thông qua spec explorer vào thực tế cho thấy có ưu điểm khuyết điểm đinh 3.3.1 Ưu điểm kiểm thử hướng hình với Spec Explorer  hình xây dựng ngôn ngữ lập trình (C#) nên dễ tiếp cận lập trình viên, với người làm hệ thống  Tiết kiệm chi phí tạo ca kiểm thử (và chi phí kiểm thử hệ thống)  Có thể kiểm tra lại sớm thiết kế phát lỗi sớm  Giảm khả sai sót khâu thiết kế tạo ca kiểm thử người tạo  Linh động trình sử dụng nguồn lực người 3.3.2 Nhược điểm kiểm thử hướng hình với Spec Explorer  Người xây dựng hình cần phải người hiểu rõ hệ thống cần đào tạo sử dụng công cụ kiểm thử hướng hình  Còn hạn chế trường hợp logic mở trường hợp vô hạn  Với ứng dụng cho kiểm thử di động hạn chế việc kiểm thử tự động code thực thi Tóm lại việc kiểm nghiệm thực tế sử dụng spec explorer cho ta thấy tính khả quan áp dụng kiểm thử hướng hình vào việc phát triển ứng dụng nói chung ứng dụng cho di động nói riêng Với ưu điểm bước đầu mang lại, việc áp dụng kiểm thử hướng hình chắn lựa chọn tốt để cải thiện chất lượng, giảm chi phí cho trình phát triển ứng dụng Việt Nam Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 54 KẾT LUẬN KIẾN NGHỊ A Kết luận Luận văn thạc sĩ tác giả với đề tài: “Kiểm thử hướng hình ứng ụng phát triển ứng dụng cho điện thoại di động thông minh” hoàn thành Đề tài giải vấn đề sau: Tìm hiểu khái niệm, yếu tố kiểm thử phần mềm nói chung kiểm thử hướng hình nói riêng Đưa nhìn tổng quát ngôn ngữ hình hoá đồng thời tìm hiểu công cụ miễn phí hỗ trợ cho việc xây dựng hình ứng dụng Phác thảo quy trình xây dựng hình ứng dụng cho điện thoại di động thông minh cách sử dụng công cụ spec explorer Tiến hành thử nghiệm xây dựng hình sinh ca kiểm thử với dự án phát triển game điện thoại di động thông minh, đưa đánh giá chủ quan dựa kết thử nghiệm Các kết đạt đề tài: Đề tài tổng hợp khái niệm đưa hình ảnh tổng quan kiểm thử hướng hình Trên sở phân tích ưu nhược điểm khả áp dụng kiểm thử hướng hình vào thực tế phát triển ứng dụng cho điện thoại di động thông minh Tác giả đưa bước cụ thể để xây dựng hình cho ứng dụng điện thoại di động thông minh dựa đầu vào yêu cầu ứng dụng, đồng thời xây dựng thực tế hình dựa bước đưa Kết thực nghiệm cho thấy tính hiệu phương pháp kiểm thử hướng hình trình phát triển ứng dụng cho điện thoại di động thông minh Quá trình áp dụng kiểm thử hướng hình mà tác giả làm sau: Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 55 o Đầu tiên, từ yêu cầu ứng dụng tác giả xây dựng nên “hình ảnh” ứng dụng Các “hình ảnh” sơ đồ dịch chuyển hình (scene flow), sơ đồ luồng xử lý, v.v Chúng giúp cho ta có nhìn trực quan ứng dụng, đồng thời giúp ích cho việc xây dựng hình ứng dụng o Tiếp theo đó, dựa vào yêu cầu “hình ảnh” tác giả xây dựng chương trình hình tương ứng cho ứng dụng Chương trình hình viết C# cấu hình dựa Cord Scripting Language o Sau viết (code) xong chương trình hình tác giả dựa vào công cụ spec explorer để xem lại hình cách trực quan, sinh tự động ca kiểm thử, đối chiếu ca kiểm thử sinh cách tự động với ca kiểm thử kiểm thử viên xây dựng thủ công dựa vào yêu cầu ban đầu ứng dụng Thêm vào tác giả đối chiếu lại chi phí (dựa nhân công) toàn trình áp dụng so với việc thực phát triển dự án thông thường, phân tích dựa quy dự án đưa đánh giá, nhận định việc áp dụng kiểm thử hướng hình vào phát triển ứng dụng cho điện thoại di động thông minh Những khó khăn hướng giải Những khó khăn gặp phải trình thực đề tài:  Các công cụ hỗ trợ kiểm thử hướng hình áp dụng cho phát triển ứng dụng cho điện thoại di động thông minh thường không hỗ trợ đầy đủ  Nền tảng điện thoại di động thông minh đa dạng, có đặc thù riêng thay đổi thường xuyên (version hệ điều hành, hệ máy, cấu hình phần cứng.v.v.) nên việc xây dựng nên quy chuẩn chung gặp nhiều khó khăn Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 56  Kiểm thử hướng hình dành áp dụng cho phát triển ứng dụng di động thông minh lĩnh vực mới, có tài liệu thực nghiệm khiến việc tìm hiểu gặp nhiều khó khăn Hướng giải quyết:  Thử nghiệm công cụ tìm được, tìm hướng áp dụng công cụ kiểm thử hướng hình cho ứng dụng thông thường (ứng dụng PC – personal computer) cho việc phát triển ứng dụng điện thoại di động thông minh  Tìm hướng áp dụng kiểm thử hướng hình công cụ phát triển crossplatform cho điện thoại di động thông minh Unity, Xamarin, Cocos2dx,.v.v  Tìm kiếm tự thử nghiệm tài liệu liên quan lĩnh vực kiểm thử cho ứng dụng điện thoại di động thông minh nói chung kiểm thử hướng hình ứng dụng thông thường Các kết nghiên cứu lý luận thực tiễn cho thấy việc áp dụng kiểm thử hướng hình phát triển ứng dụng cho điện thoại di động thông minh bước đầu đạt tín hiệu tích cực Hiệu ca kiểm thử chi phí dành cho việc tạo ca kiểm thử cải thiện Ngoài ra, việc áp dụng vào công cụ cross-platfrom mở hướng cho việc áp dụng triệt để kiểm thử hướng hình cho phát triển ứng dụng điện thoại di động thông minh B Kiến nghị Trong trình nghiên cứu hoàn thành luận văn, tác giả thấy để áp dụng kiểm thử hướng hình trình phát triển ứng dụng cho điện thoại di động thông minh đạt hiệu ta cần trọng đến số vấn đề sau: - hình cho ứng dụng cần đơn giản nhiều Trong trường hợp ứng dụng phức tạp ta cần chia nhiều hình cho chức hình khác - Luôn lưu ý tới tính “hữu hạn” hình Để làm điều cần trừu tượng hoá “hữu hạn hoá” - Cần đào tạo nhân viên để nhân viên làm quen với ngôn ngữ hình xây dựng hình theo đặc tả Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 57 C Hướng phát triển đề tài Do điều kiện cá nhân hạn chế, nên vấn đề nghiên cứu “Kiểm thử hướng hình ứng dụng phát triển ứng dụng cho điện thoại di động thông minh” khuôn khổ luận văn dừng lại việc xây dựng hình chương trình hình (code) sinh ca kiểm thử cách tự động Vì vậy, nghiên cứu vấn đề tập trung theo hai hướng sau: Hướng thứ nhất: Phát triển rộng theo hướng hỗ trợ nhiều ngôn ngữ xây dựng hình (ví dụ UML), hỗ trợ cách trực quan việc xây dựng hình (kéo thả, giao diện đồ hòa.v.v) Trên thực tế hướng phát triển có công cụ sử dụng (LTSA UML 2.0) nhiên nhiều hạn chế khó sử dụng Hướng thứ hai: Phát triển theo chiều sâu, hướng việc kiểm thử tự động IUT (dưới dạng code) cho ứng dụng điện thoại thông minh Trước mắt ta áp dụng mức độ kiểm thử chức nhỏ lẻ với đoạn mã viết C# engine Unity3D, nhiên việc tích hợp đảm bảo tính đắn kết kiểm thử sản phầm thực tế nhiều vấn đề cần phải xem xét Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B Luận văn thạc sỹ 58 Tài liệu tham khảo AIDA NIKNEJAD A Quality Evaluation of an Android Smartphone Application 2011 Master thesis James H Andrews, Lionel C Briand, Yvan Labiche Is mutation an appropriate tool for testing experiments? New York : ACM New York, 2005 Kent Bect Test Driven Development: By Example 1st Edition s.l : Addison Wesley Professional, 2002 Wang Linzhang, Yuan Jiesong, Yu Xiaofeng, Hu Jun, Li Xuandong and Zheng Guoliang Generating Test Cases from UML Activity Diagram based on Gray-Box Method 2004 Technical Report Mark Utting and Bruno Legeard Practical Model-Based Testing : A Tools Approach San Francisco : Morgan Kaufmann Publishers Inc., 2006 spec explorer tutorial [Online] http://rasmus.selsmark.dk/post/2013/09/16/SpecExplorer-Tutorial-for-Visual-Studio-2012.aspx Margus Veanes, Colin Campbell, Wolfgang Grieskamp, Wolfram Schulte, Nikolai Tillmann, Lev Nachmanson Model-Based Testing of Object-Oriented Reactive Systems with Spec Explorer s.l : Microsoft Research, 2007 Nico Kicillof MSDN Blog What is Model-Based Testing? [Online] Oct 27, 2009 http://blogs.msdn.com/b/specexplorer/archive/2009/10/27/what-is-model-basedtesting.aspx Patrick Cousot, Radhia Cousot Basic Concepts of Abstract Interpretation s.l : Kluwer Academic Publishers, 2004, pp 359-366 10 msdn [Online] Microsoft https://msdn.microsoft.com/enus/library/ee620489.aspx 11 Stephan Weißleder Test Models and Coverage Criteria for Automatic ModelBased Test Generation with UML State Machines Berlin : s.n., 2010 12 Intel Open Source [Online] OTC https://01.org/fmbt 13 TorX Test Tool Information TorX Test Tool website [Online] University of Twente http://fmt.cs.utwente.nl/tools/torx/introduction.html Ngô Hoàng Thành Lớp 12BCNTT2 – Khóa 2012B ... phần ứng dụng điện thoại di động thông minh ứng dụng phát triển thời gian ngắn, chi phí thấp Các hạn chế: Tuy nhiên, kiểm thử hướng mô hình áp dụng vào phát triển ứng dụng điện thoại di động thông. .. tả kiểm thử đựa mô hình kiểm thử Mô hình kiểm thử bắt nguồn từ yêu cầu hệ thống Chỉ có số phương pháp sử dụng kiểm thử hướng mô hình cho việc kiểm thử phi chức Trong kiểm thử hướng mô hình, kiểm. .. áp dụng kiểm thử hướng mô hình phát triển ứng dụng cho điện thoại di động thông minh Mức độ phù hợp: Như trình bày (mục 1.2.1), kiểm thử hướng mô hình phương pháp kiểm thử gọn nhẹ để kiểm thử

Ngày đăng: 26/07/2017, 21:00

Từ khóa liên quan

Mục lục

  • muc luc

  • loi cam doan

  • danh muc tu viet tat va thuat ngu

  • danh muc bang

  • danh muc hinh ve

  • mo dau

  • chuong 1

  • chuong 2

  • chuong 3

  • ket luan va kien nghi

  • tai lieu tham khao

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

Tài liệu liên quan