Identifikasi Cerdas di QTP/UFT dengan Contoh

⚡ Ringkasan Cerdas

Identifikasi Cerdas adalah mekanisme cadangan dalam UFT Salah satu cara untuk menemukan objek ketika deskripsi yang dipelajari tidak lagi sesuai dengan aplikasi yang sedang diuji, menggunakan properti filter dasar dan opsional untuk mempersempit daftar kandidat hingga hanya satu yang cocok.

  • 🔍 Definisi: Mekanisme ini hanya aktif ketika deskripsi yang dipelajari gagal menemukan satu objek unik yang cocok.
  • 🧩 Dua tipe properti: Properti Filter Dasar menentukan objek apa yang dicari; Properti Filter Opsional mempersempit pencocokan lebih lanjut.
  • ⚙️ Proses eliminasi: UFT Membangun kembali daftar kandidat dari properti dasar, kemudian menyaringnya menggunakan properti opsional satu per satu.
  • Konfigurasi: Aktifkan dan konfigurasikan filter per kelas objek dari Alat > Identifikasi Objek.
  • ⚠️ Visibilitas hasil: Setiap pemanggilan mencatat langkah peringatan dalam pohon hasil pengujian.
  • 🐢 Kompromi kinerja: Penyaringan tambahan tersebut menambah beban kerja saat menjalankan rangkaian pengujian yang besar.
  • 🔧 Perbaikan manual: Ganti properti yang mudah berubah seperti nama dengan properti yang stabil seperti ID HTML untuk menghindari kesalahan yang terjadi.
  • ???? Kontrol skrip: Setting(“DisableReplayUsingAlgorithm”) mengaktifkan atau menonaktifkan Identifikasi Cerdas untuk seluruh sesi permainan.

Apa itu Identifikasi Cerdas? QTP/UFT?

