Arsip Catatan Rilis Test

AndroidX Test Espresso 3.1.1, Runner 1.1.1, Rules 1.1.1, Monitor 1.1.1 AndroidTestOrchestrator 1.1.1, Core 1.1.0, Truth 1.1.0, JUnit 1.1.0 (13-12-2018)

Ini adalah rilis stabil AndroidX Test 1.1.0

  • Inti
    • Membuat aktivitas dukungan ActivityScenario yang memulai aktivitas lain

AndroidX Test Espresso 3.1.1-beta01, Runner 1.1.1-beta01, Rules 1.1.1-beta01, Monitor 1.1.1-beta01 AndroidTestOrchestrator 1.1.1-beta01, Core 1.1.0-beta01 Truth 1.1.0-beta01, JUnit 1.1.0-beta01 (06-12-2018)

  • Inti
    • Artefak ekstensi core-ktx kotlin baru! Mencakup ActivityScenario.launchActivity API yang cocok untuk kotlin
    • ActivityScenario API baru untuk meluncurkan aktivitas dengan intent kustom
    • ActivityScenario API baru untuk menerima hasil Activity
    • ActivityScenario kini dapat ditutup
  • Espresso
    • Mengubah withResourceNameMatcher dan HumanReadables agar kompatibel dengan API 28.
    • Memperbarui deskripsi ReplaceTextAction untuk menyertakan stringToBeSet
    • Mendukung Espresso dalam mode looper Robolectric yang dijeda.
  • JUnit
    • ActivityScenarioRule API baru, untuk meluncurkan dan menutup Activity secara otomatis saat penyiapan dan penguraian pengujian
    • Artefak ekstensi kotlin junit-ktx baru! Mencakup ActivityScenarioRule API yang cocok untuk Kotlin
  • Pelari
    • Perilaku paket -e dan testFile -e kini konsisten saat menerima paket
  • Kebenaran
    • Menambahkan bool, parcelable, dan parcelableAsType BundleSubject API

AndroidX Test Espresso 3.1.0, Runner 1.1.0, Rules 1.1.0, Monitor 1.1.0 AndroidTestOrchestrator 1.1.0, Core 1.0.0 Truth 1.0.0, JUnit 1.0.0 (24-10-2018)

  • Semua
    • Menetapkan minSdkVersion ke 14 dan targetSdkVersion ke 28
  • Espresso
    • Memperbaiki withContentDescription agar berfungsi dengan jenis non-string
    • Menambahkan dukungan untuk menggunakan Espresso di Robolectric
    • Masalah 72798625: Espresso ViewMatchers.withText tidak berfungsi saat textAllCaps diaktifkan
    • Menambahkan dukungan untuk memasukkan rangkaian peristiwa gerakan
  • Intent
    • Menambahkan API beta untuk mengambil daftar intent. Dimaksudkan untuk digunakan dengan pernyataan truth baru
  • Pelari
    • Menambahkan dukungan untuk aplikasi instan
    • Menghentikan androidx.test.runner.AndroidJUnit4 dan menggantinya dengan androidx.test.ext.junit.runners.AndroidJUnit4
  • Pantau
    • Menghentikan androidx.test.InstrumentationRegistry dan menggantinya dengan androidx.test.platform.app.InstrumentationRegistry dan androidx.test.core.app.ApplicationProvider
  • AndroidTestOrchestrator
    • Hanya mengaktifkan penanganan cakupan orchestrator jika argumen 'coverage' dan 'coverageFilePath' diteruskan.
    • Hanya menunggu debugger jika -debug ditetapkan, tetapi tidak untuk listingan kasus pengujian ATO. Tanda orchestratorDebug baru ditambahkan untuk men-debug orchestrator tersebut sendiri
  • Inti
    • Artefak baru! Mencakup API baru yang mendukung pengujian lokal dan di perangkat untuk:
      • Mengambil konteks: ApplicationProvider
      • Mengontrol siklus proses aktivitas: ActivityScenario(beta)
      • Builder untuk MotionEvent, PackageInfo
      • Class utilitas parceable
  • Kebenaran
    • Artefak baru! Mencakup subjek truth kustom untuk Notification, Intent, Bundle, Parcelable, dan MotionEvent
  • JUnit
    • Artefak baru! Menyertakan class runner JUnit androidx.test.ext.junit.runners.AndroidJUnit4 yang mendukung pengujian lokal dan di perangkat.

