12/08/2018, 14:46

Real Device Vs Emulator Testing: Ultimate Showdown

Thử nghiệm thiết bị thật: Thử nghiệm trên thiết bị thật cho phép bạn chạy các ứng dụng di động và kiểm tra chức năng của nó. Kiểm thử thiết bị thật đảm bảo rằng ứng dụng của bạn sẽ hoạt động thông suốt trên thiết bị của khách hàng. Emulators: Emulator là một chương trình cho phép thiết bị ...

Thử nghiệm thiết bị thật: Thử nghiệm trên thiết bị thật cho phép bạn chạy các ứng dụng di động và kiểm tra chức năng của nó. Kiểm thử thiết bị thật đảm bảo rằng ứng dụng của bạn sẽ hoạt động thông suốt trên thiết bị của khách hàng.

Emulators: Emulator là một chương trình cho phép thiết bị điện thoại của bạn mô phỏng theo những tính năng của một máy tính hoặc điện thoại khác bằng cách cài đặt phần mềm đó vào máy tính hoặc điện thoại của bạn.

Sự khác biệt giữa kiểm thử dựa trên Emulator và Simulator: Cả Emulators và Simulators đều là các thiết bị ảo. Một thiết bị ảo không phải là điện thoại thật nhưng phần mềm đó cung cấp nhiều chức năng giống như một chiếc điện thoại thật (trừ một vài chức năng như máy ảnh). Nhưng có một số điểm khác biệt giữa Emulator và Simulator như dưới đây:

Kiểm thử dựa trên Simulator Kiểm thử dựa trên Emulator
Mục đích của Simulator là để mô phỏng trạng thái bên trong của một đối tượng càng giống càng tốt. Emulator hướng tới mục đích mô phỏng theo các hành vi bên ngoài của một đối tượng càng giống càng tốt.
Simulator thích hợp để kiểm tra hành vi bên ngoài của điện thoại di động như tính toán, thực hiện giao dịch, ... Emulator thích hợp để kiểm tra hành vi nội bộ của điện thoại di động như phần cứng bên trong, phần mềm của nó,...
Simulator được viết bằng ngôn ngữ cấp cao. Emulator được viết bằng ngôn ngữ máy.
Simulator khó khăn trong việc debug. Emulator dễ dàng thực hiện debug.
Simulator chỉ là một phần của phần mềm ban đầu. Emulator thường là toàn bộ phần mềm ban đầu.

Những lợi ích tương quan giữa các ứng dụng dựa trên thiết bị thật và kiểm thử dựa trên emulator/simulator

Vấn đề Kiểm thử trên Emulator Kiểm thử trên thiết bị thật
Ứng dụng dựa trên tình hình Có những tình huống mà deadline để thực hiện là quá ngắn và việc mua các thiết bị di động cần thiết là không thể. Do đó cần thiết phải sử dụng emulator/simulator trong những trường hợp này để thực hiện kiểm thử các ứng dụng cần được kiểm tra. Thiết bị thật cho phép Tester có thể kiểm tra hầu hết các trường hợp có thể test cho các ứng dụng di động. Các thiết bị được sử dụng bằng cách thực hiện kết hợp nhiều ngón tay và mô phỏng theo cách sử dụng trong thực tế.
Dễ dàng có sẵn Emulator/simulator hầu hết đều là phần mềm miễn phí, có thể dễ dàng tải vể từ Internet và luôn sẵn sàng để thực hiện kiểm thử Các thiết bị thật cho phép thực hiện kiểm thử các vấn đề về performance như là thực hiện trong thời gian thực là 15h liên tục mà các Emulator/simulator không thể thực hiện được.
Dễ dàng mở ứng dụng thông Web thông qua URL Dễ dàng thực hiện kiểm thử ứng dụng web khi muốn mở các ứng dụng web. Người dùng chỉ cầ sao chép và dán URL. Thử nghiệm trên thiết bị thực cung cấp nhiều hơn về độ tin cậy.
Chụp ảnh màn hình trong các tình huống xuất hiện defect Chụp ảnh màn hình trên Emulator/simulator là rất dễ dàng khi chỉ cần sử dụng Microsoft Office. Kiểm thử trên các thiết bị thật rất hữu ích trong việc kiểm tra khả năng tương tác.
Kiểm tra các trường hợp Pin Emulator/simulator là không có khả năng mô phỏng các vấn đề về pin. Các thiết bị thật có thể dễ dàng thực hiện như nhau.
Kiểm tra các trường hợp gián đoạn Emulator/simulator không có khả năng mô phỏng các gián đoạn như SMS, cuộc gọi đến,... Các thiết bị thật có thể dễ dàng thực hiện như nhau.
Kiểm tra việc hiển thị màu sắc Emulator/simulator không thể mô phỏng chính xác màu sắc hiển thị của thiết bị khi thiết bị thực tế là trong sáng và tối. Các thiết bị thật có thể dễ dàng thực hiện như nhau.
Kiểm tra hiệu suất hoạt động Hiệu suất của Emulator/simulator có xu hướng chậm hơn so với thiết bị ban đầu. Các thiết bị thật có xu hướng thực hiện nhanh hơn so với các Emulator/simulator.
Vấn đề liên quan đến bộ nhớ Các bộ nhớ có sẵn của Emulator/simulator có xu hướng nhiều hơn so với các thiết bị thực vì vậy điều này có thể tạo ra các nhận thức sai lần cho người dùng khi kiểm thử cùng một vấn đề. Mức lưu trữ bộ nhớ của các thiết bị thật có xu hướng ít hơn so với Emulator/simulator.

Nhược điểm của Emulator/simulator và thiết bị thật

Emulator/simulator Thiết bị thật
Emulator/simulator không phải luôn luôn là giải pháp tốt nhất khi muốn kiểm thử performance của ứng dụng trong một thời gian dài. Các thiết bị thật rất tốn kém so với các mô Emulator/simulator. Qua đó các dự án hạn chế về ngân sách và thời gian thì ảnh hưởng đến tính khả thi của dự án.
Emulator/simulator chủ yếu phù hợp cho một số loại kiểm thử chức năng. Có rất nhiều loại thiết bị di động từ Apple, Samsung,... Việc xem xét các loại thiết bị cũng rất khó khăn trong khi ngân sách hạn chế về ngân sách và thời gian.
Emulator/simulator đôi khi không được hỗ trợ một số loại ứng dụng và trong những trường hợp này có thể cần phải mua bản vá lỗi phần mềm nhưng không luôn được miễn phí. Thiết bị thật khi được sử dụng trong giai đoạn phát triển, Unit Test và các mục đích tương tự thì khó khắn để kết nối với các IDE hơn các Emulator/simulator và điều này gây ra những vấn đề to lớn về debug và trong một dự án có hạn chế về thời gian thì rất có thể cản trở việc kết thúc dự án.
Không phải tất cả các Emulator/simulator đều được hỗ trợ hoàn toàn của các ứng dụng di động. Ví dụ simulator bada hỗ trợ Maemo (Nokia N900), Symbian Touch (Nokia N8) và Symbian không cảm ứng (Nokia E71) nhưng nó lại không hỗ trợ các thiết bị di động khác như Android. Theo như các chức năng kiểm thử liên quan, bada không hỗ trợ thử nghiệm trình duyệt web trực tiếp nhưng nó cho phép người sử dụng để kiểm tra và chỉ tạo ra các ứng dụng web và các widget. Để thử nghiệm với các thiết bị thực tế, các thiết bị cần phải được luôn luôn kết nối với cổng USB của máy. Vì vậy, nếu các cổng USB không làm việc đúng thì sẽ không thể thực hiện kiểm thử. Nếu không áp dụng biện pháp bảo mật đầy đủ cho các thiết bị di động thì có thể bị mất hoặc bị đánh cắp dẫn đến cản trở các nỗ lực chung của dự án. Tăng bảo mật cũng có thể tiếp tục tăng chi tiêu tổng thể liên quan đến dự án.
Người sử dụng phải gõ bằng tay các URL để mở các ứng dụng web để kiểm thử. Để giải quyết vấn đề này, cần phải tạo ra bookmark, dịch vụ URL ngắn hoặc gửi URL đến điện thoại di động sử dụng kết nối Bluetooth hoặc tạo ra các trang web có chứa một số URL-s. Việc áp dụng các thủ tục này sẽ tốn rất nhiều không gian bộ nhớ do đó ảnh hưởng đến hiệu suất tổng thể của ứng dụng.

Phần kết luận Xét đến vai trò của các ứng dụng di động ngày nay, việc kiểm thử các ứng dụng này sẽ rất phát triển và do đó họ đòi hỏi rất nhiều thử nghiệm để các ứng dụng được thực hiện theo yêu cầu. Testing trong cả hai emulator/simulator cũng như các thiết bị thực thực sự là cần thiết để duy trì tiêu chuẩn và đảm bảo chất lượng. Cân nhắc cẩn trọng cả những ưu và khuyết điểm của emulator/simulator và các thiết bị thật và tất cả những gì chúng ta cần là một sự kết hợp tối ưu của cả hai. Emulator/simulator được coi là rất thích hợp cho giai đoạn đầu của phát triển ứng dụng. Cần phải đảm bảo rằng việc kiểm thử ứng dụng được thực hiện phần lớn trên thiết bị thực tế trước khi ứng dụng đi vào sản xuất. Mỗi tổ chức cần phải lập chiến lược và kế hoạch cẩn thận để xác định ở giai đoạn nào thì nên kiểm thử trên thiết bị thực tế, và cũng cần phải quyết định bao nhiêu thiết bị là đủ để trang trải nhu cầu thị trường, và cũng như áp dụng những cách tốt nhất để quản lý các thiết bị.

0