Đối với kiểm thử hướng mê hình, ca kiểm thử thường được sinh tự động từ mé tả của hệ thông thi khi đó kiếm thứ lả việc ta xác rminh lại kết quá thực thủ của hệ thống, đối với các ca kiểm
Trang 11.1.1 Các khái niệm liên quan trong kiếm th
1.12 Quy trinh kiém thử (TestProcess)
1⁄2 _ Tổng quan về kiểm thử hướng mô hình
1.2.1 Khải niệm về kiếm thử hướng mô hình
1.2.2 Cách Hưức làm việc của kiểm thử hướng mồ hình
1.2.3 Uu thé của kiểm thứ hướng mÖ hình
1.2.4 So sánh kiêm thử hướng mô hình và kiêm thử thông thườn,
1.2.5 Khả năng ứng dụng kiệm thứ hướng mô hình trong phát triển ứng dụng
cho điện thoại Ái động thông mini
1.2.6 Giới thiệu một số công cụ miễn phí hỗ trợ ko
2.2 Cơ sở lý thuyết án dung treng spec explorer
2.24 Trang thai (state)
2.22 Ady tao ma hink tw động (model automata
2.2.3 Chương trình mô hình (model progran)
2.24 Dipét trang “hái (State exploration)
Trang 2
Xây dựng các Ca kiểm thử (viết ra bằng cách thủ công)
g dụng kỹ thuật sinh kiểm thử tự động hướng mô hình 3.2.1 Phân tích han đầu
3.2.2 Xây dựng chương trình mô hình cho
Œ t quả chỉnh đại được trong đề tai:
Những khó khăn và hướng giải qu
Trang 3Luận vẫn thạc sỹ 3
LOI CAM DOAN
Tôi xin cam đoạn: Luận văn "Kiểm thứ hướng mô hình va img ung trong phat triển ứng dụng cho điện thoại di đông thông mình" là do bản thân tôi tự thực hiện đưới
sự hướng dẫn của PGS.TS Huỳnh Quyết Thắng - Viện Công nghệ thông tin và Truyền
thông - Đại học Bách khoa Hà Nội,
Tác giả luận văn
Neé Hoang Thanh
Trang 4
Luận vẫn thạc sỹ
MỞ ĐẦU
1 Lý do chọn đề tài
Kiểm thử phản mềm luôn là mội khâu vất quan trong tong việc phát triển phan
xuêm Tuy nhiên trong thực tế tại Việt Nam rất it công ty chủ trọng đúng mức vào công,
doan kiểm thử này (đo tiết kiệm chi phi, đo trình độ nhân công hoặc lý do khác) trong, khí đầy là điều then chốt ảnh hưởng lói chất lượng săn phẩm đâu ra
Khi làm việc tại một công ty phát triển phần mềm ở Việt Nam, tôi nhận thấy chất lượng của các sân phẩm luôn ở một tức mà có ruột tít thường dược sử dụng là
“chap nan được”, do đó sản phẩm công ty nẻi riêng và có lẽ là cả ngành gia cổng phin mém Việt Nam nôi chung dều chưa cỏ tiếng nỏi, chưa thẻ sánh ngang với các
wurde khác trên thể giới Ngoài ra, chất lượng của việc kiểm thử cũng là một vẫn dé nan
giải
Do dé tdi chon để tài này như một hưởng di hứa hẹn giải quyết các van dé vé chất lượng phản mềm nói chung và chất lượng ứng đụng trên điện thoại thông minh (lĩnh vực mà tôi đang phát triển) được cải thiện trong khi vẫn dam bảo chỉ phí sẵn xuất
trong khoảng cạnh tranh
2 Tính cẤp thiết của để tải
Thư dã nói ở trên, tại Việt Nam chất lượng trong việc kiểm thữ trong lĩnh vực
phát triển phan nói chung và phát triên ứng đụng cho điện thoại thông minh nói
riêng đang là một vân đề nan giới Qua quá trình từra hiểu của tác giá, vấn đề kiếm thứ phần mềm cho ứng dụng trên điện thoại đi dộng thông mình có những nguyên nhân
chính sau:
®- Quy Hình kiểm thử mang rhiểu tỉnh chất chủ quan và lộ thuộc vào từng kiểm thử viên Tại cáo công ty phản mẻm vừa vả nhỏ, việc kiếm thủ chưa cỏ quy chuẩn rõ ring dẫn dến việc xây dựng các ca kiểm thử cũng nhụ việc liển hành kiểm thử phụ
thuộc rất nhiều vào cách nhìn nhận vân đề của kiếm thử viên
« Do tiết kiêm chỉ phi nên bỏ qua nhiêu công đoạn kiếm thử Các công ty phan mềm ở Việt Nam phần lớn đều dựa trên lĩnh vực “outsource” (lâm cho khách hang)
trước ngoài Để tăng lợi nhuận, giảm gió thành (tăng tính cạnh tranh), chỉ phí cho việc
âm thử thường bị cắt giảm và xem nhẹ nhật lä với các dự án nhỏ, chỉ phí thấp Rất nhiều dự án phát triển ứng dụng cho diện thoại di động thông minh rơi vào trường hợp
nay
« Kỹ thuật kiểm thử cẻn nhiều hạn chế Các kỹ thuật kiêm thủ chủ yêu là k
thứ thủ công vá phụ thuộc vào trình dộ của kiểm thử viên, trong, khi các kiểm thử viên thường không được đào tạo bài bàn dẫn đến việc kiểm thử còn hạn chế về mặt kỹ thuật
Trang 5
Luận vẫn thạc
Chương 1 TỎNG QUAX VẺ KIỀM THU PHAN MEM VA
KIEM THU HUONG MO HINH 1.41 Tổng quan về kiểm thử
1.1.1 Các khải niệm Hiên quan trong kiểm thử
Ta sé di tim hiểu một vải thuật ngĩữ cơ bản trong kiếm thủ Trong dé tai nay ta sé
sử dụng thuật ngữ LUI' (Implementation Under Test) hoặc SUT (System L/nder '[øst)
đêu mong ý nghữa là phần thực thi hoặc hệ thông đăng cần được kiểm thử Ta có thê hiểu đơn giản day là đổi tượng ta đang muốn kiểm thử nó
11.11 Sai sói, Lỗi, Hồng hóc
Tây là ba thuật ngit co ban của việc kiếm thử mã ta cân phải làm rõ
Dinah nghĩa 1 — Sai sải(F nu: Là một sai sét “tĩnh” trong hệ thông [9]
“Định nghĩa 2 ~ LÃi (Error): Là một trạng thái nội bộ của hệ thông xây ra sai sốt
khi hệ thông đang được vận hành |9|
Định nghĩa 3 — Thất bại (Fatlure): Là sự sai khác cô thễ thẫy được trong thực
tế của hệ thông so với đự kiến [9]
Sơ đỗ sau thê hiện môi quan hệ giữa sai sót, lỗi và thất bai
Tình 1-1: Mắi liên hệ giữa sai sói, lỗi và thất bại
Su dé trên biểu (lu quá trình phát sinh thất bại của hệ thống bắt dầu từ những sai sót, những sai sót này trong quá trình hệ thống được thực thi sẽ tạo ra lỗi làm cho kết quế của hệ thông không đúng như chúng ta mong muốn vả tạo ra thất bại
Vậy đầu là nguồn gốc của những sai sớt? “Ta có thể quy nguyên nhân của những,
sai sót về ba nguyên nhân chính sau:
Thử nhất, cẩn phải kể đến là những sai lằm, thiểu sót trong yêu cầu của hệ
thông, "Trong trường hợp nàt sự hệ thông dã thiếu mất một sỏ trường hợp sử dụng,
của hệ thống hoặc thiểu định nghầa những hành động mã la cưng muốn hệ thông thực hiện Những sai sót thuộc loại này có thế được phát hiện bằng việo phân tích yêu cầu
Trang 6Tình 1-1: Mỗi liên hệ giữa sai sói, lỗi và thất bại - 9
Ba phương pháp cơ bản tích hợp kiểm thử vào kỹ nghệ hệ thống 14 : Cách thức vận hành của kiểm thử hướng mô hình - 16
: Quy trình sử dụng spec expÌOrer
: Nommal Traee Sample
Hinh 2-3: LoadAndSave ‘race Sample
Hinh 2-4: ShowOldMap Trace Sample
inh 2-5: Hinh anh vé model program,
Tình 2-6: Hình ảnh ví dụ về ca kiểm thứ - 36
Hình 2-7: Hinh ảnh minh hoa state trong ca kiếm thử (S32) 37 Hinh 2-8: Hinh anh minh hoa state trong ca kiém thir (S65) - - 38
Hình 3-1: Scene Flow của Turtle Rưa
Hình 3-2: Mô hình Sceneiflow của Lurtle Run
Hình 3-4: Mô hình và ca kiểm thử TopScene của Turtle Run
Trang 7
Luận vẫn thạc sỹ 10
‘Tint hai, 1a các sai sót liên quan đến chức năng của hệ thống, ví dụ như việc sai khác giữa đặc tả kiểm thử với kết quả của thực li của hệ thống trong khi kiểm thủ Sai sót này thường xảy ra đo thiểu sót trong quá trình phát triển, cải đặt của phản mềm hoặc do phần cứng Sai sót loại này có thể dược phát hiện bằng kiểm thử chức năng
Ol này gắn liễn với những đặc
Thứ ba, là các sai sói phi chức năng Những s
tả phi chức năng của hệ thống như hiệu năng, tỉnh bảo mật, tính mở rộng, tính tương thích của hệ thống, ĐỂ có thể phát hiện các sai sót loại này la cần có những phương pháp tương ứng với từng đặc điểm phi chức năng cụ thể Ngoài ra ta cũng có thế phát
“hiện các sai sót loại nảy trong quả trình thực thị hệ thông để kiểm thứ
Trong phần này La số lnn rõ các khôi niệm liên quan, từ đó đua ra khái miệm đâu
là kiểm thứ và đâu không phải là kiểm thứ
Kiém thit (testing) trong thực tả có thê vừa là thẩm định (falidation) vừa là kiểm chimg (Verification) |9} Trudc bél ta edu hidu thậm định và kiểm chứng là gì
Dinh nghĩa 4 — Thẫm định (validation): Thắm định là quá trình đánh giá một
tệ thống đã đảm báo rằng nó pluù hợp với đặc tả hoặc mục đích sử dụng [9]
Định nghĩa 5 — Kiém ching (verification): Kiém chứng là quả trình xác mảnh kết quả của một giai đoạn phái triển hệ thống có thực hiện đúng và đầy đã yêu câu được đưa ra ở giai đoạn trước đó hay không [9]
'ta có thể hiểu một cách đơn giản hơn là kiểm chứng sẽ phát hiện ra lỗi lập trình, tức là tìm ra sai khác giữa hệ thống ta lạo ra với những yêu cầu đã được để ra Còn
thâm định sẽ phát hiện ra hệ thông có đáp ứng đứng như cầu thực tế hay không, đo đó
‡a có thẻ phát hiện ra lỗi thiết kế ở nức cao hơn kiểm chứng
Định nghĩa 6 — Kiểm thữ (Tesing): Kiểm thử là quá trình đánh giá mật cách có
hé théng (systematically) mét hệ thông băng việc quan sát hoạt động của nó [S]
Định nghĩa 7 — Gỡ lỗi (Debugging): Gỡ lỗi là quá trình tim ra sai sót din dén thất bại của hệ thống |9]
Dinh nghia 6 cho ta thay 16 rang, kiểm thử vừa có thể là thấm định, vừa có thế la
kiểm chủng Lhông thường kiểm thử viên sẽ tạo ra các ca kiểm thứ từ đặc tá yêu cầu cửa hệ thống một cách thủ công, khi đó việc kiểm thử chính là kỹ thuật thẩm định hệ thông Đối với kiểm thử hướng mê hình, ca kiểm thử thường được sinh tự động từ mé
tả của hệ thông thi khi đó kiếm thứ lả việc ta xác rminh lại kết quá thực thủ của hệ thống, đối với các ca kiểm thử này, lúo đó kiểm thủ chính là kỹ thuật kiểm chứng,
Ở đây ta cần phân biệt kiếm thử và gõ lỗi Có thể hiểu rằng kiếm thử là quá
trình thm ra thất bại trong khi gỡ lỗi là quá trình xác định sai sót tạo ra các thất bại đó
Trang 8Luận vẫn thạc sỹ 5
Danh mục các bảng
Tảng 2: Cá kiểm thử đã dùng với HowTo 8cene của Turle Rún - 48
Trang 9
Tình 1-1: Mỗi liên hệ giữa sai sói, lỗi và thất bại - 9
Ba phương pháp cơ bản tích hợp kiểm thử vào kỹ nghệ hệ thống 14 : Cách thức vận hành của kiểm thử hướng mô hình - 16
: Quy trình sử dụng spec expÌOrer
: Nommal Traee Sample
Hinh 2-3: LoadAndSave ‘race Sample
Hinh 2-4: ShowOldMap Trace Sample
inh 2-5: Hinh anh vé model program,
Tình 2-6: Hình ảnh ví dụ về ca kiểm thứ - 36
Hình 2-7: Hinh ảnh minh hoa state trong ca kiếm thử (S32) 37 Hinh 2-8: Hinh anh minh hoa state trong ca kiém thir (S65) - - 38
Hình 3-1: Scene Flow của Turtle Rưa
Hình 3-2: Mô hình Sceneiflow của Lurtle Run
Hình 3-4: Mô hình và ca kiểm thử TopScene của Turtle Run
Trang 10
Luận vẫn thạc sỹ 5
Danh mục các bảng
Tảng 2: Cá kiểm thử đã dùng với HowTo 8cene của Turle Rún - 48
Trang 11
Tình 1-1: Mỗi liên hệ giữa sai sói, lỗi và thất bại - 9
Ba phương pháp cơ bản tích hợp kiểm thử vào kỹ nghệ hệ thống 14 : Cách thức vận hành của kiểm thử hướng mô hình - 16
: Quy trình sử dụng spec expÌOrer
: Nommal Traee Sample
Hinh 2-3: LoadAndSave ‘race Sample
Hinh 2-4: ShowOldMap Trace Sample
inh 2-5: Hinh anh vé model program,
Tình 2-6: Hình ảnh ví dụ về ca kiểm thứ - 36
Hình 2-7: Hinh ảnh minh hoa state trong ca kiếm thử (S32) 37 Hinh 2-8: Hinh anh minh hoa state trong ca kiém thir (S65) - - 38
Hình 3-1: Scene Flow của Turtle Rưa
Hình 3-2: Mô hình Sceneiflow của Lurtle Run
Hình 3-4: Mô hình và ca kiểm thử TopScene của Turtle Run
Trang 12
Luận vẫn thạc sỹ 5
Danh mục các bảng
Tảng 2: Cá kiểm thử đã dùng với HowTo 8cene của Turle Rún - 48
Trang 13
Luận vẫn thạc sỹ
MỞ ĐẦU
1 Lý do chọn đề tài
Kiểm thử phản mềm luôn là mội khâu vất quan trong tong việc phát triển phan
xuêm Tuy nhiên trong thực tế tại Việt Nam rất it công ty chủ trọng đúng mức vào công,
doan kiểm thử này (đo tiết kiệm chi phi, đo trình độ nhân công hoặc lý do khác) trong, khí đầy là điều then chốt ảnh hưởng lói chất lượng săn phẩm đâu ra
Khi làm việc tại một công ty phát triển phần mềm ở Việt Nam, tôi nhận thấy chất lượng của các sân phẩm luôn ở một tức mà có ruột tít thường dược sử dụng là
“chap nan được”, do đó sản phẩm công ty nẻi riêng và có lẽ là cả ngành gia cổng phin mém Việt Nam nôi chung dều chưa cỏ tiếng nỏi, chưa thẻ sánh ngang với các
wurde khác trên thể giới Ngoài ra, chất lượng của việc kiểm thử cũng là một vẫn dé nan
giải
Do dé tdi chon để tài này như một hưởng di hứa hẹn giải quyết các van dé vé chất lượng phản mềm nói chung và chất lượng ứng đụng trên điện thoại thông minh (lĩnh vực mà tôi đang phát triển) được cải thiện trong khi vẫn dam bảo chỉ phí sẵn xuất
trong khoảng cạnh tranh
2 Tính cẤp thiết của để tải
Thư dã nói ở trên, tại Việt Nam chất lượng trong việc kiểm thữ trong lĩnh vực
phát triển phan nói chung và phát triên ứng đụng cho điện thoại thông minh nói
riêng đang là một vân đề nan giới Qua quá trình từra hiểu của tác giá, vấn đề kiếm thứ phần mềm cho ứng dụng trên điện thoại đi dộng thông mình có những nguyên nhân
chính sau:
®- Quy Hình kiểm thử mang rhiểu tỉnh chất chủ quan và lộ thuộc vào từng kiểm thử viên Tại cáo công ty phản mẻm vừa vả nhỏ, việc kiếm thủ chưa cỏ quy chuẩn rõ ring dẫn dến việc xây dựng các ca kiểm thử cũng nhụ việc liển hành kiểm thử phụ
thuộc rất nhiều vào cách nhìn nhận vân đề của kiếm thử viên
« Do tiết kiêm chỉ phi nên bỏ qua nhiêu công đoạn kiếm thử Các công ty phan mềm ở Việt Nam phần lớn đều dựa trên lĩnh vực “outsource” (lâm cho khách hang)
trước ngoài Để tăng lợi nhuận, giảm gió thành (tăng tính cạnh tranh), chỉ phí cho việc
âm thử thường bị cắt giảm và xem nhẹ nhật lä với các dự án nhỏ, chỉ phí thấp Rất nhiều dự án phát triển ứng dụng cho diện thoại di động thông minh rơi vào trường hợp
nay
« Kỹ thuật kiểm thử cẻn nhiều hạn chế Các kỹ thuật kiêm thủ chủ yêu là k
thứ thủ công vá phụ thuộc vào trình dộ của kiểm thử viên, trong, khi các kiểm thử viên thường không được đào tạo bài bàn dẫn đến việc kiểm thử còn hạn chế về mặt kỹ thuật
Trang 14
Luận vẫn thạc
Chương 1 TỎNG QUAX VẺ KIỀM THU PHAN MEM VA
KIEM THU HUONG MO HINH 1.41 Tổng quan về kiểm thử
1.1.1 Các khải niệm Hiên quan trong kiểm thử
Ta sé di tim hiểu một vải thuật ngĩữ cơ bản trong kiếm thủ Trong dé tai nay ta sé
sử dụng thuật ngữ LUI' (Implementation Under Test) hoặc SUT (System L/nder '[øst)
đêu mong ý nghữa là phần thực thi hoặc hệ thông đăng cần được kiểm thử Ta có thê hiểu đơn giản day là đổi tượng ta đang muốn kiểm thử nó
11.11 Sai sói, Lỗi, Hồng hóc
Tây là ba thuật ngit co ban của việc kiếm thử mã ta cân phải làm rõ
Dinah nghĩa 1 — Sai sải(F nu: Là một sai sét “tĩnh” trong hệ thông [9]
“Định nghĩa 2 ~ LÃi (Error): Là một trạng thái nội bộ của hệ thông xây ra sai sốt
khi hệ thông đang được vận hành |9|
Định nghĩa 3 — Thất bại (Fatlure): Là sự sai khác cô thễ thẫy được trong thực
tế của hệ thông so với đự kiến [9]
Sơ đỗ sau thê hiện môi quan hệ giữa sai sót, lỗi và thất bai
Tình 1-1: Mắi liên hệ giữa sai sói, lỗi và thất bại
Su dé trên biểu (lu quá trình phát sinh thất bại của hệ thống bắt dầu từ những sai sót, những sai sót này trong quá trình hệ thống được thực thi sẽ tạo ra lỗi làm cho kết quế của hệ thông không đúng như chúng ta mong muốn vả tạo ra thất bại
Vậy đầu là nguồn gốc của những sai sớt? “Ta có thể quy nguyên nhân của những,
sai sót về ba nguyên nhân chính sau:
Thử nhất, cẩn phải kể đến là những sai lằm, thiểu sót trong yêu cầu của hệ
thông, "Trong trường hợp nàt sự hệ thông dã thiếu mất một sỏ trường hợp sử dụng,
của hệ thống hoặc thiểu định nghầa những hành động mã la cưng muốn hệ thông thực hiện Những sai sót thuộc loại này có thế được phát hiện bằng việo phân tích yêu cầu
Trang 15Luận vẫn thạc sỹ 8
Tử dò dỏi hỏi cần phải có một phương, phảp, một kỹ thuật củng với ông cụ dễ
ữ, giúp cho khâu này cải thiện được chất lượng mà vẫn đâm:
lý về mặt chỉ phí Kiểm thử tự động — kiêm thử hướng mnô hình chính là một
thưởng tiếp cân hứa hen dap tmg dược các diều kiện dã để ra
3 Nhiệm vụ trong luận văn
Với mục dịch ứng dụng dược kỹ thuật kiểm thử hưởng mô hình vào phát triển
ứng dụng cho điện thoại đi động thông minh (smart phone), luận vẫn tập trung nghiền cứu cáo nội dung chỉnh saư :
« _ Tìm hiến vẻ các kỹ thuật kiểm thử và tấp trung vào kiếm thử hướng mô hình
«_ Thm liểu các công cụ, lựa chọn công cụ thích hợp,
«— Ấp đụng công cụ vào quả trình phát triển ứng dụng cho điện thoại đì động thông
«- Dánh giá hiệu quả và đưa ra các hướng phát triển tiếp theo
4 Bố cục của luận văn
Chương ï- Giới thiêu tổng quan về kiếm thủ phần mềm và kiếm thử hướng mỗ
hình Chương này trình bảy về các khải niệm cơ bản trong kiểm thứ, tiếp đó sẽ trinh bảy về các khái niệm cũng như đặc điểm chưng của kiểm thử hướng mô hình
Chương 2: Phương pháp sử đựng công cụ kiếm thử hướng mê hình Chương nảy tập trung vào việc mô tá quy trình, cách thúc thực hiện kiểm thử hướng mô hình
thằng cách sử dụng céng cu Spee Explorer
Chương 3: Thực nghiệm và đánh giá kết quả Chương cuỗi cùng nảy sẽ trình
¡ dụng của một dự án thực tế về phát triển ứng dụng trên smart phone (phát triển game Turle Rum), đưa các kết quả khi chưa áp dụng kiểm thử hướng mô hình và sau khi áp dựng kỹ thuật này Tử đó đánh giá tru, nhược điểm của kỹ thuật đối với việc phát triển ứng, dụng trên điện thoại di déng théng minh
Trang 16
Luận vẫn thạc sỹ 5
Danh mục các bảng
Tảng 2: Cá kiểm thử đã dùng với HowTo 8cene của Turle Rún - 48
Trang 17
Luận vẫn thạc sỹ 8
Tử dò dỏi hỏi cần phải có một phương, phảp, một kỹ thuật củng với ông cụ dễ
ữ, giúp cho khâu này cải thiện được chất lượng mà vẫn đâm:
lý về mặt chỉ phí Kiểm thử tự động — kiêm thử hướng mnô hình chính là một
thưởng tiếp cân hứa hen dap tmg dược các diều kiện dã để ra
3 Nhiệm vụ trong luận văn
Với mục dịch ứng dụng dược kỹ thuật kiểm thử hưởng mô hình vào phát triển
ứng dụng cho điện thoại đi động thông minh (smart phone), luận vẫn tập trung nghiền cứu cáo nội dung chỉnh saư :
« _ Tìm hiến vẻ các kỹ thuật kiểm thử và tấp trung vào kiếm thử hướng mô hình
«_ Thm liểu các công cụ, lựa chọn công cụ thích hợp,
«— Ấp đụng công cụ vào quả trình phát triển ứng dụng cho điện thoại đì động thông
«- Dánh giá hiệu quả và đưa ra các hướng phát triển tiếp theo
4 Bố cục của luận văn
Chương ï- Giới thiêu tổng quan về kiếm thủ phần mềm và kiếm thử hướng mỗ
hình Chương này trình bảy về các khải niệm cơ bản trong kiểm thứ, tiếp đó sẽ trinh bảy về các khái niệm cũng như đặc điểm chưng của kiểm thử hướng mô hình
Chương 2: Phương pháp sử đựng công cụ kiếm thử hướng mê hình Chương nảy tập trung vào việc mô tá quy trình, cách thúc thực hiện kiểm thử hướng mô hình
thằng cách sử dụng céng cu Spee Explorer
Chương 3: Thực nghiệm và đánh giá kết quả Chương cuỗi cùng nảy sẽ trình
¡ dụng của một dự án thực tế về phát triển ứng dụng trên smart phone (phát triển game Turle Rum), đưa các kết quả khi chưa áp dụng kiểm thử hướng mô hình và sau khi áp dựng kỹ thuật này Tử đó đánh giá tru, nhược điểm của kỹ thuật đối với việc phát triển ứng, dụng trên điện thoại di déng théng minh
Trang 18
Luận vẫn thạc sỹ 10
‘Tint hai, 1a các sai sót liên quan đến chức năng của hệ thống, ví dụ như việc sai khác giữa đặc tả kiểm thử với kết quả của thực li của hệ thống trong khi kiểm thủ Sai sót này thường xảy ra đo thiểu sót trong quá trình phát triển, cải đặt của phản mềm hoặc do phần cứng Sai sót loại này có thể dược phát hiện bằng kiểm thử chức năng
Ol này gắn liễn với những đặc
Thứ ba, là các sai sói phi chức năng Những s
tả phi chức năng của hệ thống như hiệu năng, tỉnh bảo mật, tính mở rộng, tính tương thích của hệ thống, ĐỂ có thể phát hiện các sai sót loại này la cần có những phương pháp tương ứng với từng đặc điểm phi chức năng cụ thể Ngoài ra ta cũng có thế phát
“hiện các sai sót loại nảy trong quả trình thực thị hệ thông để kiểm thứ
Trong phần này La số lnn rõ các khôi niệm liên quan, từ đó đua ra khái miệm đâu
là kiểm thứ và đâu không phải là kiểm thứ
Kiém thit (testing) trong thực tả có thê vừa là thẩm định (falidation) vừa là kiểm chimg (Verification) |9} Trudc bél ta edu hidu thậm định và kiểm chứng là gì
Dinh nghĩa 4 — Thẫm định (validation): Thắm định là quá trình đánh giá một
tệ thống đã đảm báo rằng nó pluù hợp với đặc tả hoặc mục đích sử dụng [9]
Định nghĩa 5 — Kiém ching (verification): Kiém chứng là quả trình xác mảnh kết quả của một giai đoạn phái triển hệ thống có thực hiện đúng và đầy đã yêu câu được đưa ra ở giai đoạn trước đó hay không [9]
'ta có thể hiểu một cách đơn giản hơn là kiểm chứng sẽ phát hiện ra lỗi lập trình, tức là tìm ra sai khác giữa hệ thống ta lạo ra với những yêu cầu đã được để ra Còn
thâm định sẽ phát hiện ra hệ thông có đáp ứng đứng như cầu thực tế hay không, đo đó
‡a có thẻ phát hiện ra lỗi thiết kế ở nức cao hơn kiểm chứng
Định nghĩa 6 — Kiểm thữ (Tesing): Kiểm thử là quá trình đánh giá mật cách có
hé théng (systematically) mét hệ thông băng việc quan sát hoạt động của nó [S]
Định nghĩa 7 — Gỡ lỗi (Debugging): Gỡ lỗi là quá trình tim ra sai sót din dén thất bại của hệ thống |9]
Dinh nghia 6 cho ta thay 16 rang, kiểm thử vừa có thể là thấm định, vừa có thế la
kiểm chủng Lhông thường kiểm thử viên sẽ tạo ra các ca kiểm thứ từ đặc tá yêu cầu cửa hệ thống một cách thủ công, khi đó việc kiểm thử chính là kỹ thuật thẩm định hệ thông Đối với kiểm thử hướng mê hình, ca kiểm thử thường được sinh tự động từ mé
tả của hệ thông thi khi đó kiếm thứ lả việc ta xác rminh lại kết quá thực thủ của hệ thống, đối với các ca kiểm thử này, lúo đó kiểm thủ chính là kỹ thuật kiểm chứng,
Ở đây ta cần phân biệt kiếm thử và gõ lỗi Có thể hiểu rằng kiếm thử là quá
trình thm ra thất bại trong khi gỡ lỗi là quá trình xác định sai sót tạo ra các thất bại đó
Trang 19Tình 1-1: Mỗi liên hệ giữa sai sói, lỗi và thất bại - 9
Ba phương pháp cơ bản tích hợp kiểm thử vào kỹ nghệ hệ thống 14 : Cách thức vận hành của kiểm thử hướng mô hình - 16
: Quy trình sử dụng spec expÌOrer
: Nommal Traee Sample
Hinh 2-3: LoadAndSave ‘race Sample
Hinh 2-4: ShowOldMap Trace Sample
inh 2-5: Hinh anh vé model program,
Tình 2-6: Hình ảnh ví dụ về ca kiểm thứ - 36
Hình 2-7: Hinh ảnh minh hoa state trong ca kiếm thử (S32) 37 Hinh 2-8: Hinh anh minh hoa state trong ca kiém thir (S65) - - 38
Hình 3-1: Scene Flow của Turtle Rưa
Hình 3-2: Mô hình Sceneiflow của Lurtle Run
Hình 3-4: Mô hình và ca kiểm thử TopScene của Turtle Run
Trang 20
Luận vẫn thạc sỹ 5
Danh mục các bảng
Tảng 2: Cá kiểm thử đã dùng với HowTo 8cene của Turle Rún - 48
Trang 21
Luận vẫn thạc sỹ 5
Danh mục các bảng
Tảng 2: Cá kiểm thử đã dùng với HowTo 8cene của Turle Rún - 48
Trang 22
thuật ngữ Từ viết đây đủ Ý nghĩa
AAT Adapter Action Langage Nes net mô hình hóa duợc sử dụng
TỰP impementation Under ‘fest | Bộ phản thực thí cần kiểm thử
MBT Model Based Testing Kiểm thử hướng mô hinh
oTc Intel Open Source Trưng tâm công nghệ mã nguồn mở
Technology Center của Intel
SUT System Under Test TIệ thông sắn kiếm thir
Trang 23
Tình 1-1: Mỗi liên hệ giữa sai sói, lỗi và thất bại - 9
Ba phương pháp cơ bản tích hợp kiểm thử vào kỹ nghệ hệ thống 14 : Cách thức vận hành của kiểm thử hướng mô hình - 16
: Quy trình sử dụng spec expÌOrer
: Nommal Traee Sample
Hinh 2-3: LoadAndSave ‘race Sample
Hinh 2-4: ShowOldMap Trace Sample
inh 2-5: Hinh anh vé model program,
Tình 2-6: Hình ảnh ví dụ về ca kiểm thứ - 36
Hình 2-7: Hinh ảnh minh hoa state trong ca kiếm thử (S32) 37 Hinh 2-8: Hinh anh minh hoa state trong ca kiém thir (S65) - - 38
Hình 3-1: Scene Flow của Turtle Rưa
Hình 3-2: Mô hình Sceneiflow của Lurtle Run
Hình 3-4: Mô hình và ca kiểm thử TopScene của Turtle Run
Trang 24
Tình 1-1: Mỗi liên hệ giữa sai sói, lỗi và thất bại - 9
Ba phương pháp cơ bản tích hợp kiểm thử vào kỹ nghệ hệ thống 14 : Cách thức vận hành của kiểm thử hướng mô hình - 16
: Quy trình sử dụng spec expÌOrer
: Nommal Traee Sample
Hinh 2-3: LoadAndSave ‘race Sample
Hinh 2-4: ShowOldMap Trace Sample
inh 2-5: Hinh anh vé model program,
Tình 2-6: Hình ảnh ví dụ về ca kiểm thứ - 36
Hình 2-7: Hinh ảnh minh hoa state trong ca kiếm thử (S32) 37 Hinh 2-8: Hinh anh minh hoa state trong ca kiém thir (S65) - - 38
Hình 3-1: Scene Flow của Turtle Rưa
Hình 3-2: Mô hình Sceneiflow của Lurtle Run
Hình 3-4: Mô hình và ca kiểm thử TopScene của Turtle Run
Trang 25
Luận vẫn thạc sỹ 10
‘Tint hai, 1a các sai sót liên quan đến chức năng của hệ thống, ví dụ như việc sai khác giữa đặc tả kiểm thử với kết quả của thực li của hệ thống trong khi kiểm thủ Sai sót này thường xảy ra đo thiểu sót trong quá trình phát triển, cải đặt của phản mềm hoặc do phần cứng Sai sót loại này có thể dược phát hiện bằng kiểm thử chức năng
Ol này gắn liễn với những đặc
Thứ ba, là các sai sói phi chức năng Những s
tả phi chức năng của hệ thống như hiệu năng, tỉnh bảo mật, tính mở rộng, tính tương thích của hệ thống, ĐỂ có thể phát hiện các sai sót loại này la cần có những phương pháp tương ứng với từng đặc điểm phi chức năng cụ thể Ngoài ra ta cũng có thế phát
“hiện các sai sót loại nảy trong quả trình thực thị hệ thông để kiểm thứ
Trong phần này La số lnn rõ các khôi niệm liên quan, từ đó đua ra khái miệm đâu
là kiểm thứ và đâu không phải là kiểm thứ
Kiém thit (testing) trong thực tả có thê vừa là thẩm định (falidation) vừa là kiểm chimg (Verification) |9} Trudc bél ta edu hidu thậm định và kiểm chứng là gì
Dinh nghĩa 4 — Thẫm định (validation): Thắm định là quá trình đánh giá một
tệ thống đã đảm báo rằng nó pluù hợp với đặc tả hoặc mục đích sử dụng [9]
Định nghĩa 5 — Kiém ching (verification): Kiém chứng là quả trình xác mảnh kết quả của một giai đoạn phái triển hệ thống có thực hiện đúng và đầy đã yêu câu được đưa ra ở giai đoạn trước đó hay không [9]
'ta có thể hiểu một cách đơn giản hơn là kiểm chứng sẽ phát hiện ra lỗi lập trình, tức là tìm ra sai khác giữa hệ thống ta lạo ra với những yêu cầu đã được để ra Còn
thâm định sẽ phát hiện ra hệ thông có đáp ứng đứng như cầu thực tế hay không, đo đó
‡a có thẻ phát hiện ra lỗi thiết kế ở nức cao hơn kiểm chứng
Định nghĩa 6 — Kiểm thữ (Tesing): Kiểm thử là quá trình đánh giá mật cách có
hé théng (systematically) mét hệ thông băng việc quan sát hoạt động của nó [S]
Định nghĩa 7 — Gỡ lỗi (Debugging): Gỡ lỗi là quá trình tim ra sai sót din dén thất bại của hệ thống |9]
Dinh nghia 6 cho ta thay 16 rang, kiểm thử vừa có thể là thấm định, vừa có thế la
kiểm chủng Lhông thường kiểm thử viên sẽ tạo ra các ca kiểm thứ từ đặc tá yêu cầu cửa hệ thống một cách thủ công, khi đó việc kiểm thử chính là kỹ thuật thẩm định hệ thông Đối với kiểm thử hướng mê hình, ca kiểm thử thường được sinh tự động từ mé
tả của hệ thông thi khi đó kiếm thứ lả việc ta xác rminh lại kết quá thực thủ của hệ thống, đối với các ca kiểm thử này, lúo đó kiểm thủ chính là kỹ thuật kiểm chứng,
Ở đây ta cần phân biệt kiếm thử và gõ lỗi Có thể hiểu rằng kiếm thử là quá
trình thm ra thất bại trong khi gỡ lỗi là quá trình xác định sai sót tạo ra các thất bại đó
Trang 26
Luận vẫn thạc
Chương 1 TỎNG QUAX VẺ KIỀM THU PHAN MEM VA
KIEM THU HUONG MO HINH 1.41 Tổng quan về kiểm thử
1.1.1 Các khải niệm Hiên quan trong kiểm thử
Ta sé di tim hiểu một vải thuật ngĩữ cơ bản trong kiếm thủ Trong dé tai nay ta sé
sử dụng thuật ngữ LUI' (Implementation Under Test) hoặc SUT (System L/nder '[øst)
đêu mong ý nghữa là phần thực thi hoặc hệ thông đăng cần được kiểm thử Ta có thê hiểu đơn giản day là đổi tượng ta đang muốn kiểm thử nó
11.11 Sai sói, Lỗi, Hồng hóc
Tây là ba thuật ngit co ban của việc kiếm thử mã ta cân phải làm rõ
Dinah nghĩa 1 — Sai sải(F nu: Là một sai sét “tĩnh” trong hệ thông [9]
“Định nghĩa 2 ~ LÃi (Error): Là một trạng thái nội bộ của hệ thông xây ra sai sốt
khi hệ thông đang được vận hành |9|
Định nghĩa 3 — Thất bại (Fatlure): Là sự sai khác cô thễ thẫy được trong thực
tế của hệ thông so với đự kiến [9]
Sơ đỗ sau thê hiện môi quan hệ giữa sai sót, lỗi và thất bai
Tình 1-1: Mắi liên hệ giữa sai sói, lỗi và thất bại
Su dé trên biểu (lu quá trình phát sinh thất bại của hệ thống bắt dầu từ những sai sót, những sai sót này trong quá trình hệ thống được thực thi sẽ tạo ra lỗi làm cho kết quế của hệ thông không đúng như chúng ta mong muốn vả tạo ra thất bại
Vậy đầu là nguồn gốc của những sai sớt? “Ta có thể quy nguyên nhân của những,
sai sót về ba nguyên nhân chính sau:
Thử nhất, cẩn phải kể đến là những sai lằm, thiểu sót trong yêu cầu của hệ
thông, "Trong trường hợp nàt sự hệ thông dã thiếu mất một sỏ trường hợp sử dụng,
của hệ thống hoặc thiểu định nghầa những hành động mã la cưng muốn hệ thông thực hiện Những sai sót thuộc loại này có thế được phát hiện bằng việo phân tích yêu cầu
Trang 27Luận vẫn thạc sỹ
MỞ ĐẦU
1 Lý do chọn đề tài
Kiểm thử phản mềm luôn là mội khâu vất quan trong tong việc phát triển phan
xuêm Tuy nhiên trong thực tế tại Việt Nam rất it công ty chủ trọng đúng mức vào công,
doan kiểm thử này (đo tiết kiệm chi phi, đo trình độ nhân công hoặc lý do khác) trong, khí đầy là điều then chốt ảnh hưởng lói chất lượng săn phẩm đâu ra
Khi làm việc tại một công ty phát triển phần mềm ở Việt Nam, tôi nhận thấy chất lượng của các sân phẩm luôn ở một tức mà có ruột tít thường dược sử dụng là
“chap nan được”, do đó sản phẩm công ty nẻi riêng và có lẽ là cả ngành gia cổng phin mém Việt Nam nôi chung dều chưa cỏ tiếng nỏi, chưa thẻ sánh ngang với các
wurde khác trên thể giới Ngoài ra, chất lượng của việc kiểm thử cũng là một vẫn dé nan
giải
Do dé tdi chon để tài này như một hưởng di hứa hẹn giải quyết các van dé vé chất lượng phản mềm nói chung và chất lượng ứng đụng trên điện thoại thông minh (lĩnh vực mà tôi đang phát triển) được cải thiện trong khi vẫn dam bảo chỉ phí sẵn xuất
trong khoảng cạnh tranh
2 Tính cẤp thiết của để tải
Thư dã nói ở trên, tại Việt Nam chất lượng trong việc kiểm thữ trong lĩnh vực
phát triển phan nói chung và phát triên ứng đụng cho điện thoại thông minh nói
riêng đang là một vân đề nan giới Qua quá trình từra hiểu của tác giá, vấn đề kiếm thứ phần mềm cho ứng dụng trên điện thoại đi dộng thông mình có những nguyên nhân
chính sau:
®- Quy Hình kiểm thử mang rhiểu tỉnh chất chủ quan và lộ thuộc vào từng kiểm thử viên Tại cáo công ty phản mẻm vừa vả nhỏ, việc kiếm thủ chưa cỏ quy chuẩn rõ ring dẫn dến việc xây dựng các ca kiểm thử cũng nhụ việc liển hành kiểm thử phụ
thuộc rất nhiều vào cách nhìn nhận vân đề của kiếm thử viên
« Do tiết kiêm chỉ phi nên bỏ qua nhiêu công đoạn kiếm thử Các công ty phan mềm ở Việt Nam phần lớn đều dựa trên lĩnh vực “outsource” (lâm cho khách hang)
trước ngoài Để tăng lợi nhuận, giảm gió thành (tăng tính cạnh tranh), chỉ phí cho việc
âm thử thường bị cắt giảm và xem nhẹ nhật lä với các dự án nhỏ, chỉ phí thấp Rất nhiều dự án phát triển ứng dụng cho diện thoại di động thông minh rơi vào trường hợp
nay
« Kỹ thuật kiểm thử cẻn nhiều hạn chế Các kỹ thuật kiêm thủ chủ yêu là k
thứ thủ công vá phụ thuộc vào trình dộ của kiểm thử viên, trong, khi các kiểm thử viên thường không được đào tạo bài bàn dẫn đến việc kiểm thử còn hạn chế về mặt kỹ thuật
Trang 28
Luận vẫn thạc
Chương 1 TỎNG QUAX VẺ KIỀM THU PHAN MEM VA
KIEM THU HUONG MO HINH 1.41 Tổng quan về kiểm thử
1.1.1 Các khải niệm Hiên quan trong kiểm thử
Ta sé di tim hiểu một vải thuật ngĩữ cơ bản trong kiếm thủ Trong dé tai nay ta sé
sử dụng thuật ngữ LUI' (Implementation Under Test) hoặc SUT (System L/nder '[øst)
đêu mong ý nghữa là phần thực thi hoặc hệ thông đăng cần được kiểm thử Ta có thê hiểu đơn giản day là đổi tượng ta đang muốn kiểm thử nó
11.11 Sai sói, Lỗi, Hồng hóc
Tây là ba thuật ngit co ban của việc kiếm thử mã ta cân phải làm rõ
Dinah nghĩa 1 — Sai sải(F nu: Là một sai sét “tĩnh” trong hệ thông [9]
“Định nghĩa 2 ~ LÃi (Error): Là một trạng thái nội bộ của hệ thông xây ra sai sốt
khi hệ thông đang được vận hành |9|
Định nghĩa 3 — Thất bại (Fatlure): Là sự sai khác cô thễ thẫy được trong thực
tế của hệ thông so với đự kiến [9]
Sơ đỗ sau thê hiện môi quan hệ giữa sai sót, lỗi và thất bai
Tình 1-1: Mắi liên hệ giữa sai sói, lỗi và thất bại
Su dé trên biểu (lu quá trình phát sinh thất bại của hệ thống bắt dầu từ những sai sót, những sai sót này trong quá trình hệ thống được thực thi sẽ tạo ra lỗi làm cho kết quế của hệ thông không đúng như chúng ta mong muốn vả tạo ra thất bại
Vậy đầu là nguồn gốc của những sai sớt? “Ta có thể quy nguyên nhân của những,
sai sót về ba nguyên nhân chính sau:
Thử nhất, cẩn phải kể đến là những sai lằm, thiểu sót trong yêu cầu của hệ
thông, "Trong trường hợp nàt sự hệ thông dã thiếu mất một sỏ trường hợp sử dụng,
của hệ thống hoặc thiểu định nghầa những hành động mã la cưng muốn hệ thông thực hiện Những sai sót thuộc loại này có thế được phát hiện bằng việo phân tích yêu cầu
Trang 29
Luận vẫn thạc
Chương 1 TỎNG QUAX VẺ KIỀM THU PHAN MEM VA
KIEM THU HUONG MO HINH 1.41 Tổng quan về kiểm thử
1.1.1 Các khải niệm Hiên quan trong kiểm thử
Ta sé di tim hiểu một vải thuật ngĩữ cơ bản trong kiếm thủ Trong dé tai nay ta sé
sử dụng thuật ngữ LUI' (Implementation Under Test) hoặc SUT (System L/nder '[øst)
đêu mong ý nghữa là phần thực thi hoặc hệ thông đăng cần được kiểm thử Ta có thê hiểu đơn giản day là đổi tượng ta đang muốn kiểm thử nó
11.11 Sai sói, Lỗi, Hồng hóc
Tây là ba thuật ngit co ban của việc kiếm thử mã ta cân phải làm rõ
Dinah nghĩa 1 — Sai sải(F nu: Là một sai sét “tĩnh” trong hệ thông [9]
“Định nghĩa 2 ~ LÃi (Error): Là một trạng thái nội bộ của hệ thông xây ra sai sốt
khi hệ thông đang được vận hành |9|
Định nghĩa 3 — Thất bại (Fatlure): Là sự sai khác cô thễ thẫy được trong thực
tế của hệ thông so với đự kiến [9]
Sơ đỗ sau thê hiện môi quan hệ giữa sai sót, lỗi và thất bai
Tình 1-1: Mắi liên hệ giữa sai sói, lỗi và thất bại
Su dé trên biểu (lu quá trình phát sinh thất bại của hệ thống bắt dầu từ những sai sót, những sai sót này trong quá trình hệ thống được thực thi sẽ tạo ra lỗi làm cho kết quế của hệ thông không đúng như chúng ta mong muốn vả tạo ra thất bại
Vậy đầu là nguồn gốc của những sai sớt? “Ta có thể quy nguyên nhân của những,
sai sót về ba nguyên nhân chính sau:
Thử nhất, cẩn phải kể đến là những sai lằm, thiểu sót trong yêu cầu của hệ
thông, "Trong trường hợp nàt sự hệ thông dã thiếu mất một sỏ trường hợp sử dụng,
của hệ thống hoặc thiểu định nghầa những hành động mã la cưng muốn hệ thông thực hiện Những sai sót thuộc loại này có thế được phát hiện bằng việo phân tích yêu cầu
Trang 30Luận vẫn thạc sỹ 8
Tử dò dỏi hỏi cần phải có một phương, phảp, một kỹ thuật củng với ông cụ dễ
ữ, giúp cho khâu này cải thiện được chất lượng mà vẫn đâm:
lý về mặt chỉ phí Kiểm thử tự động — kiêm thử hướng mnô hình chính là một
thưởng tiếp cân hứa hen dap tmg dược các diều kiện dã để ra
3 Nhiệm vụ trong luận văn
Với mục dịch ứng dụng dược kỹ thuật kiểm thử hưởng mô hình vào phát triển
ứng dụng cho điện thoại đi động thông minh (smart phone), luận vẫn tập trung nghiền cứu cáo nội dung chỉnh saư :
« _ Tìm hiến vẻ các kỹ thuật kiểm thử và tấp trung vào kiếm thử hướng mô hình
«_ Thm liểu các công cụ, lựa chọn công cụ thích hợp,
«— Ấp đụng công cụ vào quả trình phát triển ứng dụng cho điện thoại đì động thông
«- Dánh giá hiệu quả và đưa ra các hướng phát triển tiếp theo
4 Bố cục của luận văn
Chương ï- Giới thiêu tổng quan về kiếm thủ phần mềm và kiếm thử hướng mỗ
hình Chương này trình bảy về các khải niệm cơ bản trong kiểm thứ, tiếp đó sẽ trinh bảy về các khái niệm cũng như đặc điểm chưng của kiểm thử hướng mô hình
Chương 2: Phương pháp sử đựng công cụ kiếm thử hướng mê hình Chương nảy tập trung vào việc mô tá quy trình, cách thúc thực hiện kiểm thử hướng mô hình
thằng cách sử dụng céng cu Spee Explorer
Chương 3: Thực nghiệm và đánh giá kết quả Chương cuỗi cùng nảy sẽ trình
¡ dụng của một dự án thực tế về phát triển ứng dụng trên smart phone (phát triển game Turle Rum), đưa các kết quả khi chưa áp dụng kiểm thử hướng mô hình và sau khi áp dựng kỹ thuật này Tử đó đánh giá tru, nhược điểm của kỹ thuật đối với việc phát triển ứng, dụng trên điện thoại di déng théng minh
Trang 31
Luận vẫn thạc sỹ 5
Danh mục các bảng
Tảng 2: Cá kiểm thử đã dùng với HowTo 8cene của Turle Rún - 48
Trang 32
Luận vẫn thạc sỹ 8
Tử dò dỏi hỏi cần phải có một phương, phảp, một kỹ thuật củng với ông cụ dễ
ữ, giúp cho khâu này cải thiện được chất lượng mà vẫn đâm:
lý về mặt chỉ phí Kiểm thử tự động — kiêm thử hướng mnô hình chính là một
thưởng tiếp cân hứa hen dap tmg dược các diều kiện dã để ra
3 Nhiệm vụ trong luận văn
Với mục dịch ứng dụng dược kỹ thuật kiểm thử hưởng mô hình vào phát triển
ứng dụng cho điện thoại đi động thông minh (smart phone), luận vẫn tập trung nghiền cứu cáo nội dung chỉnh saư :
« _ Tìm hiến vẻ các kỹ thuật kiểm thử và tấp trung vào kiếm thử hướng mô hình
«_ Thm liểu các công cụ, lựa chọn công cụ thích hợp,
«— Ấp đụng công cụ vào quả trình phát triển ứng dụng cho điện thoại đì động thông
«- Dánh giá hiệu quả và đưa ra các hướng phát triển tiếp theo
4 Bố cục của luận văn
Chương ï- Giới thiêu tổng quan về kiếm thủ phần mềm và kiếm thử hướng mỗ
hình Chương này trình bảy về các khải niệm cơ bản trong kiểm thứ, tiếp đó sẽ trinh bảy về các khái niệm cũng như đặc điểm chưng của kiểm thử hướng mô hình
Chương 2: Phương pháp sử đựng công cụ kiếm thử hướng mê hình Chương nảy tập trung vào việc mô tá quy trình, cách thúc thực hiện kiểm thử hướng mô hình
thằng cách sử dụng céng cu Spee Explorer
Chương 3: Thực nghiệm và đánh giá kết quả Chương cuỗi cùng nảy sẽ trình
¡ dụng của một dự án thực tế về phát triển ứng dụng trên smart phone (phát triển game Turle Rum), đưa các kết quả khi chưa áp dụng kiểm thử hướng mô hình và sau khi áp dựng kỹ thuật này Tử đó đánh giá tru, nhược điểm của kỹ thuật đối với việc phát triển ứng, dụng trên điện thoại di déng théng minh
Trang 33
Luận vẫn thạc sỹ
MỞ ĐẦU
1 Lý do chọn đề tài
Kiểm thử phản mềm luôn là mội khâu vất quan trong tong việc phát triển phan
xuêm Tuy nhiên trong thực tế tại Việt Nam rất it công ty chủ trọng đúng mức vào công,
doan kiểm thử này (đo tiết kiệm chi phi, đo trình độ nhân công hoặc lý do khác) trong, khí đầy là điều then chốt ảnh hưởng lói chất lượng săn phẩm đâu ra
Khi làm việc tại một công ty phát triển phần mềm ở Việt Nam, tôi nhận thấy chất lượng của các sân phẩm luôn ở một tức mà có ruột tít thường dược sử dụng là
“chap nan được”, do đó sản phẩm công ty nẻi riêng và có lẽ là cả ngành gia cổng phin mém Việt Nam nôi chung dều chưa cỏ tiếng nỏi, chưa thẻ sánh ngang với các
wurde khác trên thể giới Ngoài ra, chất lượng của việc kiểm thử cũng là một vẫn dé nan
giải
Do dé tdi chon để tài này như một hưởng di hứa hẹn giải quyết các van dé vé chất lượng phản mềm nói chung và chất lượng ứng đụng trên điện thoại thông minh (lĩnh vực mà tôi đang phát triển) được cải thiện trong khi vẫn dam bảo chỉ phí sẵn xuất
trong khoảng cạnh tranh
2 Tính cẤp thiết của để tải
Thư dã nói ở trên, tại Việt Nam chất lượng trong việc kiểm thữ trong lĩnh vực
phát triển phan nói chung và phát triên ứng đụng cho điện thoại thông minh nói
riêng đang là một vân đề nan giới Qua quá trình từra hiểu của tác giá, vấn đề kiếm thứ phần mềm cho ứng dụng trên điện thoại đi dộng thông mình có những nguyên nhân
chính sau:
®- Quy Hình kiểm thử mang rhiểu tỉnh chất chủ quan và lộ thuộc vào từng kiểm thử viên Tại cáo công ty phản mẻm vừa vả nhỏ, việc kiếm thủ chưa cỏ quy chuẩn rõ ring dẫn dến việc xây dựng các ca kiểm thử cũng nhụ việc liển hành kiểm thử phụ
thuộc rất nhiều vào cách nhìn nhận vân đề của kiếm thử viên
« Do tiết kiêm chỉ phi nên bỏ qua nhiêu công đoạn kiếm thử Các công ty phan mềm ở Việt Nam phần lớn đều dựa trên lĩnh vực “outsource” (lâm cho khách hang)
trước ngoài Để tăng lợi nhuận, giảm gió thành (tăng tính cạnh tranh), chỉ phí cho việc
âm thử thường bị cắt giảm và xem nhẹ nhật lä với các dự án nhỏ, chỉ phí thấp Rất nhiều dự án phát triển ứng dụng cho diện thoại di động thông minh rơi vào trường hợp
nay
« Kỹ thuật kiểm thử cẻn nhiều hạn chế Các kỹ thuật kiêm thủ chủ yêu là k
thứ thủ công vá phụ thuộc vào trình dộ của kiểm thử viên, trong, khi các kiểm thử viên thường không được đào tạo bài bàn dẫn đến việc kiểm thử còn hạn chế về mặt kỹ thuật
Trang 34Tình 1-1: Mỗi liên hệ giữa sai sói, lỗi và thất bại - 9
Ba phương pháp cơ bản tích hợp kiểm thử vào kỹ nghệ hệ thống 14 : Cách thức vận hành của kiểm thử hướng mô hình - 16
: Quy trình sử dụng spec expÌOrer
: Nommal Traee Sample
Hinh 2-3: LoadAndSave ‘race Sample
Hinh 2-4: ShowOldMap Trace Sample
inh 2-5: Hinh anh vé model program,
Tình 2-6: Hình ảnh ví dụ về ca kiểm thứ - 36
Hình 2-7: Hinh ảnh minh hoa state trong ca kiếm thử (S32) 37 Hinh 2-8: Hinh anh minh hoa state trong ca kiém thir (S65) - - 38
Hình 3-1: Scene Flow của Turtle Rưa
Hình 3-2: Mô hình Sceneiflow của Lurtle Run
Hình 3-4: Mô hình và ca kiểm thử TopScene của Turtle Run
Trang 35
thuật ngữ Từ viết đây đủ Ý nghĩa
AAT Adapter Action Langage Nes net mô hình hóa duợc sử dụng
TỰP impementation Under ‘fest | Bộ phản thực thí cần kiểm thử
MBT Model Based Testing Kiểm thử hướng mô hinh
oTc Intel Open Source Trưng tâm công nghệ mã nguồn mở
Technology Center của Intel
SUT System Under Test TIệ thông sắn kiếm thir
Trang 36
Tình 1-1: Mỗi liên hệ giữa sai sói, lỗi và thất bại - 9
Ba phương pháp cơ bản tích hợp kiểm thử vào kỹ nghệ hệ thống 14 : Cách thức vận hành của kiểm thử hướng mô hình - 16
: Quy trình sử dụng spec expÌOrer
: Nommal Traee Sample
Hinh 2-3: LoadAndSave ‘race Sample
Hinh 2-4: ShowOldMap Trace Sample
inh 2-5: Hinh anh vé model program,
Tình 2-6: Hình ảnh ví dụ về ca kiểm thứ - 36
Hình 2-7: Hinh ảnh minh hoa state trong ca kiếm thử (S32) 37 Hinh 2-8: Hinh anh minh hoa state trong ca kiém thir (S65) - - 38
Hình 3-1: Scene Flow của Turtle Rưa
Hình 3-2: Mô hình Sceneiflow của Lurtle Run
Hình 3-4: Mô hình và ca kiểm thử TopScene của Turtle Run
Trang 37
thuật ngữ Từ viết đây đủ Ý nghĩa
AAT Adapter Action Langage Nes net mô hình hóa duợc sử dụng
TỰP impementation Under ‘fest | Bộ phản thực thí cần kiểm thử
MBT Model Based Testing Kiểm thử hướng mô hinh
oTc Intel Open Source Trưng tâm công nghệ mã nguồn mở
Technology Center của Intel
SUT System Under Test TIệ thông sắn kiếm thir