כלי האימות של התוספים למצלמה מאפשר ליצרני המכשירים לוודא שהטמעת ספריית הספק של התוספים למצלמה של יצרן ציוד מקורי תקינה. הכלי כולל בדיקות אימות אוטומטיות וידניות.
בדיקות אימות אוטומטיות: אימות שהממשק של ספריית הספק הוטמע בצורה נכונה. לדוגמה, אם
CaptureProcessor
נדרש לצילום תמונות, הבדיקות מאמתות ש-ImageCaptureExtenderImpl#getCaptureStages()
מחזיר את המופעים הנדרשים שלCaptureStage
לצילום התמונות.בדיקות אימות ידניות: אימות האפקטים והאיכות של התמונות בתצוגה המקדימה ושל התמונות שצולמו. לדוגמה, הבדיקות מאפשרות ליצרני המכשירים לאמת באופן ידני אם אפקט עיבוד הפנים מוחל בצורה נכונה או אם עוצמת הבוקה מספיקה.
קוד המקור של כלי האימות הוא חלק מאפליקציית הבדיקה של התוספים במאגר Android Jetpack.
פיתוח כלי האימות של תוספים למצלמה
כדי ליצור את הכלי לאימות התוספים:
מורידים את קוד המקור של ספריית Android Jetpack. פרטים נוספים זמינים בקטע בדיקת הקוד שבקובץ ה-README של Android Jetpack.
יוצרים את קובץ ה-APK של
extensionstestapp
. כך אפשר להריץ בדיקות אימות ידניות.cd path/to/checkout/frameworks/support/
./gradlew camera:integration-tests:camera-testapp-extensions:assembleDebug
קובץ ה-APK יופיע בנתיב הבא:
path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apk
יוצרים את קובץ ה-APK של
androidTest
. קובץ ה-APK הזה מאפשר להריץ בדיקות אימות אוטומטיות.cd path/to/checkout/frameworks/support/
./gradlew camera:integration-tests:camera-testapp-extensions:assembleAndroidTest
קובץ ה-APK יופיע בנתיב הבא:
path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/androidTest/debug/camera-testapp-extensions-debug-androidTest.apk
הפעלת בדיקות אימות אוטומטיות
כדי להריץ את בדיקות האימות האוטומטיות, צריך להתקין את קובצי ה-APK של extensionstestapp
ו-androidTest
.
extensionstestapp
APKadb install -r path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apk
androidTest
APKadb install -r path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/androidTest/debug/camera-testapp-extensions-debug-androidTest.apk
הפעלת כל הבדיקות האוטומטיות
אחרי התקנת קובצי ה-APK, כדי להריץ את כל הבדיקות האוטומטיות לאימות ההטמעה של ספריית הספק, מריצים את הפקודה הבאה:
adb shell am instrument -w -r androidx.camera.integration.extensions.test/androidx.test.runner.AndroidJUnitRunner
אם כל הבדיקות עוברות, הפונקציה מחזירה את התוצאה OK. אחרת, דוח הבדיקה הסופי יציג כשלים במסוף אחרי שכל הבדיקות יסתיימו.
איור 1. תוצאה תקינה של בדיקות אוטומטיות
איור 2. בדיקות אוטומטיות עם תוצאות של כשלים
הרצת בדיקות אוטומטיות של כיתה ספציפית
כדי להריץ בדיקות אוטומטיות של מחלקה ספציפית, מציינים את השם והנתיב של מחלקת היעד. בדוגמה הבאה מוצגת הפקודה להרצת הבדיקות של הכיתה ImageCaptureTest
:
adb shell am instrument -w -r -e class **androidx.camera.integration.extensions.ImageCaptureTest** androidx.camera.integration.extensions.test/androidx.test.runner.AndroidJUnitRunner
הפעלת בדיקות אימות ידניות
בדיקות האימות הידניות נמצאות באפליקציית הבדיקה של התוספים. אחרי שמתקינים ומפעילים את אפליקציית הבדיקה של התוספים, עוברים למצב של כלי האימות על ידי הקשה על פריט התפריט בפינה השמאלית העליונה.
אחרי שמעבירים את הכלי למצב אימות, בדף הראשון מפורטות כל המצלמות שמכילות את היכולת REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE
. אם המצלמה לא תומכת באף מצב תוסף, הפריט המתאים ברשימה יהיה אפור.
איור 3. מצב הכלי לאימות
מקישים על אחת מהמצלמות כדי לראות את מצבי ההרחבה לבדיקה. מצבי התוספים שלא נתמכים במצלמה שנבחרה מוצגים באפור.
איור 4. מצבי התוספים שזמינים למצלמה
אימות התוצאות בתצוגה המקדימה
כדי לאמת את תוצאות התצוגה המקדימה, מתחילים בדיקה ידנית על ידי הקשה על מצב התוסף של המצלמה שנבחרה. לאחר מכן תוצג פעילות של צילום תמונה שמכילה את התצוגה המקדימה.
איור 5. תצוגה מקדימה של תמונה עם אפקט בוקה מופעל
הפעילות 'צילום תמונה' תומכת בפונקציות הבאות:
- התקרבות/התרחקות
- הקשה כדי להתמקד
- לחצן החלפת מצבי הפלאש
- EV +/-
- לחצן החלפת מצב של תוסף מופעל/מושבת
מוודאים שהפונקציות של הגדלת התצוגה/הקטנת התצוגה, הקשה להתמקד, מצבי הפלאש והפונקציות של EV +/- פועלות כצפוי בתצוגה המקדימה.
אימות התוצאות של התמונות שצולמו
כדי לצלם את התמונה, מקישים על הלחצן צילום (הלחצן העגול) בפעילות הצילום. הפעולה הזו תפעיל פעילות של אימות תמונה שבה תוצג התמונה שצילמתם.
איור 6. תמונה שצולמה עם אפקט בוקה מופעל
הפעילות של אימות התמונה כוללת את הפונקציות הבאות:
- כדי לשנות את גודל התמונה, עושים תנועת צביטה פנימה או החוצה.
- מחליקים שמאלה או ימינה כדי לעבור בין התמונות שצולמו.
- צילום מחדש
- שמירת התמונה בתפריט
מוודאים שהתמונה שצולמה נכונה ותואמת להגדרות של הזום, הקשה לצורך התמקדות, מצבי הפלאש וה-EV +/- שהוגדרו בזמן הצילום.
אם התוצאות שצולמו נכונות, מקישים על הלחצן PASS (סימן וי) בפינה הימנית התחתונה. אם לא, מקישים על הלחצן FAIL (סימן קריאה) בפינה השמאלית התחתונה.
הצגת תוצאות הבדיקה
אחרי שמוודאים שמצב התוסף עבר או נכשל, צבע הרקע והסמל של פריט הרשימה של מצב התוסף משתנים. בתצוגת הרשימה של כל המצלמות, הפריטים מוצגים בצבעים הבאים:
- רקע לבן: המצלמה תומכת לפחות במצב הרחבה אחד, ומוודאים שהמצב הנתמך תקין.
- רקע ירוק: המצלמה תומכת לפחות במצב הרחבה אחד. כל מצבי התוספים הנתמכים מאומתים, וכל התוצאות עוברות.
- רקע אדום: המצלמה תומכת לפחות במצב הרחבה אחד. כל מודלי התוספים הנתמכים עוברים אימות, כאשר לפחות תוצאה אחת של מודל תוסף נכשלת.
- רקע אפור: התכונה הזו לא זמינה.
איור 7. צבעים שמציינים את תוצאות הבדיקה של מצלמות ומצבי תוספים
פונקציות אחרות של כלי האימות
אחרי שכל הבדיקות יושלמו, הפעילות של רשימת המצלמות תספק את הפונקציות הבאות:
- ייצוא תוצאות הבדיקה: ייצוא תוצאות הבדיקה כקובץ CSV לתיקייה
Documents/ExtensionsValidation
. - איפוס: ניקוי כל תוצאות הבדיקה שנשמרו במטמון.
- אפליקציית תוספים לדוגמה: מעבר למצב של אפליקציית תוספים לדוגמה.
אחרי השלמת הבדיקה, אפשר לייצא את תוצאות הבדיקה. אם נתקלתם בבעיה וצריך לאמת מחדש גרסה חדשה של הטמעת ספריית הספק עם הפתרונות, צריך לאפס את תוצאות הבדיקה הקודמות ולהריץ מחדש את כל מצבי התוספים הנתמכים בכל המצלמות כדי לוודא שהבעיות תוקנו.