Pengujian Otomatisasi iOS dengan Xcode Kerangka UI
โก Ringkasan Cerdas
Pengujian otomatisasi iOS dengan Xcode Merekam dan memutar ulang tindakan antarmuka pengguna terhadap aplikasi yang sedang diuji, mengikuti siklus berbasis pengujian yang meliputi desain, pengujian, implementasi, dan pengujian lagi hingga setiap kasus berhasil.
Pengujian Otomatisasi iOS menggunakan Xcode
Untuk menjamin kualitas aplikasi iOS Anda, Anda harus mengikuti proses pengembangan berbasis pengujian (test-driven development) seperti yang ditunjukkan pada gambar di bawah ini.
Pengembangan Berbasis Tes (TDD) adalah a pengujian Model yang diterapkan pada pengujian aplikasi iOS, dan berada di dalam praktik yang lebih luas dari pengujian selulerDalam model ini, seorang penguji harus mengikuti 4 fase berikut:
- desain: Tentukan apa yang ingin Anda uji dan rancang kasus uji Anda.
- Uji: Jalankan semua pengujian dan lihat apakah ada kasus uji yang gagal.
- Melaksanakan: RevGunakan kode Anda dan perbaiki bug yang menyebabkan pengujian gagal.
- Coba lagi: Jika sebuah pengujian gagal, kembalikan ke desain awal. Jika semua kasus uji berhasil, kode tersebut memenuhi seluruh persyaratan yang diuji.
Menyiapkan Xcode Proyek untuk Pengujian UI
Untuk membuat program uji iOS, Anda memerlukan Mac. Mac Anda harus sudah memiliki perangkat lunak berikut yang terpasang:
- OS X โ sistem operasi untuk Mac.
- Xcode IDE โ alat pengembangan untuk iOS.
- Kerangka kerja pengujian otomatis โ Otomatisasi UI, OCUnit, dan sebagainya.
- SDK iOS 4 atau lebih tinggi.
โ ๏ธ Catatan versi: Persyaratan di atas menjelaskan rangkaian perangkat lunak (toolchain) pada era di mana kedua panduan berikut ditulis. Pada Mac saat ini, Xcode Paket ini menyertakan framework XCTest dan XCUITest, dan instrumen UI Automation yang terpisah tidak lagi menjadi bagian dari instalasi. Langkah-langkah asli tetap dipertahankan di bawah ini karena mendokumentasikan cara kerja framework tersebut, dan padanan modernnya dijelaskan lebih lanjut di bawah.
Cara Membuat Otomatisasi iOS menggunakan Kerangka Otomatisasi UI
Delapan langkah di bawah ini merekam skrip dengan instrumen Otomasi dan memutarnya kembali pada aplikasi yang sedang diuji.
Langkah 1) Luncurkan Instrumen
Buka XCode -> Buka Alat Pengembang -> Instrumen
Langkah 2) Tambahkan Instrumen Otomasi
Di jendela Instrumen, pilih instrumen Otomasi.
Untuk membuat skrip pengujian, Anda dapat merekam... skenario pengujian atau Anda memprogramnya secara manual.
Langkah 3) Tekan tombol Merah
Instrumen sedang diaktifkan โ hentikan perekaman segera. Jika Anda ingin memulai perekaman, tekan tombol merah.
Langkah 4) Buat skrip baru
Di jendela Skrip, klik Tambah > Buat untuk membuat skrip baru.
Langkah 5) Pilih target
Anda sekarang berada di Tracjendela e. Gunakan Pilih Target Tarik ke bawah untuk beralih ke versi debugging aplikasi Anda.
Dalam hal ini, sampel Apple Pengeboran Sederhana Aplikasi ini digunakan sebagai aplikasi yang sedang diuji. Aplikasi ini memiliki GUI seperti yang ditunjukkan di bawah ini.
Langkah 6) Mulai rekam skrip Anda
Rekam skrip Anda dengan menekan tombol rekam di bagian atas atau bawah alat.
Sekarang Anda dapat melakukan beberapa tindakan UI pada aplikasi yang sedang diuji, dan skrip Anda telah direkam.
Langkah 7) Lihat skrip Anda
Untuk melihat skrip Anda, tekan TracPilih menu tarik-turun e Log / Editor Log dan beralih ke tampilan log skrip.
Anda akan melihat skrip rekaman Anda.
Langkah 8) Mainkan skrip Anda
Tekan tombol putar. Skrip akan berjalan, dan Anda dapat menghentikannya setelah log muncul.
โ ๏ธ Catatan sejarah: Instrumen otomatisasi yang digunakan dalam delapan langkah ini sudah tidak digunakan lagi. Xcode 8 dan kemudian dihapus, sehingga tidak lagi ada di versi saat ini. Xcode instalasi. Langkah-langkahnya disimpan di sini sebagai catatan tentang cara kerja kerangka kerja; untuk pekerjaan baru, gunakan panduan XCUITest di bagian bawah halaman ini.
Cara Membuat Otomatisasi iOS menggunakan kerangka OCUnit
Rute kedua menempatkan tes di dalam Xcode memproyeksikan dirinya sendiri alih-alih berada di dalam Instruments.
Langkah 1) Mulai Xcode IDE, Tambahkan target Bundel Uji Unit
Langkah 2) Tulis nama Bundel Uji Unit yang baru seperti yang ditunjukkan pada gambar di atas, lalu klik Selesai.
Langkah 3) Jadikan Unit Test sebagai target aktif.
Langkah 4) Tambahkan grup untuk kelas uji coba
Langkah 5) Tambahkan kelas pengujian Unit
Langkah 6) Sekarang mulailah implementasi Anda
OCUnit menggunakan bahasa Objective-C untuk membuat program pengujian, jadi pengembang harus mengetahui bahasa tersebut. Modern Xcode versi pengiriman pengujian unit melalui XCTest sebagai gantinya, yang mendukung Objective-C dan SwiftNamun, struktur target dan kelas yang ditunjukkan dalam enam langkah ini tetap tidak berubah.
UIAutomation vs XCUITest: Apa yang Berubah?
Karena kedua kerangka kerja yang digunakan di atas termasuk dalam generasi sebelumnya dari rangkaian perangkat lunak Apple, ada baiknya untuk menjelaskan secara tepat apa yang menggantikannya dan mengapa.
| Aspek | Otomatisasi UI (Instrumen) | Uji XCUIT |
| Status | Tidak digunakan lagi Xcode 8 dan dihapus dari rilis selanjutnya | Kerangka kerja pengujian UI yang didukung Apple |
| Tempat pengujian berlangsung | Skrip di dalam sebuah Instrumen tracdokumen elektronik | Target Bundel Pengujian UI di dalam Xcode proyek |
| Bahasa | JavaNaskah | Swift atau Tujuan-C |
| Pelari uji | Instrumen Otomasi | XCTest, runner yang sama dengan unit test. |
| Integrasi berkelanjutan | Canggung โ dikendalikan melalui Instrumen | Berjalan dari baris perintah bersamaan dengan pengujian unit. |
| Rekaman | Tombol rekam di bilah alat Instrumen | Tombol rekam di Xcode editor, yang memancarkan Swift |
Konsekuensi praktisnya adalah bahwa rangkaian pengujian XCUITest merupakan kode sumber proyek biasa. Rangkaian tersebut ditinjau, diberi versi, dan dieksekusi seperti bagian kode lainnya, yang merupakan alasan utama mengapa rekaman tersebut...tracModel tersebut menghilang.
Cara Menulis Tes UI iOS dengan XCUITest
Versi modern dari delapan langkah Instruments relatif singkat. Struktur di bawah ini mencerminkan ide rekam-lalu-putar ulang yang sama, tetapi outputnya berupa file sumber, bukan sebuah file. trace.
- Tambahkan target. In Xcode pilih File > Baru > Target lalu pilih templat UI Testing Bundle, atau centang opsi untuk menyertakan pengujian saat membuat proyek baru.
- Buka kelas pengujian yang telah dibuat. Xcode Membuat subkelas XCTestCase dengan metode setup dan test yang kosong.
- Luncurkan aplikasi yang sedang diuji. Buat instance XCUIApplication dan panggil launch padanya, yang akan memulai aplikasi dalam proses terpisah.
- Bertanya dan bertindak. Akses elemen melalui kueri elemen โ tombol, tabel, teks statis โ dan panggil tap, typeText, atau swipe pada elemen tersebut.
- Menegaskan. Gunakan XCTAssert untuk memverifikasi bahwa elemen yang diharapkan ada setelah tindakan tersebut.
- Run. Jalankan pengujian dari Xcode test navigator, atau dari baris perintah sehingga rangkaian pengujian yang sama berjalan dalam integrasi berkelanjutan.
Tes minimal memiliki bentuk seperti ini:
import XCTest final class AppUITests: XCTestCase { func testTappingFirstRowShowsDetail() { let app = XCUIApplication() app.launch() // act on the first row of the list app.tables.cells.element(boundBy: 0).tap() // verify that the next screen appeared XCTAssertTrue(app.staticTexts.firstMatch.waitForExistence(timeout: 5)) } }
Perekam masih ada: menempatkan kursor di dalam metode pengujian dan menekan tombol rekam di editor akan menghasilkan kueri ini secara otomatis, yang merupakan turunan langsung dari Langkah 6 di atas. Prinsip-prinsip yang lebih luas dari pengujian otomasi berlaku tanpa perubahan.
Contoh Otomatisasi UI Code
Artikel ini menyertakan beberapa contoh kode sumber. Contoh-contoh ini membantu Anda memahami tutorial dengan lebih jelas dan cepat.
Contoh Otomatisasi UI โ Skrip pengujian untuk demo Otomatisasi UI.















