Phát triển ứng dụng di động và danh sách kiểm thử - 17 điều cần nhớ trước khi phát triển 1 ứng dụng
Bài đăng này đã không được cập nhật trong 3 năm
Phát triển ứng dụng di động và danh sách kiểm thử nhằm đảm bảo cho cả developers và testers cover được các kịch bản kiểm thử, giúp tinh chỉnh Tài liệu để đảm bảo phạm vi công việc của từng người được xác định rõ ràng. Sau đây là những câu hỏi chính về chức năng của ứng dụng cần thiết trong quá trình đó: 1. Nền tảng di động nào phát triển? IOS hoặc Android? IOS và Android là 2 nền tảng được ưa thích để phát triển các ứng dụng di động. Tuy nhiên, Blackberry vẫn được sử dụng đáng kế bởi người dùng và doanh nghiệp ở các nước đang phát triển vẫn sử dụng điện thoại Symbian. Tốt hơn là biết trước những nền tảng nào dự kiến sẽ được hỗ trợ. Điều này sẽ giúp bạn đưa ra quyết định quan trọng đối với kiến trúc / thiết kế của mình. Các nền tảng phổ biến được liệt kê dưới đây:
- Android
- IOS
- Windows Mobile
- Blackberry
- Symbian
2. Phiên bản iOS nào chúng ta nên tập trung vào? Phiên bản Android nào chúng ta cần phát triển? Ứng dụng của bạn có sử dụng bất kỳ tính năng nào được giới thiệu trong một phiên bản cụ thể của hệ điều hành không? Nếu có, bạn sẽ muốn đề cập đến điều này trong tài liệu tiếp thị của bạn và cũng kiểm thử nó trên hệ điều hành đã xác định. Đây là cách tốt để ngăn cản việc ứng dụng được cài đặt trên các phiên bản hệ điều hành không được hỗ trợ. Điều này sẽ tránh được việc người dùng để lại xếp hạng thấp và phản hồi tiêu cực sau khi cài đặt ứng dụng trên một hệ điều hành không được hỗ trợ.
Ảnh trên cho thấy số liệu thống kê sử dụng cho các phiên bản khác nhau của Android và iOS. Google cung cấp số liệu cập nhật cho phiên bản Android đang được sử dụng trên tất cả các thiết bị Android và thông tin về cách bạn có thể hỗ trợ nhiều phiên bản. Apple cũng cung cấp số liệu thống kê cho việc sử dụng phiên bản iOS cùng với danh sách kiểm tra của riêng mình (Những số liệu này bắt đầu từ tháng 9 năm 2013 trước khi iOS7 ra mắt).
3. Yêu cầu phần cứng của thiết bị Ứng dụng của bạn có bất kỳ yêu cầu gì về phần cứng cụ thể như bộ nhớ, máy ảnh, CPU, vvv..? Như đã đề cập ở trên, cách tốt nhất là ngăn cản việc cài đặt trên các thiết bị không được hỗ trợ bằng chương trình khi có thể. Kiểm tra xem thiết bị của bạn có đủ bộ nhớ / bộ nhớ RAM trong Android và iOS.
4. Độ phân giải màn hình nào bạn quan tâm? Đảm bảo rằng ứng dụng của bạn có vẻ tốt trên độ phân giải màn hình mà bạn quan tâm. Điện thoại thông minh và máy tính bảng có tất cả các hình dạng và kích cỡ. Một danh sách các thiết bị với độ phân giải màn hình và mật độ hiển thị có sẵn trên Wikipedia. Một số giải pháp màn hình thông thường dưới đây:
- 320 x 480px
- 640 x 960px
- 480 x 800px
- 720 x 1280px
- 768 x 1280px
- 800 x 1280px
- 1200 x 1920px
- 2048 x 1536px Google cũng cung cấp số liệu thống kê về số lượng thiết bị có kích thước màn hình và mật độ cụ thể. Thông tin về số pixel cho các kích cỡ màn hình khác nhau và cách bạn có thể hỗ trợ nhiều kích cỡ màn hình cũng có sẵn.
5. Có nên phát triển một ứng dụng khác cho máy tính bảng? Thực tiễn tốt khi sử dụng đồ họa chất lượng cao cho các thiết bị lớn như máy tính bảng đặc biệt là nếu ứng dụng hoặc trò chơi của bạn được mong đợi sẽ được sử dụng trên các thiết bị này. Một số nhà phát triển phát hành phiên bản HD riêng biệt của ứng dụng / trò chơi thay vì sử dụng một gói duy nhất. Bất kể quá trình triển khai của bạn, bạn nên thử nghiệm trên cả hai thiết bị nếu bạn mong đợi những người dùng quan trọng trên cả hai. Google cũng đã phát hành danh sách kiểm tra chất lượng ứng dụng để giúp các nhà phát triển cung cấp các ứng dụng chất lượng cho các thiết bị máy tính bảng.
6. Hướng tới Portrait hay là Landscape? Một số trò chơi chỉ hoạt động ở chế độ nằm ngang, trong khi một số ứng dụng được thiết kế để chỉ hoạt động ở chế độ Portrait và các công việc khác ở cả hai chế độ. Đảm bảo bạn kiểm tra các ứng dụng của mình để xem nếu có vấn đề gì khi thay đổi hướng như lỗi ứng dụng hoặc lỗi giao diện, người dùng.
7. Kiểm tra chức năng GPS, Accelerometer, Khóa phần cứng Nếu ứng dụng của bạn yêu cầu sử dụng các tính năng phần cứng sau đây, Testcasse của bạn cũng cần kiểm tra các kịch bản khi chúng không có sẵn :
- Khóa phần cứng - ví dụ: Ứng dụng máy ảnh sử dụng nút camera chuyên dụng, ứng dụng Quản lý sự kiện / Task Manager sử dụng các nút phần cứng để báo lại lời nhắc, trình phát media sử dụng khối lượng và các phím khác ... Một số ứng dụng cũng sử dụng nút nguồn để cung cấp thêm chức năng / phím tắt cho hành vi ứng dụng.
- Accelerometer - Các ứng dụng sử dụng gia tốc cần được thử nghiệm để đảm bảo rằng các giá trị đọc được ghi lại một cách chính xác và sử dụng đúng trong các ứng dụng. Trường hợp thử nghiệm này có thể có liên quan đến các ứng dụng như Star Maps, Pedometers, Jump trackers, Games, các ứng dụng trực quan 3D, vvv...
- GPS - Các ứng dụng Điều hướng của bạn sẽ phản ứng như thế nào nếu GPS bị tắt hoặc đột ngột trong quá trình hoạt động?
- Bất kỳ cảm biến khác - Nếu bạn ứng dụng phụ thuộc vào cảm biến bổ sung cho nhiệt độ, độ sáng hoặc bất kỳ phụ kiện cung cấp chức năng bổ sung, sau đó bạn cần phải đảm bảo rằng bạn đã kiểm tra các điều kiện khi họ không có hoặc không hoạt động chính xác.
8. Các vấn đề kết nối mạng - GPRS, 2G, 3G, WiFi, kết nối gián đoạn, không kết nối Hầu hết các ứng dụng được phát triển trong sự hiện diện của WiFi cung cấp kết nối mạng tốt. Tuy nhiên điều quan trọng là thử nghiệm các ứng dụng trong thế giới thực mà người dùng có thể không có quyền truy cập vào WiFi. Thông thường khi mọi người đang di chuyển, kết nối mạng là không liên tục với kết nối được giảm một lần trong một. Tốc độ mạng cũng thay đổi tùy theo vị trí của người dùng và loại kết nối mà họ đang trả. Ứng dụng phải có khả năng xử lý các tình huống này một cách chuyên nghiệp và chúng phải được kiểm tra.
9. Thử nghiệm cập nhật ứng dụng trên Điện thoại di động + web Ứng dụng di động của bạn có một thành phần phía máy chủ hoặc một dịch vụ web mà nó sử dụng không? Ứng dụng di động có cần cập nhật khi phần tử phía máy chủ được cập nhật không? Nếu có, đảm bảo có một trường hợp kiểm thử để theo dõi điều đó nhằm tránh bất kỳ lỗi của con người.
10. Kiểm tra gián đoạn ứng dụng dành cho thiết bị di động Có nhiều sự kiện khác nhau có thể làm gián đoạn dòng chảy của ứng dụng của bạn. Ứng dụng cần phải được xử lý và được test trong các trường hợp:
- Cuộc gọi đến
- Tin nhắn văn bản
- Thông báo về ứng dụng khác
- Lưu trữ thấp
- Pin yếu
- Pin đã chết
- Không lưu trữ
- Chế độ máy bay
- Kết nối liên tục
- Màn hình chính nhảy
- Chế độ ngủ
11. Kiểm thử chế độ bảo mật của ứng dụng di động Bảo mật và bảo mật dữ liệu là điều cực kỳ quan trọng trong các ca kiểm thử ngày nay. Người dùng đang lo lắng về dữ liệu và các thông tin của họ bị tiết lộ thông qua các ứng dụng dễ bị công kích.
- Ứng dụng của bạn có lưu trữ thông tin thanh toán hoặc chi tiết thẻ tín dụng không?
- Ứng dụng của bạn có sử dụng các giao thức mạng an toàn không?
- Liệu chúng có thể được chuyển sang những nơi không an toàn không?
- Ứng dụng có yêu cầu cho phép nhiều hơn nó cần?
- Ứng dụng của bạn có sử dụng các chứng chỉ không?
- Ứng dụng của bạn có sử dụng 1 ID thiết bị như mộtđịnh danh không?
- Ứng dụng của bạn có yêu cầu người dùng được xác thực trước khi họ được phép truy cập dữ liệu của họ không?
- Có số lần đăng nhập tối đa trước khi chúng bị khóa không? Các ứng dụng nên mã hóa tên người dùng và mật khẩu khi xác thực người dùng qua mạng. Một cách để kiểm tra các kịch bản bảo mật liên quan là định tuyến dữ liệu di động của bạn thông qua một máy chủ proxy như OWASP Zed Attack Proxy và tìm lỗ hổng.
12. Kiểm thử thanh toán trong ứng dụng, quảng cáo và tích hợp cổng thanh toán Nếu ứng dụng của bạn sử dụng thanh toán trong ứng dụng, quảng cáo hoặc cổng thanh toán cho các giao dịch thương mại điện tử, bạn sẽ cần kiểm tra tính năng cuối cùng để đảm bảo rằng không có vấn đề gì trong các giao dịch. Kiểm thử tích hợp cổng thanh toán và quảng cáo sẽ cần tài khoản được tạo ra với các cổng Máy chủ và Cổng thanh toán trước khi thử nghiệm có thể bắt đầu.
13. Kiểm tra hiệu suất ứng dụng di động Bạn đã kiểm tra xem hiệu suất của ứng dụng di động của bạn có giảm xuống không khi tăng kích thước của hộp thư, album, tin nhắn, nhạc hoặc bất kỳ nội dung nào khác liên quan đến ứng dụng? Thực hành tốt để kiểm tra ứng dụng của bạn về hiệu suất và các vấn đề về khả năng mở rộng. Với dung lượng lưu trữ lớn có sẵn ở mức giá phải chăng, người dùng thường không có nhiều dữ liệu / nội dung trên điện thoại thông minh. Người dùng thậm chí còn lưu trữ tin nhắn SMS trong nhiều năm trên điện thoại thông minh của họ. Nếu ứng dụng của bạn có nội dung / dữ liệu do người dùng tạo ra liên quan đến nó (Ví dụ Hình ảnh, tin nhắn SMS vvv) có thể phát triển đến mức lớn trong suốt cuộc đời của ứng dụng, thử nghiệm của bạn nên bao gồm các kịch bản này để xem ứng dụng hoạt động như thế nào. Trong trường hợp ứng dụng có một thành phần phía máy chủ, bạn cũng nên thử nghiệm các ứng dụng với số lượng ngày càng tăng của người sử dụng. Trong khi thử nghiệm này có thể được thực hiện bằng tay, chúng tôi có các công cụ như Little Eye và Neo Load có thể giúp bạn với hiệu suất và tải ứng dụng di động của bạn.
14. Các vấn đề Localization ứng dụng di động và thời gian Nếu ứng dụng của bạn là đa ngôn ngữ, nó cần phải được kiểm tra bằng các ngôn ngữ khác để đảm bảo rằng không có vấn đề mã hóa ký tự, vấn đề cắt ngắn dữ liệu hoặc bất kỳ vấn đề giao diện nào do độ dài Item khác nhau. Bạn cũng cần phải kiểm tra các ứng dụng để đảm bảo rằng họ xử lý các thay đổi múi giờ. Điều gì xảy ra nếu một người dùng di chuyển về phía trước qua múi giờ và trở về múi giờ trước của mình? Ứng dụng của bạn xử lý các mục có ngày và thời gian theo thứ tự nhưng không theo thứ tự thời gian?
15. Thử nghiệm tích hợp mạng xã hội Nhiều ứng dụng ngày nay có khả năng chia sẻ bài đăng từ ứng dụng trên tài khoản mạng xã hội của người dùng. Tuy nhiên, hầu hết người dùng muốn được nhắc trước khi bài đăng được xuất bản trên tài khoản của họ. Ứng dụng của bạn có xử lý điều này không? Họ có được phép chia sẻ thông điệp trạng thái đang được chia sẻ không?
16. Kiểm tra kết nối phần cứng - Bluetooth, WiFi, NFC, USB - Nhận dạng thiết bị Điện thoại thông minh đi kèm với rất nhiều lựa chọn kết nối. Nếu ứng dụng của bạn sử dụng các tùy chọn kết nối dưới đây (ví dụ Quản lý tệp hoặc trình chỉnh sửa ảnh cho phép bạn chia sẻ tệp, AirDroid cho phép bạn chuyển các tệp tin giữa PC và điện thoại di động qua wifi) sau đó bạn nên kiểm tra chúng để đảm bảo chúng hoạt động như kỳ vọng. Bạn cũng nên kiểm tra để xem cách họ xử lý lỗi khi kết nối bị mất trong quá trình chuyển / giao dịch. Cơ chế sử dụng phổ biến để chia sẻ dữ liệu hoặc giao dịch là:
- Bluetooth
- Wifi
- USB
- NFC
17. Tích hợp cửa hàng Google Play / Apple App và danh sách thiết bị được hỗ trợ / hạn chế Các chuyên gia tư vấn và tổ chức cung cấp dịch vụ end to end cũng nên bao gồm các trường hợp thử nghiệm để đảm bảo rằng ứng dụng dành cho thiết bị di động được triển khai thành công đến cửa hàng App store / Play và chỉ có sẵn cho các thiết bị được hỗ trợ. Điều này cũng có thể bao gồm xác nhận hợp lệ tất cả các văn bản, ảnh chụp màn hình, số phiên bản vv là một phần của danh sách ứng dụng.
Tài liệu tham khảo: http://istqbexamcertification.com/mobile-application-development-and-testing-checklist/
All rights reserved