Google, Siyah topluluklar için ırksal eşitliği ilerletmeye kararlıdır. Nasıl olduğunu gör.
Bu sayfa, Cloud Translation API ile çevrilmiştir.
Switch to English

Yeni Bir Yerel Test Örneği Ekleme

Android platformu geliştirmede yeniyseniz, tipik bir iş akışını göstermek için sıfırdan yeni bir yerel test eklemenin bu tam örneğini yararlı bulabilirsiniz. Ayrıca, C ++ için gtest çerçevesine de aşina değilseniz, ek belgeler için lütfen gtest proje sitesini inceleyin .

Bu kılavuz, örnek olarak hizmet etmek için aşağıdaki testi kullanır:

Merhaba Dünya Yerel Testi

Devam etmeden önce kaba bir izlenim edinmek için önce koda göz atmanız önerilir.

Kaynak bir konuma karar verme

Genellikle ekibinizin kodu kontrol etmek için önceden belirlenmiş yerler ve test eklenecek yerler vardır. Çoğu takım tek bir git deposuna sahiptir veya başka bir ekiple paylaşır ancak bileşen kaynak kodunu içeren özel bir alt dizine sahiptir.

Bileşen kaynağınızın kök konumunun <component source root> olduğu varsayıldığında, çoğu bileşenin altında src ve tests klasörleri ve Android.mk gibi bazı ek dosyalar (veya ek .bp dosyalarına .bp ) bulunur.

Yepyeni bir test eklediğiniz için, bileşen src yanında tests dizini oluşturmanız ve bunu içerikle doldurmanız gerekir.

Bazı durumlarda, farklı test paketlerini tek tek ikili dosyalara paketleme gereği nedeniyle ekibiniz tests altında başka dizin yapılarına sahip olabilir. Ve bu durumda, tests altında yeni bir alt dizin oluşturmanız gerekir.

Örneklemek gerekirse, tek bir tests klasörü bulunan bileşenler için tipik bir dizin anahatları şunlardır:

 \
 <component source root>
  \-- Android.bp (component makefile)
  \-- AndroidTest.xml (test config file)
  \-- src (component source)
  |    \-- foo.cpp
  |    \-- ...
  \-- tests (test source root)
      \-- Android.bp (test makefile)
      \-- src (test source)
          \-- foo_test.cpp
          \-- ...
 

ve burada birden çok test kaynağı dizinine sahip bileşenler için tipik bir dizin anahatları verilmiştir:

 \
 <component source root>
  \-- Android.bp (component makefile)
  \-- AndroidTest.xml (test config file)
  \-- src (component source)
  |    \-- foo.cpp
  |    \-- ...
  \-- tests (test source root)
      \-- Android.bp (test makefile)
      \-- testFoo (sub test source root)
      |   \-- Android.bp (sub test makefile)
      |   \-- src (sub test source)
      |       \-- test_foo.cpp
      |       \-- ...
      \-- testBar
      |   \-- Android.bp
      |   \-- src
      |       \-- test_bar.cpp
      |       \-- ...
      \-- ...
 

Yapısından bağımsız olarak, tests dizinini veya yeni oluşturulan alt dizini, örnek gerrit değişikliğindeki native dizindekine benzer dosyalarla doldurun. Aşağıdaki bölümler her bir dosyanın ayrıntılarını açıklayacaktır.

Kaynak kodu

Örnek için Merhaba Dünya Yerel Testi'ne bakın.

Açıklamalı kaynak kodu aşağıda listelenmiştir:

 #include <gtest/gtest.h>
 

Başlık dosyası gtest için içerir. Dosya ekleme bağımlılığının, makefile dosyasında BUILD_NATIVE_TEST kullanılarak otomatik olarak çözümlendiğini BUILD_NATIVE_TEST

 #include <stdio.h>

TEST(HelloWorldTest, PrintHelloWorld) {
    printf("Hello, World!");
}
 

gtestler TEST makrosu kullanılarak yazılır: ilk parametre test senaryosu adı, ikincisi test adıdır; test ikili adıyla birlikte, sonuç kontrol panelinde görüntülendiğinde aşağıdaki hiyerarşiyi oluştururlar:

 <test binary 1>
| \-- <test case 1>
| |   \-- <test 1>
| |   \-- <test 2>
| |   \-- ...
| \-- <test case 2>
| |   \-- <test 1>
| |   \-- ...
| \-- ...
<test binary 2>
|
...
 

Testleri gtest ile yazma hakkında daha fazla bilgi için belgelerine bakın:

  • https://github.com/google/googletest/blob/master/googletest/docs/Primer.md

Basit yapılandırma dosyası

Her yeni test modülünün derleme sistemini modül meta verileri, derleme zamanı bağımlılıkları ve paketleme talimatları ile yönlendirmek için bir yapılandırma dosyası olmalıdır. Çoğu durumda, Soong tabanlı Blueprint dosyası seçeneği yeterlidir. Ayrıntılar için Basit Test Yapılandırması'na bakın.

Karmaşık yapılandırma dosyası

Bunun yerine Ticaret Federasyonu kullanmak için, Android'in test koşum takımı olan Ticaret Federasyonu için bir test yapılandırma dosyası yazın.

Test yapılandırması, test sınıfını sağlamak için özel aygıt kurulum seçeneklerini ve varsayılan bağımsız değişkenleri belirtebilir.

Yerel olarak derleyin ve test edin

En yaygın kullanım durumları için Atest'i kullanın.

Daha yoğun özelleştirme gerektiren daha karmaşık durumlar için enstrümantasyon talimatlarını izleyin.