Espresso 3.0.2-beta1, Runner 1.0.2-beta1, Rules 1.0.2-beta1, Monitor 1.0.2-beta1, AndroidTestOrchestrator 1.0.2-beta1 (16-04-2018)

  • Espresso
    • Perubahan API yang Dapat Menyebabkan Gangguan:
      • Kami menyadarinya dalam Masalah 64062890 bahwa kami sebelumnya menggunakan Guava Optional dalam API publik kami. Mohon maaf atas kesalahan ini. Oleh karena itu, ada perubahan API publik yang dapat menyebabkan gangguan dalam rilis ini untuk mengatasi masalah ini. Kami memperkenalkan wrapper bermasalah pada class Guava Optional, bernama EspressoOptional, yang terletak pada namespace "android.support.test.espresso.util". Developer yang menggunakan Guava Optional API yang bocor harus mengubah impor dan referensi mereka untuk menggunakan EspressoOptional selama proses update ke versi baru ini. Kami mohon maaf atas ketidaknyamanan ini.
    • API onView() dan onData() sekarang ditandai @CheckReturnValue untuk mencegah terjadinya error
    • Memperbaiki file POM espresso-core agar tidak mengambil dependensi "rules", sebagai gantinya membuat POM espresso-intent mengambilnya. Seharusnya ini menjadi perubahan NoOp bagi developer karena espresso-intent tidak dapat digunakan tanpa espresso-core.
    • Masalah 65486414: Espresso tidak memiliki dependensi guava
    • Masalah 65576174: IdlingResourceRegistry.sync Espresso menyebabkan pengujian kedua gagal
    • Masalah 65568629: Espresso.onIdle tidak menggunakan IdlingRegistry
    • Masalah 69333598: espresso 3.0.1 tidak kompatibel dengan play-services-auth:11.6.0 dalam modul library android.
    • Masalah 64062890: Jenis Internal Optional yang diekspos oleh antarmuka AdapterViewProtocol
    • masalah 64091847: Espresso 3.0.0 TIDAK boleh bergantung pada runner pengujian
    • Masalah 73722050: espresso-contrib 3.0.2-alpha1 mengemas class android.arch.{lifecycle/core}
  • Remote Espresso
    • Ini adalah artefak baru. Kami memisahkan semua fungsi multi-proses Espresso di luar artefak espresso-core. Artefak ini lebih rapi dan mengurangi ukuran keseluruhan dan jumlah metode espresso-core secara signifikan.
  • Pelari
    • Memotong pelacakan tumpukan jika terlalu besar untuk transaksi binder. Karena AJUR perlu melaporkan kegagalan kembali ke AM melalui binder IPC, batas transaksi Binder tidak boleh terlampaui - yaitu 1 MB per proses.
    • Masalah 65828576: TestRequestBuilder mengalami error saat menjalankan pengujian dalam class dengan @Ignore
    • Masalah 37057596: Kami tidak menangani kegagalan dalam @BeforeClass
  • Aturan
    • Memastikan untuk merilis referensi tentang aktivitas yang sedang diuji setelah siklus proses diubah. Selama durasi pengujian, pengguna sekarang bisa memanipulasi Activity secara langsung menggunakan referensi yang diperoleh dari #getActivity(). Jika Activity selesai dan diluncurkan kembali, referensi yang ditampilkan oleh #getActivity() sekarang selalu mengarah ke instance terbaru Activity tersebut.
    • Masalah 64389280: GrantPermissionRule tidak menyediakan WRITE_EXTERNAL_STORAGE
    • Masalah 37065965: ActivityTestRule membocorkan aktivitas setelah orientasi diubah
    • Masalah 75254050: ActivityTestRule tidak mengupdate instance Activity selama perubahan konfigurasi
    • Masalah 64464625: Tidak dapat melakukan pekerjaan UI pada metode finish() Activity
  • AndroidTestOrchestrator
    • Memberikan tanda -e coverage true -e coverageFilePath /sdcard/foo/ untuk membuat file cakupan di lokasi yang ditentukan (Aplikasi harus memiliki izin untuk menulis ke lokasi yang ditentukan). Konvensi penamaan file cakupan sekarang terlihat seperti ini: com.foo.Class#method1.ec. Perlu diketahui bahwa tanda ini hanya didukung saat eksekusi dilakukan dalam mode terisolasi. Selain itu, tanda ini tidak dapat digunakan bersama tanda coverageFile AndroidJUnitRunner. Hal ini terjadi karena file cakupan yang dihasilkan akan saling menimpa.
    • Meneruskan tanda -e clearPackageData jika Anda ingin orchestrator menjalankan perintah pm clear context.getPackageName() dan pm clear targetContext.getPackageName() di antara pemanggilan pengujian. Perhatikan, konteks dalam perintah yang jelas adalah Aplikasi dalam konteks pengujian.
    • Memperbaiki - Saat menjalankan pengujian kosong, alias tidak ada @Test di dalam target, hasil pengujian berbeda dengan mode lama.
    • Masalah 72758547: Test Orchestrator menyebabkan Data Cakupan Jacoco tidak lengkap, hanya memiliki data eksekusi pengujian terakhir
    • Masalah 67916042: Android Test Orchestrator: Eksekusi dihentikan saat terjadi error Proses akibat OutOfMemory
    • Masalah 77752735: Orchestrator mengalami error untuk TransactionTooLargeException
    • Masalah 77549481: Test Orchestrator harus menjalankan "pm clear" Setelah Setiap Test

