Làm cách nào để nghe phương pháp ActivityTestRule'sbeforeActivityLaunched() trong thử nghiệm android.Cách nghe phương thức beforeActivityLaunched của Android ActivityTestRule trong bài kiểm tra android
Giải pháp thay thế của tôi là tạo ActivityTestRule tùy chỉnh và cung cấp gọi lại trên hàm tạo. Nó là một thực hành xấu? Cùng một cách là OK để nghe phương thức khởi tạo của ActivityTestRule.
Đây là mã của tôi:
public class CustomActivityTestRule<A extends Activity> extends ActivityTestRule<A> {
public interface onBeforeListener{
void onBefore(String message);
}
private onBeforeListener listener;
public CustomActivityTestRule(Class<A> activityClass, onBeforeListener listener) {
super(activityClass);
}
@Override
protected void beforeActivityLaunched() {
super.beforeActivityLaunched();
listener.onBefore("before activity launch");
}
}
Trong lớp thử nghiệm android, tôi có thể làm một cái gì đó như:
@Rule public CustomActivityTestRule<MainActivity> mainActivityActivityTestRule = new
CustomActivityTestRule<MainActivity>(MainActivity.class, new CustomActivityTestRule.onBeforeListener() {
@Override
public void onBefore(String message) {
//do something before activity starts
}
});
Cùng cách thức mà nó có thể làm điều gì đó trên nguyên tắc junit tạo đối tượng. Có cách nào khác để lắng nghe quy tắc kiểm tra junit instantiating không?