Eksiksiz kod sağlamak için Java arşivi (JAR) ana makine testleri uygulanmalıdır kapsayabilir. Yerel birim testleri oluşturma talimatlarını uygulayın. Belirli bir işlevi doğrulamak ve başka hiçbir şeyi doğrulamak için küçük birim testleri yazın.
Örnek
Aşağıdaki Blueprint dosyası, basit bir Hello World JAR ana makine testi örneği sunar. ihtiyacınıza göre uyarlayabilirsiniz: platform_testing/tests/örnek/jarhosttest/Android.bp
Bu, şu adreste bulunan gerçek test koduna karşılık gelir: platform_testing/tests/example/jarhosttest/test/android/test/example/helloworld/HelloWorldTest.java
Kolaylık sağlamak için Blueprint dosyasının anlık görüntüsü buraya eklenmiştir:
java_test_host {
name: "HelloWorldHostTest",
test_suites: ["general-tests"],
srcs: ["test/**/*.java"],
static_libs: [
"junit",
"mockito",
],
}
Baştaki java_test_host
beyanı bunun bir JAR olduğunu gösteriyor
ana makine testi. Bu özelliğin nasıl kullanıldığına dair bir örnek:
frameworks/base/tools/powermodel/Android.bp
Ayarlar
Ayarlarla ilgili açıklamalar için aşağıya bakın.
java_test_host
modül türü belirtildiğinde (bloğun başında)name
ayarı gereklidir. Bu ayar, modülünü belirtir ve elde edilen JAR aynı ada ve bir.jar
son ekine sahiptir. Aşağıdaki örnekte,sonuçta elde edilen test JAR'ının adıHelloWorldHostTest.jar
olarak belirlenmiştir. Ayrıca bu ayar, test modülünüzü ve tüm bağımlılıkları oluşturmak içinmake [options] <HelloWorldHostTest>
kullanabilmeniz amacıyla modülünüz için bir derleme hedefi adı da tanımlar.name: "HelloWorldHostTest",
test_suites
ayarı, testin ticari müşteriler tarafından kolayca bulunabilmesini sağlar. Federasyon test bandı. JAR ana makine testi paylaşılabilmesi için buraya CTS gibi başka test grupları da eklenebilir.test_suites: ["general-tests"],
static_libs
ayarı, derleme sistemine . Bu, her adlandırılmış modülün bir.jar
dosyası oluşturması gerektiği anlamına gelir. Modülün içeriği, eğitim sırasında sınıf yolu referanslarını çözümlemek için kullanılır. derleme süresini artırır ve sonuçta ortaya çıkan APK'ya eklenir.static_libs: [ "junit", ],