Espresso 3.0.2-alpha1, Runner 1.0.2-alpha1, Rules 1.0.2-alpha1, AndroidTestOrchestrator 1.0.2-alpha1 (05-12-2017)

  • Espresso

    • Intents sekarang memiliki respons yang dapat dipanggil, yang memungkinkan pengujian dijalankan setelah menangkap intent yang dipicu, tetapi sebelum menampilkan objek Instrumentation.ActivityResult.
  • Runner

    • Membagi artefak maven monitor com.android.support.test:monitor:<version>, untuk pengguna yang membutuhkan MonitoringInstrumentation tanpa fitur JUnit dan eksekusi pengujian.

      Jika Anda menggunakan com.android.support.test:runner:<version>, semuanya akan bekerja seperti yang diharapkan, karena Gradle otomatis menarik modul monitor sebagai dependensi modul runner.

    • Menambahkan flag newRunListenerOrderMode. Saat true, pemroses yang ditetapkan pengguna berjalan sebelum pemroses default. (Kami memperkirakan perilaku ini pada akhirnya akan menjadi default).

    • Masalah 65828576: TestRequestBuilder mengalami error saat menjalankan pengujian dalam class yang dianotasi dengan @Ignore (mandiri tanpa fitur JUnit atau eksekusi pengujian).

  • AndroidTestOrchestrator

    • Sekarang menangani pengujian kosong dengan cara yang sama seperti AndroidJUnitRunner yang tidak diorkestrasi.
    • Orchestrator sekarang dapat menangani output standar yang sangat besar dari AndroidJUnitRunner.

