Bu sayfada, Android 16 QPR2 veya daha yeni sürümlerde Better Together CTS Verifier (CTS-V) testlerini kullanmayla ilgili talimatlar yer almaktadır.
Ana makine tarafında çok cihazlı testler ayarlama
Bu bölümde, çok cihazlı testlerin nasıl ayarlanacağı açıklanmaktadır.
- Masaüstü makinenizin CTS için işletim sistemi gereksinimlerini karşıladığını doğrulayın.
Masaüstü yazılımını yükleme başlıklı makalenin 2. ve 5. adımlarını uygulayarak adb, AAPT2 ve Python'ın masaüstünüze doğru şekilde yüklendiğini doğrulayın.
- Python sürümünüz 3.11 veya daha yeni olmalıdır. Python sürümünüzü belirlemek için
python3 --versionkomutunu çalıştırın. Sürüm 3.11'den düşükse en son resmi Python sürümünü yükleyin. Daha fazla bilgi içinpython.org'ın İndirilenler bölümüne bakın. - Bazı testler için ana makinede Python
venvmodülü bulunması gerekir. Debian ve Ubuntu sistemlerinde bu modül varsayılan olarak yüklü olmayabilir. Python sürümünüzdevenvmodülünün olup olmadığını belirlemek içinpython3 -m venv venvkomutunu çalıştırın. Bu komut başarısız olursa bir hata mesajı gösterilir.python3.x-venvpaketini yüklemek için talimatları uygulayın.
- Python sürümünüz 3.11 veya daha yeni olmalıdır. Python sürümünüzü belirlemek için
Her biri CTS-V kurulu olan, teste tabi iki eşleşen cihaz (DUT) hazırlayın.
- DUT kurulumu hakkında bilgi edinmek için DUT'u kurma başlıklı makaleyi inceleyin.
- CTS-V'yi ayarlama talimatları için Kurulum başlıklı makaleyi inceleyin.
Test türünüzün kurulum bölümüne gidin:
- NFC testleri için NFC testlerini ayarlama başlıklı makaleyi inceleyin.
- Kablosuz AP bağlantısı testleri için Kablosuz AP bağlantısı testlerini ayarlama başlıklı makaleyi inceleyin.
- CDM modülünü test etmek için Standart iki cihazlı testleri ayarlama'ya, ardından CDM testlerini ayarlama'ya gidin.
Testiniz bu listede yoksa Standart iki cihazlı testler oluşturma bölümüne gidin.
NFC testleri ayarlama
NFC testlerinde bir test edilen cihaz ve bir PN532 NFC çipi kullanılır.
NFC testlerini ayarlamak için:
- PN532 NFC çipi satın alın. All-In-One PN532'yi öneririz.
DUT'ta Ayarlar uygulamasına gidin.
NFC'yi etkinleştirin.
NFC çipini konumlandırın:
Telefonlar için DUT'un NFC okuyucusunu Şekil 1'de gösterildiği gibi konumlandırın:

Şekil 1. NFC çipinin konumu.
Diğer cihaz türlerinde çipi, cihazın NFC anteninin yanına yerleştirin.
PN532 NFC çipini USB kablosu kullanarak test iş istasyonunuza bağlayın.
İsteğe bağlı: Kablosuz AP bağlantı testleri ayarlama
Kablosuz erişim noktası (AP) bağlantı testleri (CtsWifiConnectionTests), bir test cihazı ile AP arasındaki bağlantıyı test eder. Bu testleri çalıştırmanızı önemle tavsiye ederiz ancak CTS-V Android 16 16 QPR2'de bu testler zorunlu değildir.
Bu testler için bir DUT ve OpenWrt Banana Pi R3 AP gerekir.
Kablosuz AP bağlantı testlerini ayarlamak için:
Banana Pi R3 AP'yi satın alın ve kurun. Daha fazla bilgi için Banana Pi BPI-R3 AP'yi kurma başlıklı makaleyi inceleyin.
İsteğe bağlı: Korumalı kutunuz yoksa JTP-SR101 korumalı kutusunu öneririz. Aşağıdaki bilgileri kullanarak bu kutuyu satın alın:
Dong Guan Zheng Sheng Electronics Technology Co., LTD
Bohui Industrial Park, Panlong Road, Liaobu Town, Dongguan City, Guangdong Province, Çin
İletişim: Forest Pan
E-posta: forest.pan@jtpmak.cn
Telefon (Çin): +86 18676993556Test edilen cihazı ve AP'yi ana makineye bağlayıp RF koruma kutusuna yerleştirin. Test edilen cihaz ile AP arasında en az 10 cm mesafe olmalıdır. Şekil 2'de bu yapılandırma gösterilmektedir:

