Her paketteki modül (AndroidTest.xml
ile tanımlanır), modülün bazı davranışlarını değiştirebilecek özel bir module_controller
nesnesi içerebilir:
Bazı koşullara bağlı olarak modülün çalıştırılıp çalıştırılmayacağı
BaseModuleController'ı uygulayarak
ve AndroidTest.xml
'a şu şekilde ekleyerek:
<object type="module_controller" class="com.android.tradefed.testtype.suite.module.<NAME>" />
Modül denetleyicisi, public abstract RunStrategy shouldRun(IInvocationContext context);
uygulamasına göre modülün çalıştırılıp çalıştırılmayacağını belirlemek için kullanılır.
Hatalarla ilgili bazı günlüklerin toplanıp toplanmayacağı
Tam bir paket çalıştırırken paket düzeyinde hatalarla ilgili bazı günlüklerin (ekran görüntüsü, hata raporu, logcat) toplanması istenebilir. Ancak bazı modüller için istenen belirli bir günlükte değer olmayabilir ve bu günlüklerin toplanması yalnızca zaman kaybına yol açar. Bu durumda, bir modül hangi günlüklerle ilgilendiğini açıkça belirtebilir:
<object type="module_controller"
class="com.android.tradefed.testtype.suite.module.TestFailureModuleController">
<option name="screenshot-on-failure" value="<true OR false>" />
<option name="bugreportz-on-failure" value="<true OR false>" />
<option name="logcat-on-failure" value="<true OR false>" />
</object>
NOT: Kontrolörlerin uygulanması, yeniden kullanılabilirliği en üst düzeye çıkarmak için mümkün olduğunca genel olmalıdır. Bir modülün koşuluna göre atlanması, modül sahibinin onayını almak için incelenmelidir.