Espresso 3.0.1, Runner 1.0.1, Rules 1.0.1, AndroidTestOrchestrator 1.0.1 (28-08-2017)

  • Espresso

    • Menambahkan opsi IdlingPolicy untuk menekan onTimeout() saat debugger langkah disematkan ke VM.
    • Masalah 64024656, 64247586, dan 64525881: Jangan laporkan kegagalan untuk pemuatan class yang tidak berhasil, kecuali jika pengguna memuat class tertentu dengan menyertakan argumen runner class -e.
    • Masalah 64877246: Menambahkan class yang hilang ke file JAR sumber.
  • Runner

    • Menyederhanakan logika ShardingFilter.
    • Masalah 65025743: Filter @RequiresDevice sekarang mendukung emulator FTL.
  • AndroidTestOrchestrator

    • Tidak menduplikasi kegagalan laporan. Jika proses pengujian mengalami error setelah terjadi kegagalan, sekarang hanya satu kegagalan yang dilaporkan untuk pengujian itu.
    • Memperbaiki Javadoc untuk Orchestrator.
    • Sekarang pengujian ditunjukkan sebagai terlewat jika proses jarak jauh error.
    • Sekarang menangani kasus pengujian yang diabaikan.
    • Sekarang mengecualikan kasus pengujian yang diabaikan dari footer agar cocok dengan hasil lama.
    • Memperbaiki masalah izin runtime. Laporan pengujian sekarang ditulis ke kartu SD pada Android 7.0 (API level 24) dan yang lebih baru.

Espresso 3.0.0, Runner 1.0.0, Rules 1.0.0, AndroidTestOrchestrator 1.0.0 (25-07-2017, Pengumuman)

Perubahan yang dapat menyebabkan gangguan

  • Semua artefak
    • Menghapus dukungan untuk API level lebih lama dari 15, tetapi SDK minimalnya tetap menargetkan API level 9 agar pengguna memiliki waktu untuk mengupgrade
  • Espresso

Masalah umum

Fitur baru

  • Aturan
  • AndroidTestOrchestrator
    • Android Test Orchestrator memberikan cara baru untuk mengumpulkan dan menjalankan pengujian, dengan penekanan pada ketepatan dan isolasi. Orchestrator adalah proses instrumentasi independen, yang menghasilkan satu proses runner instrumentasi untuk setiap pengujian dan mengumpulkan hasilnya.
      • Error aplikasi menghentikan instrumentasi runner, tetapi tidak menghentikan orchestrator sehingga paket pengujian Anda dapat dilanjutkan
      • Mewajibkan penginstalan APK orchestrator – 'com.android.support.test:orchestrator:1.0.0'
      • Versi 1.0 hanya memiliki antarmuka command line; integrasi dengan Android Studio dan Firebase Test Lab sedang direncanakan

Perbaikan bug

  • Espresso
    • Meningkatkan sinkronisasi tampilan root untuk mengurangi kegagalan secara signifikan
    • Memperbaiki kerusakan IdlingResourceRegistry
    • Sinkronisasi yang lebih baik terhadap objek IdlingResource
    • Masalah 37132680: Espresso tidak menunggu hingga pembuatan dialog selesai sebelum menjalankan tindakan berikutnya
    • Masalah 37103280: Espresso harus menyertakan aturan konsumen ProGuard agar konsumen tidak perlu menambahkannya
    • Masalah 37094726: Intent Espresso berisi label aplikasi yang tidak diperlukan
    • Masalah 37093953: Espresso: Pemeriksaan tidak tersedia untuk teks error null/kosong
    • Masalah 37071776: espresso-core menyematkan file .pom Guava
    • Masalah 37062612: NPE dalam release()
    • Masalah 37063389: Tidak dapat mengompilasi jika menetapkan Guava dan espresso-web sebagai dependensi androidTest
    • Masalah 37070533: Menambahkan dukungan untuk NavigationView di Support Library Desain Android

Perubahan penting lainnya

  • Biner sekarang dipublikasikan melalui Maven Google
  • Mengurangi ukuran file JAR espresso-core dan espresso-web. Dependensi tersemat sekarang memiliki ProGuard yang diterapkan
  • Semua file .aar sekarang menyertakan aturan ProGuard
  • Menambahkan file proguard_library.cfg ke artefak yang dirilis
  • Antarmuka Tapper memiliki versi baru sendTap() yang akan diimplementasikan

Kontribusi eksternal

Espresso 2.2.2, Runner/Rules 0.5 (22-02-2016, rilis tersembunyi)

Fitur baru

  • espresso
    • Masalah 194253: Menambahkan dukungan untuk NavigationView di library desain dukungan android
    • Menambahkan pemeriksaan untuk animasi dan transisi yang diaktifkan
    • ViewMatcher API baru: withResourceName()