Şekil 2. Kalkan kutusunda test cihazı ve AP.
AP'ye ana makineden erişilebildiğini doğrulamak için SSH'yi kullanın.
Standart iki cihazlı testler ayarlama
Varsayılan iki cihaz kurulumu için:
- Birbiriyle eşleşen iki Android DUT'u yaklaşık 20 cm arayla yerleştirin.
Temiz bir ortam oluşturmak için her iki cihazı da koruyucu bir kutuya yerleştirin.
İsteğe bağlı: Kablosuz bağlantıda hata ayıklama için OTA sniffer'ı ayarlayın.
CDM testleri oluşturma
test_permissions_sync() test durumu, testin yürütüldüğü cihazların derleme türüne bağlı olarak farklı davranışlar gösterir. Hata ayıklanabilir (userdebug veya eng) ve hata ayıklanamayan (user) derlemelerin her ikisinin de OEM'ler tarafından test edilmesi ve her ikisi için de testlerin başarılı olması kritik önem taşır.
Muafiyet
İzin senkronizasyonu API'si uygulaması için CDD maddesi, yalnızca cihazlar arasında güvenli bir kanal üzerinden verilerin başarılı bir şekilde aktarılabilmesini gerektirir. Güvenli kanal uygulaması bir CDD uygunluk şartı olmadığından bu test, hata ayıklanamayan (kullanıcı) derlemelerde atlanabilir ancak yalnızca CDM izinleri senkronizasyon özelliğini desteklemeyi devre dışı bırakmak istiyorsanız.
Testler, hata ayıklanabilir derlemelerde istisnasız olarak başarılı olmalıdır.
Hata ayıklanamayan derlemelerde test için ön koşullar
Önceki muafiyet maddeleri kapsamında muaf değilseniz aşağıdaki ön koşulları karşıladığınızı doğrulayın.
Güvenli kanal, donanımın güvenilirliğini doğrulamak için AVF'yi (AttestationVerificationFramework) kullanır. Her iki tarafın oluşturduğu onaylar, sistemlerinde yetkisiz değişiklik yapılmadığından emin olmak için kendileriyle ilgili çeşitli bilgiler içerir. AVF, doğrulama işlemi sırasında aşağıdaki durumları kontrol eder:
- Cihazın internet erişimi olmalıdır.
- Cihazda Doğrulanmış Başlatma kullanılır ve derleme, geliştirme anahtarıyla değil yayın anahtarıyla imzalanmalıdır.
- Cihazın bootloader'ı kilitli olmalıdır. Ayrıntılı talimatlar için önyükleyiciyi kilitleme başlıklı makaleyi inceleyin.
- İşletim sistemi, temel başlatma ve temel satıcı yama düzeyleri 12 ay içinde olmalıdır. Bir yıldan eski derlemeleri kullanmayın.
Cihaz doğrulama, satıcı tarafından onaylanmış kök sertifikalardan biriyle desteklenir. Güvenilir kök sertifikalarınızı
vendor_required_attestation_certificates.xmlkaynak yer paylaşımında belirtin.
Ana makine tarafında çok cihazlı testler çalıştırma (AOSP 16 veya sonraki sürümler)
CTS Verifier 16, ana makine tarafında çok cihazlı testler için destek sunar. Bu testler, cihazda manuel test işlemi yerine ana makinede otomatik komut dosyaları kullanılarak yürütülebilir. Her test tamamlandıktan sonra sonuçlar otomatik olarak DUT'a yüklenir ve CTS Verifier uygulamasında gösterilir.
Bu bölümde, ana makine tarafında çok cihazlı testlerin nasıl çalıştırılacağı açıklanmaktadır.
Çok cihazlı testler çalıştırma
Çok cihazlı test çalıştırmak için:
Test iş istasyonunuzda, CTS-V zip paketinin açıldığı dizinden
cts-v-hostkonsolunu başlatın:./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefedDUT'taki CTS Verifier uygulamasında Host-side Tests'i (Ana Taraf Testleri) tıklayın. Şekil 3'te CTS Verifier uygulamasındaki ana makine tarafı testleri gösterilmektedir:
Şekil 3. CTS Doğrulayıcı uygulamasında ana makine tarafı çok cihazlı testler.
Test tarafında çok cihazlı test modüllerinin listesi gösterilir.
Çalıştırmak istediğiniz test modülünün adını belirleyin. Örneğin, CompanionDeviceManager modülü CtsCompanionDeviceManagerMultiDeviceTestCases olarak listelenir.
cts-v-host konsolunda aşağıdaki komutu çalıştırın:
run cts-v-host -m test_module_nameÖrneğin:
run cts-v-host -m CtsCompanionDeviceManagerMultiDeviceTestCasesxTS konsolu testleri çalıştırmayı tamamladıktan sonra sonuçlar CTS Verifier uygulamasında görünür. Yeşil işaretli testler başarılı olmuştur. Kırmızı işaretli testler başarısız oldu. Şekil 4'te, CtsCompanionDeviceManager testleriyle ilgili örnek sonuçlar gösterilmektedir:
Şekil 4. CTS Doğrulayıcı uygulamasında ana makine tarafı çok cihazlı test sonuçları.
İsteğe bağlı: Kablosuz erişim noktası bağlantı testleri yapın
Kablosuz AP bağlantı testleri çalıştırmak için aşağıdaki adımları uygulayın:
Test yatağı yapılandırma dosyasını (
WifiConnectionTestbed.yaml) düzenleyin. Bu dosya, CTS-Verifier'ın sıkıştırılmamış olduğu dizinde bulunur:./android-cts-verifier/android-cts-v-host/testcases/CtsWifiConnectionTests/x86_64/connection/WifiConnectionTestbed.yamlhostnamealanının değerini, yerel SSH ayarlarınıza göre AP'nin IP adresiyle değiştirin. IP adresini belirlemek için AP'nin IP adresini bulma başlıklı makaleyi inceleyin.Aşağıdaki örnekte,
hostnamealanınınWifiConnectionTestbed.yamldosyasındaki konumu gösterilmektedir:TestBeds: - Name: WifiConnectionTestbed Controllers: # Specify settings for the AP. OpenWrtDevice: - hostname: AP-IP skip_init_reboot: Truects-v-host konsolunda aşağıdaki komutu çalıştırın:
run everything -m CtsWifiConnectionTests
Çok cihazlı testlerle ilgili sorunları giderme
Bu bölümde, olası sorunlarla ilgili sorun giderme yardımı sağlanır.
NFC testleri sırasında GetFirmwareVersion için yanıt yok sorununu düzeltme
Çoklu cihaz testlerini çalıştırırken verify_firmware_version RuntimeError: No response
for GetFirmwareVersion mesajını alırsanız testler PN532 NFC kartına erişemez.
Bu sorunu düzeltmek için ana makinenizde PN532 NFC kartı tarafından kullanılan seri yolunu (ör. dev/ttyUSB1) belirleyin, ardından konsolda --module-arg bağımsız değişkenini kullanarak manuel olarak belirtin:
run cts-v-host -m CtsNfcHceMultiDeviceTestCases --module-arg CtsNfcHceMultiDeviceTestCases:pn532_serial_path:/dev/ttyUSB1
NFC testleri sırasında "İşlem başarısız oldu" hata mesajını düzeltme
Tüm NFC test senaryolarında Transaction failed, check device logs for more
information. mesajını alıyorsanız bunun nedeni muhtemelen DUT'un NFC çipinin PN532'yi algılayamamasıdır.
Ana makineye bağlı birden fazla cihazınız varsa ve bunlardan bazılarının üzerinde PN532 yoksa yanlış DUT seçilmiş olabilir. Daha fazla bilgi için NFC testlerini ayarlama başlıklı makaleyi inceleyin.
Bu sorunu düzeltmek için aşağıdakilerden birini yapın:
-sişaretini kullanarak ana makine tarafındaki test komutunuzda doğru DUT'un seri numarasını ayarlayın.DUT dışındaki tüm cihazların ana bilgisayarla bağlantısını kesin.
CDM test durumu test_permissions_sync yoksayılıyor
Test, hata ayıklanamayan cihazlarda çalıştırılıyorsa muaf olup olmadığınızı kontrol edin. Aksi takdirde, her iki cihazın da ön koşulları karşıladığını doğrulayın.