對於我的Android儀器測試,我需要一些額外的入口點到我的課。這些方法並未在實際應用中使用。我的想法是用test_
開始他們,並有一個通用的規則,排除他們優化。這是我得到了多少:如何保持我的測試方法與proguard.cfg
-keepclassmembers class com.xxx.**.* {
public ** test_*();
public ** test_* (**);
public static ** test_*();
public static ** test_* (**);
}
但它仍然無法正常工作。 public static void test_destroy (final android.content.Context context)
和private void dropTables (final SQLiteDatabase db)
剛剛從代碼中刪除。我不知道爲什麼。
如何正確使用通配符模式?
請注意,你必須要小心,您所使用的@VisibleForTesting註釋是在.class文件可用。例如,android.support.annotations.VisibleForTesting具有SOURCE的RetentionPolicy,所以它不會被保留,因此不能被proguard使用。 – 2015-09-10 07:34:03