Perbaikan bug

  • espresso
    • Masalah 195331: espresso-core menyematkan file pom guava
    • Memindahkan resource tanpa aktivitas penghitungan dari espresso-contrib
  • aturan
    • Masalah 187249: NPE di Intents.release()
  • pelari
    • Masalah 196066: Argumen -e log true di AndroidJUnitRunner tidak melewati pengujian yang sebenarnya
    • Menunggu debugger di onCreate() runner
    • Memindahkan semua anotasi pengujian yang didukung dari platform ke ATSL
    • Menghapus dump pelacakan tumpukan tentang tidak adanya JSBridge
    • Memperbaiki AndroidAnnotatedBuilder

Perubahan penting lainnya

  • ActivityTestRule, UiThreadTestRule, IntentsTestRule dan ServiceTestRule tidak lagi dalam versi beta
  • Menambahkan file setelan gaya kode untuk pemformatan kode yang seragam

Espresso 2.2.1, Runner/Rules 0.4 (15-09-2015)

Fitur baru

  • aturan
    • Menambahkan konstruktor IntentsTestRule baru agar kompatibel sepenuhnya dengan ActivityTestRule
  • pelari
    • Menambahkan penginstalan multidex kasus khusus untuk API level 15 dan yang lebih lama
    • Menambahkan filter pengecualian ke class dan paket:
      • Menjalankan semua pengujian kecuali yang ada dalam class tertentu: adb shell am instrument -w -e notClass com.android.foo.FooTest
      • Menjalankan semua pengujian kecuali pengujian tunggal: adb shell am instrument -w -e notClass com.android.foo.FooTest#testFoo
      • Menjalankan semua pengujian kecuali paket tertentu: adb shell am instrument -w -e notPackage com.android.foo.bar

Kontribusi eksternal

  • espresso
    • 157911: Menambahkan matcher tampilan untuk jenis input pada objek EditText
    • 157912: Menambahkan matcher tampilan untuk pencocokan teks error pada objek EditText
    • 150674: Menambahkan dukungan DrawerActions untuk panel samping dengan gravitasi arbitrer
    • 150744: DrawerActions tidak lagi membocorkan parentListener
    • 153303: Gravitasi yang ditentukan pada pemeriksaan "apakah panel samping terbuka atau tertutup"
    • 157910: Menambahkan factory tindakan buka dan tutup DrawerLayout

Perbaikan bug

  • espresso
    • ViewActions.closeSoftKeyboard() sekarang memastikan bahwa keyboard virtual benar-benar tidak ada lagi
    • Memperbaiki masalah sinkronisasi dengan metode Espresso.pressBack() Espresso pada API level 21 dan yang lebih baru
    • Memperbaiki sinkronisasi animasi penutupan keyboard pada API level 23
  • aturan
    • Memperbaiki ServiceTestRule pada API level 23, startService() harus selalu dipanggil dengan Intent eksplisit
  • pelari
    • Memperbaiki dukungan JaCoCo gradle yang rusak
    • Memperbaiki dukungan sharding pengujian yang rusak
    • Memperbaiki keadaan yang tidak konsisten pada runner pengujian setelah waktu pengujian gaya JUnit3 habis

Perubahan penting lainnya

  • Memperbaiki Javadoc dan menyempurnakan pesan error
  • Mengabaikan metode suite() dan tidak mengabaikan error init saat menggunakan filter metode

Espresso 2.2 / ATSL 0.3 (09-06-2015)

Fitur baru

  • espresso-web 2.2
    • Dukungan WebView baru
  • espresso-core 2.2
    • Bermigrasi untuk menggunakan dagger v2
    • Bermigrasi untuk menggunakan hamcrest v1.3
  • espresso-contrib 2.2
    • Pemeriksaan aksesibilitas
    • Dukungan gravitasi DrawerActions
  • aturan 0.3
    • Aturan DisableOnAndroidDebug
  • runner 0,3
    • Upgrade dari JUnit v4.10 ke JUnit v4.12
    • Bermigrasi untuk menggunakan Hamcrest v1.3

