Đăng ký Đăng nhập
Trang chủ Công nghệ thông tin Kỹ thuật lập trình Kiểm thử ứng dụng game trên thiết bị di động...

Tài liệu Kiểm thử ứng dụng game trên thiết bị di động

.DOCX
26
739
100

Mô tả:

LỜI CẢM ƠN Trong quá trình làm Thực tập tốt nghiệp em đã nhận được sự giúp đỡ chỉ bảo tận tình của các thầy, cô giáo trong bộ môn đặc biệt là ThS. Nguyễn Hồng Tân. Em xin gửi lời cảm ơn chân thành tới ThS. Nguyễn Hồng Tân cùng các anh chị tại Công ty cổ phần truyền thông Hùng Cường đã hướng dẫn em hoàn thành báo cáo thực tập tốt nghiệp này. Do thời gian và kinh nghiệm thực tế còn hạn chế có những phần thực hiện chưa được tốt và khó tránh khỏi thiếu sót, em rất mong nhận được sự góp ý, thông cảm và chỉ bảo tận tình của Thầy cô và các bạn cho bài báo cáo này được hoàn chỉnh hơn nữa và đạt kết quả cao. Em xin chân thành cám ơn! Thái Nguyên, tháng 1 năm 2017 Sinh viên thực hiện Đoàn Thị Mừng CHƯƠNG 1: CƠ SỞ LÍ THUYẾT 1.1. Kiểm thử phần mềm là gì? 1.1.1. Khái niệm phần mềm Theo Wikipedia: Phần mềm là một tập hợp những câu lệnh hoặc chỉ thị được viết bằng nhiều ngôn ngữ lập trình theo một trật tự xác định, và các dữ liệu hay tài liệu liên quan nhằm tự động thực hiện một số nhiệm vụ hay chức năng hoặc giải quyết một vấn đề cụ thể nào đó. Phần mềm thực hiện các chức năng của nó bằng cách gửi các chỉ thị trực tiếp đến phần cứng hoặc bằng cách cung cấp dữ liệu để phục vụ các chương trình hay phần mềm khác. Phần mềm là một khái niệm trừu tượng, nó khác với phần cứng ở chỗ là “phần mềm không thể sờ hay đụng vào”, nó cần có phần cứng mới có thể thực thi được. 1.1.2. Kiểm thử phần mềm Theo Wikipedia: Kiểm thử phần mềm (kiểm tra, thử nghiệm) là một cuộc kiểm tra được tiến hành để cung cấp cho các bên liên quan thông tin về chất lượng của sản phẩm hoặc dịch vụ được kiểm thử. Kiểm thử có thể cung cấp cho doanh nghiệp một quan điểm, một cách nhìn độc lập về phần mềm để từ đó cho phép đánh giá và thấu hiểu được những rủi ro trong quá trình triển khai phần mềm. Trong kỹ thuật kiểm thử không chỉ giới hạn ở việc thực hiện một chương trình hoặc ứng dụng với mục đích đi tìm các lỗi phần mềm (bao gồm các lỗi và thiết sót) mà còn là một quá trình phê chuẩn và xác minh một chương trình máy tính/ứng dụng/sản phẩm nhằm: - Đáp ứng được mọi yêu cầu hướng dẫn khi thiết kế và phát triển phần mềm. - Thực hiện công việc đúng như kỳ vọng. - Có thể triển khai được với những đặc tính tương tự. - Và đáp ứng được mọi nhu cầu của các bên liên quan. Mỗi phương pháp kiểm thử sẽ bị chi phối bởi một quy trình phát triển phần mềm cụ thể.
MỤC LỤC LỜI CẢM ƠN.............................................................................................................................................3 CHƯƠNG 1: CƠ SỞ LÍ THUYẾT..............................................................................................................4 1.1. Kiểm thử phần mềm là gì?........................................................................................................4 1.1.1. Khái niệm phần mềm.........................................................................................................4 1.1.2. Kiểm thử phần mềm...........................................................................................................4 1.2. Quy trình của kiểm thử phần mềm..........................................................................................4 1.3. Lập kế hoạch (Test plan).......................................................................................................5 1.4. Phân tích & thiết kế...............................................................................................................6 1.5. Thực hiện kiểm tra................................................................................................................6 1.3. Các kỹ thuật trong kiểm thử phần mềm.......................................................................................7 1.3.1. Kiểm thử hộp đen..............................................................................................................7 1.3.2. Kiểm thử hộp trắng...........................................................................................................7 1.3.3. Kiểm thử hộp xám.............................................................................................................8 1.2. Các giai đoạn trong kiểm thử phần mềm.................................................................................8 1.2.1. Kiểm thử đơn vị (Unit Test)...............................................................................................8 1.2.2. Kiểm thử tích hợp (Intergration Test)..............................................................................8 1.2.3. Kiểm thử hệ thống(System Test).......................................................................................8 1.2.4. Kiểm thử chấp nhận (Acception Test)..............................................................................8 1.2.5. Kiểm thử hồi quy(Regression Test)...................................................................................9 CHƯƠNG 2: KIỂM THỬ ỨNG DỤNG GAME TRÊN THIẾT BỊ DI ĐỘNG.........................................10 2.1. Ứng dụng trên thiết bị di động...................................................................................................10 2.1.1. Khái niệm.........................................................................................................................10 2.1.2. Phân loại...........................................................................................................................10 2.1.3. Xu hướng phát triển của ứng dụng di động...................................................................10 2.2. Kiểm thử ứng dụng trên thiết bị di động (Mobile Testing)..................................................11 2.2.1. Những thách thức của mobile testing.............................................................................11 2.2.2. Giải pháp..........................................................................................................................11 2.3. Kiểm thử ứng dụng game trên thiết bị di động.....................................................................12 2.3.1. Khái niệm..........................................................................................................................12 2.3.2. Các kỹ thuật kiểm thử.....................................................................................................12 2.3.3. Các mức kiểm thử............................................................................................................12 2.3.4. Sự khác nhau giữa kiểm thử game trên thiết bị di động và PC....................................13 2.4. Quy trình kiểm thử ứng dụng game.......................................................................................13 2.4.1. Phân loại...........................................................................................................................13 2.4.2. Quy trình kiểm thử..........................................................................................................14 2.5. Xây dựng kế hoạch kiểm thử cho Mobile App.......................................................................15 CHƯƠNG 3: ỨNG DỤNG.......................................................................................................................17 3.1. Giới thiệu về bài toán...............................................................................................................17 3.2. Kế hoạch test............................................................................................................................19 3.3. 3.2.1. Tiếp nhận sản phẩm.........................................................................................................19 3.2.2. Thiết kế test......................................................................................................................19 3.2.3. Môi trường test.................................................................................................................19 3.2.4. Thực hiện test...................................................................................................................19 3.2.5. Test report........................................................................................................................19 Kết quả đạt được............................................................................................................................23 KẾT LUẬN...............................................................................................................................................24 TÀI LIỆU THAM KHẢO.........................................................................................................................25 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN........................................................................................26 LỜI CẢM ƠN Trong quá trình làm Thực tập tốt nghiệp em đã nhận được sự giúp đỡ chỉ bảo tận tình của các thầy, cô giáo trong bộ môn đặc biệt là ThS. Nguyễn Hồng Tân. Em xin gửi lời cảm ơn chân thành tới ThS. Nguyễn Hồng Tân cùng các anh chị tại Công ty cổ phần truyền thông Hùng Cường đã hướng dẫn em hoàn thành báo cáo thực tập tốt nghiệp này. Do thời gian và kinh nghiệm thực tế còn hạn chế có những phần thực hiện chưa được tốt và khó tránh khỏi thiếu sót, em rất mong nhận được sự góp ý, thông cảm và chỉ bảo tận tình của Thầy cô và các bạn cho bài báo cáo này được hoàn chỉnh hơn nữa và đạt kết quả cao. Em xin chân thành cám ơn! Thái Nguyên, tháng 1 năm 2017 Sinh viên thực hiện Đoàn Thị Mừng CHƯƠNG 1: CƠ SỞ LÍ THUYẾT 1.1. Kiểm thử phần mềm là gì? 1.1.1. Khái niệm phần mềm Theo Wikipedia: Phần mềm là một tập hợp những câu lệnh hoặc chỉ thị được viết bằng nhiều ngôn ngữ lập trình theo một trật tự xác định, và các dữ liệu hay tài liệu liên quan nhằm tự động thực hiện một số nhiệm vụ hay chức năng hoặc giải quyết một vấn đề cụ thể nào đó. Phần mềm thực hiện các chức năng của nó bằng cách gửi các chỉ thị trực tiếp đến phần cứng hoặc bằng cách cung cấp dữ liệu để phục vụ các chương trình hay phần mềm khác. Phần mềm là một khái niệm trừu tượng, nó khác với phần cứng ở chỗ là “phần mềm không thể sờ hay đụng vào”, nó cần có phần cứng mới có thể thực thi được. 1.1.2. Kiểm thử phần mềm Theo Wikipedia: Kiểm thử phần mềm (kiểm tra, thử nghiệm) là một cuộc kiểm tra được tiến hành để cung cấp cho các bên liên quan thông tin về chất lượng của sản phẩm hoặc dịch vụ được kiểm thử. Kiểm thử có thể cung cấp cho doanh nghiệp một quan điểm, một cách nhìn độc lập về phần mềm để từ đó cho phép đánh giá và thấu hiểu được những rủi ro trong quá trình triển khai phần mềm. Trong kỹ thuật kiểm thử không chỉ giới hạn ở việc thực hiện một chương trình hoặc ứng dụng với mục đích đi tìm các lỗi phần mềm (bao gồm các lỗi và thiết sót) mà còn là một quá trình phê chuẩn và xác minh một chương trình máy tính/ứng dụng/sản phẩm nhằm: - Đáp ứng được mọi yêu cầu hướng dẫn khi thiết kế và phát triển phần mềm. Thực hiện công việc đúng như kỳ vọng. Có thể triển khai được với những đặc tính tương tự. Và đáp ứng được mọi nhu cầu của các bên liên quan. Mỗi phương pháp kiểm thử sẽ bị chi phối bởi một quy trình phát triển phần mềm cụ thể. 1.2. Quy trình của kiểm thử phần mềm Mục đích của kiểm thử là thiết kế mô ô t chuỗi các trường hợp kiểm thử mà có khả năng phát hiê ô n lỗi cao. Để cho viê ô c kiểm thử đạt kết quả tốt cần có sự chuẩn bị về kế hoạch kiểm thử, thiết kế các trường hợp kiểm thử và các dữ liê ô u kiểm thử cho các trường hợp. Đây chính là gian đoạn đầu vào của quá trình kiểm thử. Và sản phẩm công viê ô c của giai đoạn kiểm thử chính là “báo cáo kiểm thử” mà tài liê ôu hóa tất cả các trường hợp kiểm thử đã chạy, dữ liê ô u đầu vào, đầu ra mong đợi,.. Dưới đây là quy trình kiểm thử phần mềm được trình bày chi tiết: Quy trình kiểm thử phần mềm Lâ p ô kế hoạch Lâ p ô chiến lược & kế hoạch Thiết kế Phân tích & thiết kế Chuẩn bị thực hiê n ô Thực hiê n ô Thực hiê nô Check 1.3. Lập kế hoạch (Test plan) a. Mục đích Nhằm chỉ định và mô tả các loại kiểm tra sẽ được triển khai và thực hiê ôn. Kết quả của bước lâ ô p kế hoạch là bản tài liê ôu kế hoạch, bao gồm chi tiết từ các loại kiểm tra, chiến lược kiểm tra, cho đến thời gian và phân định lực lượng kiểm tra viên. Đánh gi Kế hoạch kiểm tra mức đơn vị(Unit test plan) Kế hoạch kiểm tra mức chấp nhâ n ô (Accep tance test plan) Kế hoạch kiểm tra chính(Master test plan) Kế hoạch kiểm tra mức tích hợp(Integrat ion test plan) Kế hoạch kiểm tra mức hê ô thống(System test plan) b. Các bước lập kế hoạch - Xác định yêu cầu kiểm tra - Khảo sát rủi ro - Xác định chiến lược kiểm tra - Các định nhân lực, vật lực - Lập kế hoạch chi tiết: - Xem xét các kế hoạch kiểm tr 1.4. Phân tích & thiết kế a. Mục đích Nhằm xây dựng các testcase, đây là công việc hết sức quan trọng để đưa ra tất cả các trường hợp kiểm tra đầy đủ nhất để test tất cả các yêu cầu đặc tả. b. Các bước thực hiện - Xác định và mô tả Test Case - Mô tả các bước chi tiết để kiểm tra - Xem xét và khảo sát độ bao phủ của việc kiểm tra - Xem xét test case và các bước kiểm tra 1.5. Thực hiện kiểm tra a. Mục đích Thực hiện các bước kiểm tra đã thiết kế và ghi nhận kết quả. Việc thực hiện kiểm tra cũng được làm rất nhiều lần trong suốt chu trình kiểm tra, cho đến khi kết quả kiểm tra cho thấy đủ điều kiện để dừng hoặc tạm dừng việc thực hiện. b. Quá trình thực hiện Thực hiện các bước kiểm tra: thủ công hoặc thi hành các Test Script nếu là quy trình kiểm tra tự động. Để thực hiện kiểm tra, cần xác lập và khởi động môi trường và điều kiện kiểm tra. Đảm bảo tất cả các bộ phận liên quan (phần cứng, phần mềm, máy chủ, mạng, dữ liệu,…) đã được sẵn sàng, trước khi chính thức bắt đầu thực hiện kiểm tra. Đánh giá quá trình kiểm tra: giám sát quá trình kiểm tra xem đã hoàn thành chưa, có cần bổ sung, sửa chữa gì không để quá trình kiểm tra được tốt hơn. Thẩm định kết quả kiểm tra: xem xét để đảm bảo kết quả nhận được là đáng tin cậy, cũng như nhận biết được lỗi xảy ra không phải do phần mềm mà do dữ liệu dùng để kiểm tra, môi trường kiểm tra,… 1.3. Các kỹ thuật trong kiểm thử phần mềm 1.3.1. Kiểm thử hộp đen Kiểm thử hộp đen là xem phần mềm như là hộp “đen”, người kiểm thử dựa trên đặc tả để kiểm tra mà không quan tâm đến cấu trúc bên trong của hệ thống. Các phương pháp kiểm thử hộp đen: - Phân vùng tương đương Phân tích giá trị biên Vẽ đồ thị nguyên nhân, kết quả Đoán lỗi Chuyển trạng thái Bảng quyết định 1.3.2. Kiểm thử hộp trắng Kiểm thử hộp trắng dựa trên cấu trúc bên trong của chương trình, người kiểm thử sẽ truy cập vào cấu trúc chương trình, thuật toán, các lệnh,… Các phương pháp trong kiểm thử hộp trắng: - Kiểm thử giao diện ứng dụng(API testing) Bao phủ mã lệnh - Phương pháp gán lỗi 1.3.3. Kiểm thử hộp xám Là sự kết hợp giữa kiểm thử hộp đen và kiểm thử hộp trắng, tester vận dụng các kiến thức về thuật toán, cấu trúc bên trong của chương trình như của hộp trắng để thiết kế TestCase theo hướng người sử dụng hoặc có TestCase như của hộp đen. 1.2. Các giai đoạn trong kiểm thử phần mềm 1.2.1. Kiểm thử đơn vị (Unit Test) Test ở các mức cơ bản nhất, test từng module nhỏ của hệ thống: - Các hàm Từng chức năng Từng màn hình Mục đích: Để xác nhận rằng mỗi thành phần của phần mềm thực hiện đúng với thiết kế. 1.2.2. Kiểm thử tích hợp (Intergration Test) Sau khi việc kiểm thử ở mức đơn vị được hoàn thành, tiến hành test tích hợp. Tích hợp các màn hình lại với nhau theo từng module hay dựa theo chức năng. Mục đích: Để tìm ra lỗi trong quá trình tích hợp các module lại với nhau. Chú trọng việc giao tiếp giữa các đơn thể khi chúng làm việc với nhau. 1.2.3. Kiểm thử hệ thống(System Test) Kiểm thử hệ thống là kiểm tra hệ thống sau khi đã tích hợp đã đáp ứng được yêu cầu đặc tả chưa. - Kiểm thử hệ thống bao gồm các kiểm thử sau: Kiểm tra chức năng (Functional Test): Đảm bảo các hành vi của hệ thống thỏa mãn đúng yêu cầu thiết kế. - Kiểm tra khả năng vận hành (Performance Test) - Khả năng chịu tải (Stress Test) - Khả năng bảo mật(Security Test) 1.2.4. Kiểm thử chấp nhận (Acception Test) Sau giai đoạn System Test là Acceptance Test , được khách hàng thực hiện . Mục đích của Acceptance Test là để chứng minh phần mềm thỏa mãn yêu cầu của khách hàng và khách hàng chấp nhận sản phẩm. Có 2 loại kiểm thử chấp nhận: - Alpha Test: người sử dụng phần mềm test ngay tại nơi phát triển phần mềm, lập trình viên sẽ ghi nhận các lỗi hoặc các phản hồi, và lên kế hoạch sửa chữa. - Beta Test: phần mềm sẽ được gửi cho người sử dụng để kiểm tra ngay trong môi trường thực, lỗi hoặc phản hồi sẽ được gửi lại cho lập trình viên để sửa chữa. 1.2.5. Kiểm thử hồi quy(Regression Test) Sau mỗi phiên bản phần mềm được sửa lỗi thì việc kiểm thử hồi quy được tiến hành, để đảm bảo phiên bản mới được thực hiện tốt các chức năng như phiên bản cũ và sự thay đổi không gây ra lỗi mới trên những chức năng vốn đã làm việc tốt. CHƯƠNG 2: KIỂM THỬ ỨNG DỤNG GAME TRÊN THIẾT BỊ DI ĐỘNG 2.1. Ứng dụng trên thiết bị di động 2.1.1. Khái niệm Theo WIKIPEDIA: Một phần mềm ứng dụng trên thiết bị di động, còn được gọi tắt là ứng dụng di động, hoặc chỉ ứng dụng, (tiếng Anh: Mobile app hoặc app) là phần mềm ứng dụng được thiết kế để chạy trên điện thoại thông minh, máy tính bảng và các thiết bị di động khác. Các ứng dụng thường có sẵn thông qua các nền tảng phân phối ứng dụng, bắt đầu xuất hiện vào năm 2008 và thường được điều hành bởi các chủ sở hữu của hệ điều hành di động, như Apple App Store, Google Play, Windows Phone Store, và BlackBerry App World. Một số ứng dụng miễn phí, trong khi một số ứng dụng phải được mua. 2.1.2. Phân loại Ứng dụng trên thiết bị di động được chia làm 3 loại: - - - - - Ứng dụng gốc(Native): Là những ứng dụng được viết riêng cho một loại nền tảng như IOS, Android, Windowns Phone bằng các ngôn ngữ tương ứng của mỗi nền tảng đó. Ứng dụng Web: Là ứng dụng chạy trên nền web, người dùng thiết bị di động sẽ sử dụng các trình duyệt khác nhau như Chome, FireFox, Safari truy cập vào web server để sử dụng. Ứng dụng lai(Hybrid App): là sự kết hợp giữa ứng dụng gốc và ứng dụng web, có thể chạy offline và online 2.1.3. Xu hướng phát triển của ứng dụng di động Theo báo cáo của Tổ chức viễn thông quốc tế thuộc Liên hiệp quốc(ITUInternational Telecommunication Union) năm 2014: Tổng số thuê bao di động được đăng ký là 7 tỷ; 22% đăng ký dành cho smartphones Trong buổi hội thảo “state of mobile” do SmartBear tổ chức với sự tham gia 1040 nhà phát triển phần mềm, testers, người sử dụng công bố năm 2014 chỉ ra:  Gần 30% các ứng dụng được xây dựng dành cho ứng dụng mobile.  30% công ty lên kế hoạch để phát triển 5-20 ứng dụng mới trong năm 2014.  40% khách hàng download 5-20 ứng dụng trên một tháng.  5% các nhà phát triển ứng dụng mobile trong buổi khảo sát đang làm việc trên các ứng dụng doanh nghiệp, tài chính. Phần còn lại là du lịch, mạng xã hội, giải trí, Game,..  Gần 50% người dùng sẽ gỡ ứng dụng nếu nó có bất kỳ một lỗi nào. Biểu đồ dưới đây thể hiện đặc điểm về chất lượng các ứng dụng di động theo góc nhìn giữa hai bên Developers và Testers với người dùng(User): 2.2. Kiểm thử ứng dụng trên thiết bị di động (Mobile Testing) 2.2.1. Những thách thức của mobile testing Các nhà phát triển và kiểm thử viên phải đối mặt với nhiều hệ điều hành(các phiên bản khác nhau của hệ điều hành, đặc biệt với Android); nhiều thiết bị khác nhau(máy tính bảng, các dòng điện thoại );tốc dộ truyền dữ liệu(3G, Wi-fi); nhiều kích thước màn hình; nhiều công nghệ-GPS… Các khó khăn được kể ra như: - Phân loại thiết bị Mức tiêu thụ dữ liệu Sử dụng pin, tiêu tốn pin Định vị GPS Cảm biến màn hình UX(User Experience), GUI 2.2.2. Giải pháp Đa số việc test được tiến hành trên các thiết bị thật để việc kiểm tra là chính xác nhất. Tuy nhiên, chi phí đầu tư cho các thiết bị thật khá tốn kém, vì vậy mà các công ty rất mong muốn tìm được các hệ thống hỗ trợ việc test giúp đỡ tốn thời gian cũng như chi phí. Ví dụ: sử dụng Firedatabase https://firebase.google.com/docs/test-lab/ 2.3. Kiểm thử ứng dụng game trên thiết bị di động 2.3.1. Khái niệm Kiểm thử là một phần trong quá trình phát triển game, nhằm kiểm soát chất lượng của sản phẩm được tạo ra. Mục đích của kiểm thử là kiểm tra và phát hiện các lỗi của phần mềm. Kiểm thử game đòi hỏi nhiều chuyên môn về tính toán, khả năng phân tích, kỹ năng đánh giá, sự kiên trì. 2.3.2. Các kỹ thuật kiểm thử Hai kĩ thuật chính được áp dụng trong kiểm thử game là “Kiểm thử hộp đen” và “Kiểm thử hộp trắng”:   Kiểm thử hộp đen: Tập trung vào các chức năng hay “game play” của trò chơi Các menu lựa chọn Cách dùng các nút điều khiển Đồ họa, animation Game play có giống với thiết kế hay không. Kiểm thử hộp trắng: Tập trung vào kiến trúc và sự tích hợp giữa các module của trò chơi. Tập trung chủ yếu vào khía cạnh thuộc về hệ thống, cấu trúc game, sự cấu thành của bên thứ ba, cơ sở dữ liệu, social media, các thực thể bên ngoài, âm thanh và nhạc nền, cũng như graphic, game engine được tích hợp trong game 2.3.3. Các mức kiểm thử  Kiểm thử chức năng (Functional testing): Là phương pháp phổ biến trong kiểm thử game trên mobile. Kiểm thử chức năng chính được liên kết với kiểm thử thủ công và chơi từng vòng chơi.  Kiểm thử tính tương thích (Compability testing): Là kiểm tra xem liệu game có thích hợp với mọi loại thiết bị hay không. Kiểm thử tương thích được thực hiện nghiêm chỉnh trong suốt quá trình phát triển phần sản phẩm, giống như smoke testing thì nó sẽ giúp phát hiện ra những vấn đề liên quan đến sự không tương thích ở bất kỳ phần nào của game; điều này vô cùng quan trọng để cho game chạy tốt trên các thiết bị khác nhau, cả phần cứng và phần mềm.  Kiểm thử hiệu năng (Performance testing): Rất quan trọng trong kiểm thử game. Game chạy chậm có thể khiến cho game không thể thành công, nhận rating thấp và không tạo được thương hiệu cho người sáng lập.  Kiểm thử hồi quy (Regression testing): Cần thực hiện khi có bất kỳ thay đổi nào trong game.  Kiểm thử load (Load testing): Kiểm thử giới hạn của hệ thống, như số lượng người chơi tối đa trên server, nội dung đồ họa trên màn hình, sự tiêu tốn bộ nhớ.  Kiểm thử ngắt(Interrupt Testing) 2.3.4. Sự khác nhau giữa kiểm thử game trên thiết bị di động và PC - Kể cả chơi cùng một game trên mobile và PC thì chúng thường chỉ giống nhau về giao diện cơ bản, luật chơi, còn lại sẽ được thay đổi để phù hợp với từng loại thiết bị. - Sự khác biệt lớn nhất của chơi game trên mobile và trên PC là trải nghiệm của người dùng về việc điều khiển game. - Khi chơi game trên máy tính người dùng sẽ theo dõi nhân vật (hoặc đối tượng) của game bằng mắt, điều khiển một số phím trên bàn phím, còn trên smartphone thì người dùng sẽ trực tiếp tap/touch vào màn hình để điều khiển. Trải nghiệm cảm ứng phong phú có thể dùng 1 ngón tay, hoặc dùng cả 10 ngón tay cùng lúc, hay có thể dùng bút (Samsung Galaxy Note,…). 2.4. Quy trình kiểm thử ứng dụng game 2.4.1. Phân loại Trước khi kiểm thử phải có các bước phân loại để đưa ra cách tiếp cận phù hợp nhất để kiểm thử. Có thể phân loại game có lối đơn giản, hay phức tạp, game có tính chất đặc thù (quy định). Có nhiều cách phân loại tùy vào các tester để đưa ra quan điểm test cho game đó. 2.4.2. Quy trình kiểm thử a. Download Hiện tại game trên smartphone có hai phiên bản dành riêng cho android hoặc ios. Cần download đúng phiên bản tương thích với hệ điều hành của thiết bị mà mình đang sử dụng. b. Cài đặt Cài đặt game rất đơn giản, chỉ gồm các bước xác nhận cài đặt và đợi cho game tự cài xong. Tester cần chú ý trình tự cài đặt, các thông báo trong khi cài đặt xem đã phù hợp với requirement hay chưa. c. Xác nhận dung lượng bộ nhớ, mức pin mà game tiêu thụ: Có thể so sánh phần này của game trên các thiết bị khác nhau, hệ điều hành khác nhau, hoặc trên cùng một thiết bị nhưng phiên bản game khác nhau tùy theo yêu cầu. Bất cứ người chơi nào cũng mong muốn game mà mình thích chơi không chiếm quá nhiều dung lượng bộ nhớ cũng như không tốn quá nhiều pin vì nó có thể làm chậm performance và làm ảnh hưởng tới các chức năng khác của điện thoại. d. Game play Tùy theo luật chơi của từng game mà tester sẽ có kế hoạch thực hiện test như thế nào. Khi áp dụng adhoc testing, tester có thể test game theo hai hướng sau đây: - Phân chia theo thứ tự màn hình xuất hiện: Tester có thể phân chia game theo từng màn hình để test. Trên mỗi màn hình sẽ có những đơn vị nhỏ như text, button, image,.. và dựa trên mỗi đơn vị nhỏ này, tester có thể xác nhận nó đã hoạt động đúng với yêu cầu hay chưa. - Phân chia theo các chức năng nhỏ nhất: Ngoài cách phân chia theo màn hình, tester cũng có thể phân chia game theo chức năng hoặc từng mode của game để test. Tuy nhiên cách này đòi hỏi tester nắm cực kỳ vững yêu cầu, tất cả các mode của game để đảm bảo không bị sót bất kỳ phần một phần nào. 2.5. Xây dựng kế hoạch kiểm thử cho Mobile App Test plan gồm nhiều các hoạt động phụ thuộc vào đặc thù từng sản phầm cũng như tính chất riêng của dự án ở mỗi công ty nên Test Plan có thể sẽ khác nhau giữa các công ty và mỗi dự án. Test plan trong dự án Mobile App về cơ bản sẽ gồm các phần như sau:  Scopes - Đề ra được phạm vi cái gì cần test và không cần test: functional hoặc nonfunctional nào sẽ được kiểm tra. - Phạm vi phải phù hợp để tránh tình trạng test thiếu hay là test thừa nhiều hơn mức cần thiết.  Test Methodology  Test Approach - Việc test được tiến hành trên các thiết bị với hệ điều hành khác nhau. Nó có thể thử nghiệm trên Cloud, sử dụng thiết bị thật, Emulator hay cả hai. Nó được tiến hành manual hoàn toàn hay automation.  Testing Types - Cần cân nhắc để lựa chọn phương pháp test phù hợp với dự án như là test theo Black-Box, hay White-Box. - Các loại test cho Mobile App: UI Testing, Usability Testing, Security Testing, Network Testing, Localization Testing, Function Testing,…  Testing Level  Testing Tool  Testing Environment - Môi trường test, cấu hình, server ra sao để test. - Một trong những khác biệt lớn nhất giữa Web app và Mobile app là môi trường kiểm thử. Với kiểm thử mobile app sẽ cần đề cập chi tiết về các thiết bị, firmware, emulators, hệ điều hành, trình duyệt và phiên bản tương ứng được sử dụng trong khi thử nghiệm.  Test Schedule      Thủ tục kiểm soát Vai trò và trách nhiệm Tiến hành test và quản lý lỗi Chuyển giao Rủi ro và giả định 3.1. CHƯƠNG 3: ỨNG DỤNG Giới thiệu về bài toán Tên bài toán: Kiểm thử ứng dụng game trên thiết bị di động a. Ứng dụng 1: Metal Shooter (Super Soldiers) Metal Shooter đã được upadate trên ứng dụng của Google Store. Là game hành động bắn súng màn hình ngang 2D, bạn sẽ đóng vai Condor - một siêu cấp lính biệt động, thu thập các loại vũ khí, băng qua các chiến trường, tiêu diệt đội quân của tư lệnh Maddog, kết thúc thời đại hung tàn của hắn bằng những vũ khí chết người. Màn hình Home: Di chuyển: - Sử dụng Joystick để di chuyển trái hoặc phải. - Chạm nút NHẢY để tránh chướng ngại vật hoặc nếu bạn muốn tiêu diệt kẻ địch một cách đẹp mắt. - Chạm nút Lựu đạn nếu bạn muốn tạo ra một vụ nổ mạnh mẽ, đập tan phòng tuyến kẻ địch. - Giữ nút Bắn, Condor sẽ tự động xả đạn. Tính năng: - Gồm 3 Zone: Forest, Barrens, Depth. Cập nhật các zone tiếp trong các version tiếp theo. - Gần 20 loại kẻ thù và quái vật như xe tăng, trực thăng chiến đấu. Hàng trăm tên phiến quân sẽ đánh đuổi bạn. - Thu thập các loại đạn Shoot Gun, 6 nòng, hoặc Rocket và xả. - Hoàn toàn miễn phí, không cần Wifi, bạn có thể chơi game ở bất cứ đâu. b. Ứng dụng 2: Chicken Shooter 2017 Chicken shooter là game bắn gà, người chơi sử dụng ngón tay để di chuyển. Hiện tại có 20 level để người chơi trải nghiệm, và sẽ tiếp tục update thêm các thêm các level trong các version tiếp theo. Các chức năng chính: - Chơi game thực hiện nhiệm vụ hàng ngày Nâng cấp Inapp Xem xếp hạng Remove Ad 3.2. Kế hoạch test 3.2.1. Tiếp nhận sản phẩm Ứng dụng được xây dựng, tester đọc các miêu tả của ứng dụng, hiểu các chức năng chính của ứng dụng. Từ đó, đưa ra được những gì cần phải test, giúp việc test đầy đủ, chính xác. Sản phẩm sau khi test hoàn thiện để sẵn sàng đưa ra thị trường.         3.2.2. Thiết kế test Xây dựng checklist. Sử dụng kỹ thuật kiểm thử hộp đen(Black-Box), test type: Function Testing UI Testing. Usability Testing Loading Testing Network Testing Interrupt Testing Localization Testing Build & Release 3.2.3. Môi trường test Thực hiện test trên các thiết bị thật với hệ điều hành android, IOS: - AZUS T00I SONY HTC SAMSUNG S3 Iphone 4, 5S 3.2.4. Thực hiện test Sau khi đã xây dựng được các checklist, xác định môi trường test. Các developer tiến hành buid các bản apk để test trên các thiết bị thật. 3.2.5. Test report Sau khi thực hiện test trên thiết bị thật, khi phát hiện lỗi cần một môi trường trao đổi giữa Tester và Deverloper. Hệ thống theo dõi, quản lý bug và các vấn đề của dự án Jira làm trung gian thông qua môi trường Internet. Hệ thống làm việc như sau: Tiến trình công việc của hệ thống - Khi Tester create issue -> sẽ ở trạng thái Open. Dev cập nhật và fix lỗi theo assignment -> Resolved Sau khi bug được Fix, Tester kiểm tra lại ->> Reopened:  Nếu trường hợp vẫn còn lỗi - -> Assigned hoặc Resolved  Lỗi đã được fix -- > Closed Ví dụ về một Issue: Ứng dụng 1: Metal shooter
- Xem thêm -

Tài liệu liên quan