2013-05-26 27 views
7

Tôi muốn kết hợp cả Robolectric và Cucumber (JVM).Lồng ghép Robolectric và Cucumber

Hiện tại tôi có hai lớp ActivityStepdefs trong đó xác định hai bước cho quản lý hoạt động được xác định.

Lớp thứ hai của tôi là RoActivity Trường hợp ví dụ như một hoạt động được tạo từ tên lớp của nó và nơi Robolectric sẽ được sử dụng.

Khi tôi chạy RoActivityTest sử dụng RobolectricTestRunner bài kiểm tra trong lớp này đi, nhưng khi tôi chạy RunCukesTest (lớp để chạy các tính năng như kiểm tra JUnit) mã từ RoActivity không được chạy như một phần của Robolectric, tức là RunCukesTest tìm kiếm cho các tính năng trên của tôi dự án và kết hợp nó với phương thức bên trong ActivityStepdefs và cuối cùng lớp này sẽ gọi một phương thức từ RoActivity

Có thể chạy thử nghiệm với cả hai junit cả * người chạy?

Tôi không chắc chắn nhưng có lẽ nó có thể làm một cái gì đó như powermock, sử dụng quy tắc junit.

Trong trường hợp đó tôi nên xác định quy tắc nào?

* Dưa chuột và Robolectric

+0

Chỉ cần tự hỏi liệu bạn có thể tiến bộ về vấn đề này không? Tôi đang cố gắng làm điều gì đó tương tự và vẫn đang nghiên cứu các khả năng khác nhau – zabawaba99

+0

Chưa, nếu bạn muốn chúng tôi có thể cố gắng tìm một giải pháp cùng nhau – Axxiss

+0

Hãy xem https://github.com/mfellner/cucumber-jvm/tree/ dưa chuột-android. Repo này cho phép bạn sử dụng dưa chuột để thử nghiệm tích hợp trên Android. Tôi đã tìm thấy nó ngày hôm qua ngay sau khi tôi đã viết nhận xét này. Tôi gần như có nó chạy tốt. Nếu và khi tôi chạy nó, tôi sẽ viết nó như một câu trả lời với các hướng dẫn cho bất cứ ai khác. Nếu bạn nhận được nó chạy trước tôi, tôi sẽ khuyến khích bạn làm như vậy: P – zabawaba99

Trả lời

0

5 xu nhỏ của tôi.

Dưa chuột chủ yếu được sử dụng để thử nghiệm chấp nhận (sửa tôi nếu bạn sử dụng nó để kiểm tra đơn vị) và Robolectric chủ yếu được sử dụng để kiểm tra đơn vị.

Đối với tôi, nó là quá mức cần thiết để viết dưa chuột trong TDD. Và Robolectric vẫn không phải là android và tôi sẽ chạy thử nghiệm chấp nhận trên thiết bị thực hoặc ít nhất là trình giả lập.

+0

Có, là để thử nghiệm chấp nhận. Quay lại thời điểm tôi đã quan tâm đến việc chạy thử nghiệm chấp nhận một cách nhanh chóng mà không cần thiết bị. – Axxiss

+0

Độ phân giải của bạn cho điều này là gì? Tôi tò mò về việc làm điều tương tự –

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