Perbaikan bug

  • Memperbaiki DrawerActions yang membocorkan ParentListener
  • Kegagalan asumsi sekarang diperlakukan sebagai pengujian yang diabaikan, bukan pengujian yang gagal
  • Memperbaiki MonitoringInstrumentation yang membocorkan instance aktivitas melalui ExecutorService
  • Memperbaiki aktivitas tanpa induk yang terjebak dalam tahap berhenti
  • Mengupdate Until.scrollFinished() agar menampilkan true jika tidak ada peristiwa scroll yang dihasilkan. Memberikan perlindungan dari potensi NPE di UiObject2#setText().

Espresso 2.1, Test Runner/Rules 0.2, dan UIAutomator 2.1.0 (21-04-2015)

Perubahan yang dapat menyebabkan gangguan

  • Artefak runner pengujian dibagi menjadi dua dan namanya diubah dari com.android.support.test:testing-support-lib:0.1 menjadi com.android.support.test:runner:0.2 dan com.android.support.test:rules:0.2.

Fitur baru

  • espresso-intents: API mirip Mockito yang memungkinkan pengujian antar-aktivitas hermetic dengan memungkinkan penulis pengujian memverifikasi dan menghentikan intent yang sedang berjalan
    • IntentsTestRule: memperluas ActivityTestRule, diinisialisasi, dan merilis Espresso-Intents dalam pengujian UI fungsional
  • espresso-core
    • ViewActions: Menambahkan kemampuan untuk menjalankan pernyataan global sebelum menjalankan tindakan. Hal ini berguna untuk framework lain yang dibuat menggunakan Espresso untuk memvalidasi status hierarki tampilan saat paket pengujian Espresso yang ada dijalankan
    • Overload ViewMatchers.withContentDescription() resId
  • aturan
    • ActivityTestRule: Aturan ini menyediakan pengujian fungsional satu aktivitas.
    • Anotasi UiThreadRule dan UiThreadTest: Aturan ini memungkinkan metode pengujian yang dianotasi dengan UiThreadTest untuk dijalankan pada thread utama aplikasi (atau UI thread)
    • ServiceTestRule: Aturan ini menyediakan pengujian fungsional suatu layanan
  • pelari
    • ApplicationLifecycleCallback: Callback untuk memantau peristiwa siklus proses aplikasi
    • Semua argumen runner sekarang juga dapat ditentukan dalam file manifes Android menggunakan tag <meta-data>
  • UIAutomator
    • UiDevice.dumpWindowHierarchy() sekarang dapat menerima File atau OutputStream

Perbaikan bug

  • espresso
    • Matcher kursor sekarang menampilkan false jika kolom tidak ditemukan sehingga Hamcrest dapat melanjutkan ke kursor berikutnya
    • NullPointerException dengan PreferenceMatchers withTitle tidak lagi terjadi
    • Membatalkan pendaftaran resource tanpa aktivitas tidak lagi membuat Espresso menganggap kita memiliki resource tanpa aktivitas yang sibuk
    • Mengupdate versi anotasi dukungan yang digunakan oleh Espresso Contrib
  • pelari
    • AndroidJUnit4 sekarang melewati pengujian dengan asumsi yang gagal
  • UIAutomator
    • Menjalankan watcher untuk mencegah StaleObjectException

Perubahan penting lainnya

  • Menambahkan pesan error yang lebih baik jika tidak dapat melakukan typeText dengan string non-Latin

UIAutomator 2.0 (12-03-2015)

UI Automator sekarang didasarkan pada Instrumentasi Android, dan Anda dapat membuat serta menjalankanwatcherpengujian menggunakan perintah ./gradlew connectedCheck.

Espresso Versi 2.0, Test Runner 0.1 (Dirilis 19-12-2014)