Identifikasi Cerdas adalah mekanisme pengenalan objek cadangan di OpenText UFT Pertama, alat yang sebelumnya dikenal sebagai HP QuickTest Professional (QTPJika proses identifikasi normal tidak dapat menemukan kecocokan unik untuk deskripsi objek yang telah dipelajari, UFT Memicu Identifikasi Cerdas, dengan syarat mekanisme tersebut diaktifkan dalam pengaturan Identifikasi Objek untuk kelas objek tersebut.

Berbeda dengan deskripsi yang dipelajari, Identifikasi Cerdas tidak memerlukan kecocokan persis pada setiap properti yang tersimpan. Ia mengevaluasi dua kategori properti untuk mempersempit kumpulan objek kandidat menjadi tepat satu:

  • Properti Filter Dasar. Sifat-sifat paling mendasar dari kelas objek pengujian; sifat-sifat yang nilainya tidak dapat diubah tanpa mengubah esensi dari objek aslinya.
  • Properti Filter Opsional. Properti pendukung yang membantu mengidentifikasi suatu objek tetapi lebih cenderung berubah seiring waktu.

Saat Identifikasi Cerdas dijalankan, UFT "Melupakan" deskripsi yang telah dipelajari dan membangun kembali daftar kandidat baru yang berisi setiap objek yang cocok dengan semua Properti Filter Dasar. Kemudian, daftar tersebut dipersempit lebih lanjut, dengan memeriksa Properti Filter Opsional satu per satu, hingga hanya tersisa satu objek.

Jika Identifikasi Cerdas diaktifkan selama sesi eksekusi, pohon hasil pengujian mencatat pesan peringatan yang mengkonfirmasi bahwa mekanisme tersebut telah digunakan, dan langkah Identifikasi Cerdas dimasukkan ke dalam hasil sehingga penyimpangan dari deskripsi yang dipelajari tetap terlihat.

Identifikasi Cerdas berada di urutan ketiga dalam UFTHierarki identifikasi objek, setelah deskripsi yang dipelajari dan Pengidentifikasi Relasi Visual apa pun, dan sebelum pengidentifikasi ordinal yang digunakan sebagai upaya terakhir. Memahami di mana posisinya menjelaskan mengapa menonaktifkannya sepenuhnya, daripada memperbaiki properti yang mendasarinya, jarang menjadi pilihan jangka panjang terbaik untuk skrip yang sering dijalankan.

Properti Filter Dasar vs Properti Filter Opsional

Kedua filter tersebut bekerja bersama-sama, tetapi memainkan peran yang berbeda dalam proses eliminasi yang dijelaskan di atas. Perbandingan di bawah ini menjelaskan kapan masing-masing digunakan dan seberapa besar daya eliminasi yang dimilikinya.

Aspek Properti Filter Dasar Properti Filter Opsional
Peran Buat daftar kandidat awal. Persempit daftar kandidat menjadi satu objek.
Stabilitas Hampir tidak pernah berubah tanpa mengubah identitas objek tersebut. Dapat berubah secara berkala tanpa mengubah identitas objek.
Aturan pencocokan Setiap kandidat harus memenuhi semua properti dasar. Satu properti diperiksa pada satu waktu; suatu properti dilewati jika hal itu akan menghilangkan semua kandidat.
Contoh tipikal Tag HTML, kelas objek, indeks Nama, ID HTML, teks alt, sumber gambar
Di tempat yang dikonfigurasi Identifikasi Objek > Konfigurasi > Properti Filter Dasar Identifikasi Objek > Konfigurasi > Properti Filter Opsional

Karena properti yang sama tidak dapat berada di kedua daftar, rencanakan pemisahannya dengan cermat. Properti yang mendefinisikan apa sebenarnya suatu objek termasuk dalam daftar dasar; properti yang hanya membantu membedakannya dari objek serupa termasuk dalam daftar opsional.

Cara Kerja Identifikasi Cerdas: Proses Langkah demi Langkah

Identifikasi Cerdas hanya aktif setelah deskripsi yang dipelajari, dan Pengidentifikasi Relasi Visual apa pun, gagal menunjukkan satu objek pun. Setelah diaktifkan, UFT bekerja melalui proses eliminasi empat langkah yang dapat diprediksi:

  1. Susun ulang daftar kandidat. UFT Mengabaikan deskripsi yang telah dipelajari dan memindai induk objek untuk setiap objek yang cocok dengan semua Properti Filter Dasar.
  2. Terapkan properti opsional pertama. UFT Menghapus kandidat mana pun yang tidak sesuai dengan properti pertama dalam daftar Properti Filter Opsional.
  3. Evaluasilah hasilnya. Jika lebih dari satu kandidat tersisa, UFT mengulangi langkah sebelumnya dengan properti opsional berikutnya. Jika filter akan menghilangkan setiap kandidat yang tersisa, UFT Melewati properti tersebut dan beralih ke properti berikutnya.
  4. Berhenti di satu pertandingan saja. UFT Mengulangi siklus penyaringan dan evaluasi hingga hanya tersisa satu objek, atau hingga kehabisan properti opsional untuk diperiksa.

Jika proses eliminasi masih belum dapat mengisolasi satu objek pun, UFT Sistem akan kembali menggunakan deskripsi yang telah dipelajari ditambah pengidentifikasi ordinal, seperti indeks, lokasi, atau waktu pembuatan. Jika kombinasi tersebut pun gagal mengidentifikasi objek, sesi eksekusi akan berhenti dan menampilkan kesalahan saat eksekusi.

Cara Mengaktifkan atau Menonaktifkan Identifikasi Cerdas

Identifikasi Cerdas dikonfigurasi per kelas objek pengujian dari Alat > Identifikasi ObjekPilih lingkungan dan kelas objek, lalu aktifkan. Aktifkan Identifikasi Cerdas, Lalu klik Konfigurasi untuk memilih Properti Filter Dasar dan Opsional untuk kelas tersebut. Dialog yang sama memungkinkan Anda untuk menonaktifkan opsi tersebut untuk kelas yang seharusnya selalu menggunakan deskripsi yang telah dipelajari.

Aktifkan/Nonaktifkan Identifikasi Cerdas

Cara Kerja Identifikasi Cerdas (Panduan Video)

Video di bawah ini menjelaskan proses penghapusan filter dasar dan opsional pada contoh nyata.

Klik di sini jika video tidak dapat diakses

Keuntungan dan Kerugian Menggunakan Identifikasi Cerdas

Identifikasi Cerdas menambah ketahanan, tetapi ketahanan tersebut membawa biaya waktu eksekusi. Pertimbangkan kedua sisi sebelum membiarkannya diaktifkan secara default di seluruh repositori objek.

  • ✅ Tetap berfungsi meskipun ada perubahan UI kecil: Atribut yang diganti namanya atau posisi yang digeser di halaman tidak lagi merusak setiap skrip yang menyentuh objek tersebut.
  • ✅ Mengurangi pemeliharaan repositori objek: Para penguji menghabiskan lebih sedikit waktu untuk merekam ulang objek setelah rilis front-end kecil.
  • ✅ Tetap terlihat di hasil pencarian: Setiap pemanggilan mencatat peringatan, sehingga tim dapat mengaudit seberapa sering mekanisme cadangan benar-benar dibutuhkan.
  • ⚠️ Eksekusi pengujian lebih lambat: Membangun dan menyaring daftar kandidat membutuhkan waktu yang jauh lebih lama daripada pencocokan properti secara langsung, dan biayanya berlipat ganda jika jumlah kandidatnya banyak.
  • ⚠️ Dapat menutupi cacat sebenarnya: Jika Identifikasi Cerdas secara diam-diam menemukan objek yang serupa, regresi UI yang sebenarnya mungkin tidak akan terdeteksi.
  • ⚠️ Perlu ditinjau secara berkala: Properti Filter Dasar dan Opsional masih perlu ditinjau secara berkala seiring perkembangan aplikasi.

Sebagian besar tim membiarkan Identifikasi Cerdas diaktifkan untuk skrip eksplorasi dan berfrekuensi rendah, kemudian menonaktifkannya secara selektif pada objek yang kritis terhadap kinerja setelah properti identifikasi objek tersebut stabil.

Ubah Properti Objek untuk Menghindari Identifikasi Cerdas

Fleksibilitas Smart Identification hadir dengan biaya runtime seperti yang dijelaskan di atas, sehingga banyak tim lebih memilih untuk memperbaiki properti identifikasi objek sendiri daripada berulang kali mengandalkan mekanisme fallback. Perhatikan dua sinyal yang menunjukkan bahwa perbaikan properti lebih baik daripada mekanisme fallback saat runtime: peringatan Smart Identification yang muncul hampir setiap kali dijalankan, dan skrip yang menjadi jauh lebih lambat sejak mekanisme fallback mulai berjalan. Keduanya menunjukkan objek yang properti identifikasi default-nya tidak lagi sesuai dengan aplikasi, bukan kesalahan UI yang terjadi sekali saja. Video di bawah ini mendemonstrasikan perbaikan pada formulir login sungguhan.

Klik di sini jika video tidak dapat diakses

Transkrip Video: Poin-Poin Penting

  • Identifikasi cerdas memperlambat eksekusi skrip, yang tidak diinginkan untuk rangkaian pengujian yang besar atau sering dijalankan.
  • Untuk menghindarinya sepenuhnya, ubah properti identifikasi objek default alih-alih mengandalkan mekanisme cadangan.
  • In Identifikasi Objek, hapus “name” dari properti wajib dan ganti dengan “HTML id” agar pengujian tidak bergantung pada perubahan nama.
  • Rekam ulang langkah-langkah yang sama setelah daftar properti wajib diperbarui.
  • Jika nama tersebut kemudian berubah dari “Submit” menjadi “Login,” skrip sekarang akan berjalan tanpa memicu Identifikasi Cerdas.
  • Demikian pula, jika ada properti wajib atau pendukung pada objek yang sedang diuji sering berubah, gantilah dengan properti yang lebih stabil agar eksekusi skrip tetap cepat.
  • Mengoptimalkan properti adalah keterampilan yang dibangun melalui pengalaman; keterampilan ini akan meningkat seiring semakin sering Anda menggunakan alat tersebut.

Menonaktifkan Identifikasi Cerdas Menggunakan VBScript

Identifikasi Cerdas juga dapat dimatikan untuk seluruh sesi berjalan tanpa menyentuh repositori objek, dengan menggunakan NonaktifkanPemutaranUlangMenggunakanAlgoritma Pengaturan saat eksekusi. Ini berguna ketika sebuah skrip harus langsung gagal jika terjadi ketidakcocokan properti, alih-alih diam-diam kembali ke proses eliminasi.

' Disable Smart Identification for this run session
Setting("DisableReplayUsingAlgorithm") = 1

Browser("Mercury Tours").Page("Find Flights").WebEdit("userName").Set "mercury"

' Re-enable Smart Identification once the strict steps are done
Setting("DisableReplayUsingAlgorithm") = 0

Jaga agar jendela yang dinonaktifkan sesingkat mungkin. Langkah-langkah yang dijalankan di dalamnya harus sesuai persis dengan deskripsi yang telah dipelajari, sehingga setiap penyimpangan yang sah dalam aplikasi yang diuji akan menyebabkan kegagalan langsung daripada pemulihan yang bertahap.

Publikasi

Unduh halaman web yang digunakan dalam tutorial di atas untuk latihan mandiri.

Pertanyaan Umum Demo Slot

Tidak. Identifikasi Cerdas berlaku di sebagian besar wilayah. UFT Salah satu lingkungan, termasuk Windows, Java, dan objek .NET, bukan hanya Web. Ketersediaan bergantung pada kelas objek add-in dan pengujian, bukan pada tipe lingkungan.

Membangun daftar kandidat dan menyaringnya properti demi properti membutuhkan waktu lebih lama daripada pencocokan deskripsi yang dipelajari tunggal. Pada repositori objek yang besar, pemrosesan tambahan ini akan menumpuk, sehingga banyak tim menonaktifkannya pada objek yang kritis terhadap kinerja.

Ya. Buka objek di Object Repository, masuk ke Object Properties > Additional Details, dan atur Enable Smart Identification ke False hanya untuk objek tersebut, biarkan sisa repository tidak berubah.

Mereka memecahkan masalah serupa dengan cara yang berbeda. Pencari lokasi yang dapat memperbaiki diri sendiri pada teknologi modern. Alat pengujian AI Mempelajari ulang elemen yang berubah secara otomatis, sementara Identifikasi Cerdas menyaring daftar properti tetap. Banyak tim menggunakan keduanya secara bersamaan.

Tidak. Filter Identifikasi Cerdas menyimpan properti teks, sedangkan UFT Teknik identifikasi berbasis AI dan Insight yang lebih baru mengenali objek secara visual. Keduanya bertindak sebagai lapisan cadangan yang terpisah dan saling melengkapi.

Ringkaslah postingan ini dengan: