2014-06-11 15 views
7

Tôi hiện đang xây dựng một ứng dụng Android và tôi sau khi thiết lập thử nghiệm tốt nhất để làm cho ứng dụng của tôi chống đạn:) Nếu có bất cứ điều gì nhỏ/lớn mất tích xin vui lòng khen ngợi! :)Mọi thứ còn thiếu trong thiết lập thử nghiệm dự án Android của tôi?

Vì vậy, thử nghiệm của tôi đi một chút như thế này: (nhớ rằng ứng dụng của tôi có một máy chủ back-end)

  1. kiểm tra Junit với Robolectric ở phía ứng dụng chống lại tất cả các phiên bản android hỗ trợ .
  2. kiểm tra Junit với mockito ở phía máy chủ.
  3. Kiểm tra tích hợp với robolectric và một phiên bản thực của máy chủ back-end. CẬP NHẬT: điều này có thể sẽ kết thúc được thử nghiệm thiết bị đo đạc và một ví dụ thực sự của máy chủ back-end như robolectric và các dịch vụ google play mà chúng tôi đang sử dụng trong dự án là không đi.
  4. Kiểm tra thiết bị đo đạc với thực tế của máy chủ back-end đối với nhiều thiết bị (độ phân giải màn hình khác nhau, v.v.) nhưng chỉ với một phiên bản API android - có thể là phiên bản được hỗ trợ mới nhất. Điều này có nghĩa là khởi động nhiều thiết bị ảo Android và chạy thử nghiệm trên từng thiết bị. Tôi đọc rằng người ta có thể chụp ảnh màn hình của màn hình, nhưng tôi không chắc chắn làm thế nào chúng ta có thể xác minh rằng các ảnh chụp màn hình là OK.
  5. Chạy ứng dụng với nhân vật khỉ, một lần nữa với máy chủ thực.
  6. Kiểm tra hiệu suất nơi chúng tôi chủ yếu nhận được để kiểm tra sự tương tác của nhiều thiết bị với máy chủ back-end cùng một lúc. Không hoàn toàn chắc chắn làm thế nào người ta có thể chạy thử nghiệm như vậy cho android.

Tất cả các thử nghiệm này sẽ chạy trên máy chủ TeamCity CI. Chúng tôi đang cố gắng sử dụng robot nhiều lần trong số các thử nghiệm này càng tốt, vì nó nhanh hơn việc tải các thử nghiệm trên thiết bị.

Câu hỏi của tôi là, liệu có bất cứ điều gì lớn/nhỏ mất tích từ thiết lập của tôi, hoặc là có bất kỳ khuôn khổ mà có thể làm cho nó dễ dàng hơn để chúng tôi chạy tất cả các xét nghiệm này ngoài việc sử dụng các robolectric/android maven plugin/TeamCity?

+1

Tôi nghĩ thiết lập của bạn hoàn hảo hơn các phương pháp khác. Tôi sẽ thêm một số thử nghiệm chấp nhận tự động với appium hoặc calabash. Nhưng hầu hết có lẽ quan điểm của bạn # 4 bao gồm điều này. Tôi không có bất kỳ kinh nghiệm với các bài kiểm tra cụ :) –

+0

Kiểm tra thiết bị đo đạc và trình kiểm tra web khác nhau. Với appium bạn không thể truy cập các lớp ứng dụng. Vì vậy, họ cảm thấy thực tế hơn, hơi chậm hơn nhiều so với espresso có quyền truy cập vào các lớp ứng dụng. – nenick

Trả lời

2

Ngoài việc sử dụng Robolectric, Robotium đáng để kiểm tra. Thông tin thêm về nó được thảo luận ở đây (https://stackoverflow.com/q/522312/3152743) cùng với các phương pháp kiểm tra khác mà bạn có thể quan tâm.

+1

Tôi đã thực hiện khá nhiều điều tra về chủ đề này, tôi sẽ cung cấp thông tin cập nhật về vấn đề này sau một tuần. Có rất nhiều khung mà tôi không biết. Robotium là thực sự tốt, nhưng có vẻ như espresso là mới hơn và giải quyết các vấn đề đồng bộ hóa trong khi thiết bị. –

Các vấn đề liên quan