Perubahan yang dapat menyebabkan gangguan

  • Espresso telah dipindahkan ke namespace baru, dari android.support.test.espresso menjadi android.support.test.espresso
  • Artefak Espresso diganti namanya
    • espresso-1.1.jar sekarang menjadi espresso-core-release-2.0.jar
    • Antarmuka IdlingResource telah dipindahkan ke library terpisah: espresso-idling-resource-release-2.0.jar
    • CountingIdlingResource sekarang berada di espresso-contrib-release-2.0.jar (sebagaimana seharusnya)
  • Optional (dependensi guava) telah dihapus dari API publik untuk mendukung pengemasan ulang dependensi guava dan menghindari konflik DEX (sumber utama kesulitan pengembangan). Metode yang terpengaruh meliputi:
    • ViewAssertion.check()
    • HumanReadables.getViewHierarchyErrorMessage()

Fitur baru

  • Tindakan
    • ViewActions
      • replaceText()
      • openLink()
      • Geser ke atas dan ke bawah
    • espresso-contrib
      • RecyclerViewActions: Menangani interaksi dengan RecyclerViews
      • PickerActions: Menangani interaksi dengan pemilih Date dan Time
  • Matchers
    • RootMatchers
      • isPlatformPopup()
    • ViewMatchers
      • isJavascriptEnabled()
      • withSpinnerText()
      • withHint()
      • isSelected()
      • hasLinks()
    • LayoutMatchers: Matcher untuk pengujian tata letak terkait i18n
    • CursorMatchers: Sekumpulan matcher untuk objek Cursor
  • Assertions
    • PositionAssertions, termasuk isLeftOf() dan isAbove(): Kumpulan ViewAssertions untuk memeriksa posisi relatif elemen di layar
    • LayoutAssertions: Pernyataan untuk pengujian tata letak terkait i18n
  • Aplikasi pengujian: Banyak aktivitas/pengujian sampel baru
  • Lainnya
    • Espresso.unregisterIdlingResources() dan Espresso.getIdlingResources(): Meningkatkan fleksibilitas tambahan untuk bekerja dengan IdlingResources
    • ViewInteraction.withFailureHandler(): Memungkinkan penggantian pengendali kegagalan dari onView()
    • Dukungan onData() untuk AdapterViews yang didukung oleh CursorAdapters

Perbaikan bug

  • ViewMatchers.isDisplayed() mencocokkan tampilan yang memenuhi seluruh layar, tetapi tidak lagi ditampilkan kurang dari 90%
  • Melakukan panggilan tindakan geser ke DrawerActions.openDrawer() tidak lagi memberikan hasil IdlingResourceTimeoutException

Perubahan penting lainnya

  • Beralih dari membuat project dengan Maven ke Gradle
  • Memindahkan dependensi Espresso (Guava, Dagger, Hamcrest) untuk menghindari konflik DEX
  • Perubahan untuk menampilkan keberhasilan atau kegagalan pendaftaran dan pembatalan pendaftaran resource tanpa aktivitas
  • Dukungan Lollipop: Meletakkan message.recycle() di belakang antarmuka untuk memperhitungkan perubahan terkait versi
  • Mengalihkan level SDK target ke 21, yang sebagian besar memengaruhi aplikasi pengujian

Versi 1.1 (Dirilis 08-01-2014)

Espresso

  • swipeLeft dan swipeRight ViewActions baru
  • Dukungan multi-aplikasi: Fitur canggih yang memungkinkan pemilihan jendela target tempat Espresso harus menjalankan operasi
  • Peningkatan TypeTextAction: Memungkinkan pengetikan teks ke dalam tampilan yang telah difokuskan sebelumnya, yang mempermudah penambahan teks
  • Berbagai perbaikan bug

Library Espresso Contrib

  • Library baru ini berisi fitur yang melengkapi Espresso, tetapi bukan merupakan bagian dari library inti
  • DrawerActions baru untuk operasi di DrawerLayout: Memiliki dependensi pada Android Support Library, karena itu, kami membiarkannya tetap di luar library Espresso inti

Pengujian Contoh

  • Pengujian ini dipindahkan agar berada dalam paket yang sama dengan aplikasi pengujian
  • POM Maven telah diperbaiki untuk menghapus dependensi guava duplikat, jadi mvn install sekarang akan berfungsi