Test çalıştırıcı, çağrı akışı yürütme birimidir. Testler burada çalıştırılır.
Arayüzler
Test çalıştırıcıları, IRemoteTest arayüzü aracılığıyla tanımlanır. Bu arayüz, testler çalıştırıldığında çağrılacak basit bir run
yöntemi uygulamanızı sağlar.
Bu sayede, test çalıştırmanın en basit tanımı gerçekleşir. Ancak pratikte test yazarlarının testlerini doğru şekilde yazmak için daha fazla bilgiye (genellikle derleme ve cihaz bilgileri) ihtiyacı vardır. Aşağıdaki arayüzler tam da bu noktada fayda sağlar.
Temel
Bu iki arayüz, çoğu testin temel ihtiyaçlarını temsil ettiğinden günümüzde en yaygın olarak kullanılan arayüzlerdir.
- IBuildRetriever testin, test kurulumuyla ilgili tüm bilgileri ve yapıları içeren derleme sağlayıcı adımında oluşturulan
IBuildInfo
nesnesini almasını sağlar. - IDeviceTest, TF'nin test edilen cihazı temsil eden
ITestDevice
nesnesini almasına izin verir ve cihazla etkileşim kurması için bir API sağlar.
Gelişmiş
Test donanımı ile test çalıştırıcı arasında daha karmaşık etkileşimlere olanak tanıyan ek arayüzler vardır:
- ITestFilterReceiver, testin yalnızca belirli testleri çalıştırmak için bir filtre grubu almasına olanak tanır. Bu, testlerin bir alt kümesini çalıştırırken kullanışlıdır.
- ITestCollector, test çalıştırıcısının testleri gerçekten yürütmek yerine yalnızca kuru çalıştırmasına olanak tanır. Bu, tüm test durumlarının listesini toplamada faydalıdır.
Mevcut test çalıştırıcıları
Bazıları önemli test türleri için olmak üzere çeşitli test çalıştırıcıları mevcuttur:
- AndroidJUnitTest / InstrumentationTest (cihaz tarafında AJUR ile ilişkilendirilir)
- googletest kitaplığı ile GTest (cihaz ve ana makine tarafı)
- Ana makine tarafından yönlendirilen testler (ana makinede çalıştırılan ve cihazı oradan çağıran Java testleri)
- Saf Java birim testleri (Koşucumuz her ikisini de yapar)
- Python testleri
- Karşılaştırma kitaplığı ile Google Benchmark testleri
Yukarıdakilerin yanı sıra çok sayıda özel test çalıştırıcı vardır. Bunlar, önyükleme testi gibi bazı işlevsel testler için özel amaçlara hizmet eder.
Yeni bir test çalıştırıcı yazma
Yeni bir test çalıştırıcı yazmayla ilgili daha fazla bilgiyi test yazma bölümünde bulabilirsiniz.