Trước khi gửi các trường hợp thử nghiệm của mình, tôi muốn đảm bảo rằng chúng chạy ổn định. Có cách nào trong Android Studio để chạy cùng một trường hợp thử nghiệm/lớp trong vòng lặp nhiều lần không?Android Studio - chạy cùng một trường hợp thử nghiệm nhiều lần trong vòng
Trả lời
Chú thích thử nghiệm của bạn với @FlakyTest
. Xem http://developer.android.com/reference/android/test/FlakyTest.html
Ví dụ
@FlakyTest(tolerance = 3)
public void myTest() {
// Test that sometimes fails for no good reason
}
Cập nhật: Tôi thấy bạn đang sử dụng Espresso. Sau đó ... không, điều này không được hỗ trợ bởi android-test-kit
, thật không may. Nhưng đây là yêu cầu tính năng: https://code.google.com/p/android-test-kit/issues/detail?id=153
Chỉ cần sử dụng chu kỳ FOR
. Ví dụ:
@Test // test loop
public void openApp() {
int x;
for(x=1; x < 3; x++) {
PageObject open = new PageObject(driver);
waitUntilElmntToBeClckbl(open.sqlApp);
open.sqlApp.click();
driver.navigate().back;
}
Điều đó không đúng! Trước mỗi thử nghiệm, một số thiết lập/cấu hình sẽ được thực hiện. Với đề xuất của bạn, nó sẽ được thực hiện chỉ một lần và sau đó thử nghiệm sẽ chỉ chạy. Thứ hai, sau khi kiểm tra thất bại, nó sẽ thoát. Nó sẽ không tiếp tục chạy cho nhiều lần lặp lại. Thứ ba, đây là để kiểm tra tính ổn định của chạy thử và phải được thực thi trên mã thử nghiệm thực tế sẽ được gửi đi. – user846316
Bạn không cung cấp thông tin này trong câu hỏi của mình ... – Konstantin
Sử dụng parameterized kiểm tra JUnit với một số trường hợp của trống bộ tham số:
@RunWith(Parameterized.class)
public class RepeatedTest {
private static final int NUM_REPEATS = 10;
@Parameterized.Parameters()
public static Collection<Object[]> data() {
Collection<Object[]> out = new ArrayList<>();
for (int i = 0; i < NUM_REPEATS; i++) {
out.add(new Object[0]);
}
return out;
}
@Test
public void unstableTest() {
// your test code here
}
}
Một lớp kiểm tra tham số chạy tất cả các phương pháp thử nó một lần cho tất cả các mục trong phương pháp đánh dấu bằng @Parameters
chú thích . Nó thường được sử dụng để chạy một thử nghiệm với các giá trị ban đầu khác nhau, nhưng nếu không có giá trị để thiết lập, kiểm tra chỉ đơn giản là lặp đi lặp lại nhiều lần như bạn muốn.
Bài kiểm tra sẽ chỉ qua nếu tất cả các phiên bản vượt qua.
- 1. Chạy cùng một trường hợp thử nghiệm JUnit nhiều lần với các dữ liệu khác nhau
- 2. Làm cách nào để chạy nhiều trường hợp thử nghiệm Python trong một vòng lặp?
- 3. Trong Eclipse, làm thế nào để chạy một trường hợp thử nghiệm JUnit nhiều lần
- 4. Chạy Android thử nghiệm thiết lập() được gọi nhiều lần
- 5. Chạy thử nghiệm PHPUnit nhiều lần
- 6. Tổng hợp nhiều trường hợp thử nghiệm từ nhiều mô-đun để chạy trong PyDev TestRunner
- 7. Lặp lại thử nghiệm chạy thử nhiều lần
- 8. Android Studio 3 không chạy thử nghiệm trong Spock
- 9. Chạy thử nghiệm với hơn một triệu trường hợp thử nghiệm
- 10. Scalatest hoặc specs2 với nhiều trường hợp thử nghiệm
- 11. Trường hợp thử nghiệm riêng biệt trên nhiều tệp trong thử nghiệm google
- 12. nhiều trường hợp chạy của cùng một ứng dụng trong kitkat android
- 13. Visual Studio 2015 - Chạy thử nghiệm thất bại và bị mắc kẹt trong một vòng lặp
- 14. Trường hợp thử nghiệm GWT không chạy: JUnitFatalLaunchException
- 15. Cách chạy phương pháp thử nghiệm hoặc lớp học dưới dạng Thử nghiệm Android trong Android Studio
- 16. intelliji hoặc studio android - cắt ngắn để tạo trường hợp thử nghiệm phương pháp
- 17. Thử nghiệm nhiều thiết bị Android trên một máy
- 18. Chạy cùng một plugin nhiều lần trong Maven
- 19. Trường hợp thử nghiệm web Symfony JSON
- 20. Cách thêm tham số Á hậu thử nghiệm trong Android Studio 2.3 thử nghiệm thiết bị
- 21. Cách đặt chuỗi trường hợp thử nghiệm trong xUnit
- 22. Chạy cùng Asynctask nhiều lần theo thứ tự
- 23. Chạy thử nghiệm SpecFlow mà không cần Visual Studio
- 24. Làm cách nào để chạy nhiều bộ thử nghiệm thước đo cùng một lúc?
- 25. Chạy tất cả các thử nghiệm mở trong Visual Studio
- 26. Chạy thử nghiệm đơn vị JavaScript bên trong Visual Studio
- 27. Android AsyncTask - tránh nhiều trường hợp đang chạy
- 28. Chạy tập lệnh Greasemonkey trên cùng một trang, nhiều lần?
- 29. Java Robotium Android - Chạy cùng một thử nghiệm đồng thời trên hai thiết bị khác nhau
- 30. Thử nghiệm lần thử trong WPF
Tôi không nghĩ rằng IJ hỗ trợ điều đó. Nếu bạn không muốn chạm vào mã thử nghiệm của mình, bạn có thể làm 'set -e; cho tôi trong {1..20}; do ./gradlew connectedAndroidTest; done'. –