יש להטמיע בדיקות מארח של ארכיון Java (JAR) כדי לספק קוד מלא כיסוי התוכנה שלך. פועלים לפי ההוראות לבניית יחידה מקומית בדיקות. כתבו בדיקות יחידה קטנות כדי לאמת פונקציה ספציפית ולא יותר.
דוגמה
קובץ התוכנית הבאה מספק דוגמה פשוטה לבדיקה למארח World JAR כדי להעתיק ולהתאים את עצמכם לצרכים שלכם: platform_testing/tests/example/jarhosttest/Android.bp
הוא תואם לקוד הבדיקה שנמצא בפועל ב: platform_testing/tests/example/jarhosttest/test/android/test/example/helloworld/HelloWorldTest.java
לנוחותכם, תוכלו למצוא כאן תמונת מצב של קובץ ה-Blueprint:
java_test_host {
name: "HelloWorldHostTest",
test_suites: ["general-tests"],
srcs: ["test/**/*.java"],
static_libs: [
"junit",
"mockito",
],
}
ההצהרה java_test_host
בהתחלה מציינת שמדובר ב-JAR
בדיקת המארח. הנה דוגמה לשימוש בו ב:
frameworks/base/tools/powermodel/Android.bp
הגדרות
בהמשך מופיעים הסברים על ההגדרות הבאות:
ההגדרה
name
נדרשת כשסוג המודולjava_test_host
שצוין (בתחילת הבלוק). ההגדרה הזו נותנת שם ל-JAR שנוצר יש את אותו השם והסיומת.jar
. ב בדוגמה הבאה,ה-JAR של הבדיקה שמתקבל נקראHelloWorldHostTest.jar
. לחשבון ההגדרה הזו גם מגדירה את שם היעד של המודול, כך שאפשר להשתמש בה ב-make [options] <HelloWorldHostTest>
כדי ליצור את הבדיקה ועל כל יחסי התלות שלו.name: "HelloWorldHostTest",
בעזרת ההגדרה
test_suites
, העסק יכול למצוא את הבדיקה בקלות רתמות הבדיקה של Federation. אפשר להוסיף כאן חבילות בדיקה אחרות, כמו CTS, כך שניתן לשתף את בדיקת המארח של JAR.test_suites: ["general-tests"],
ההגדרה
static_libs
מורה למערכת ה-build לשלב את של המודולים בעלי השם ל-APK שמתקבל של המודול הנוכחי. המשמעות היא שכל מודול בעל שם צפוי לייצר קובץ.jar
. תוכן המודול משמש לטיפול בהפניות של נתיבים במהלך הזמן להדר ומשולב ב-APK שנוצר.static_libs: [ "junit", ],