Praktik terbaik untuk Pengujian Otomasi UI adalah melakukan sesedikit mungkin. UI sering berubah, yang berarti Anda harus terus memperbarui otomasi Anda. Biasanya lebih disukai untuk menyusun kode produk dengan cara yang memungkinkan pengujian otomatis tanpa UI Automation.
Yang mengatakan, Anda tidak selalu dapat menyingkirkan Otomasi UI. Anda menyebutkan office jadi saya berasumsi Anda sedang mengkode untuk Windows dan menggunakan .Net. Saya melakukan sedikit pekerjaan saya saat ini. Inilah beberapa hal yang telah saya pelajari.
1) Lihatlah perpustakaan UIAutomation yang diperkenalkan di .Net 3.0. Mereka menyediakan perpustakaan yang luas dan cukup mudah digunakan untuk otomatisasi. (http://msdn.microsoft.com/en-us/library/ms753107.aspx)
2) Unduh UISpy (http://msdn.microsoft.com/en-us/library/ms727247.aspx)
3) Jadikan UI produk Anda Automatable.
3a) Jika WPF menempatkan AutomationIDs pada segalanya.
3b) Cobalah untuk membuat kontrol khusus dan nama kelas jendela (Nama Kelas UI, bukan nama kelas kode sumber). Jika Anda tidak tahu apa yang saya maksud, muat UI Spy dan mulai melihat windows. Perhatikan berapa banyak jendela di berbagai aplikasi yang memiliki nama kelas # 32770. Ini adalah nama kelas untuk Kotak Dialog Windows. Jendela apa pun yang memperluas dialog dan tidak menetapkan namanya sendiri, default untuk ini. Ini menyebabkan segala macam kesedihan dari sudut pandang Otomatisasi UI.
4) Hindari pernyataan Thread.Sleep (). Cobalah untuk menggunakan Pelayan (lihat dokumen UIAutomation) sebagai gantinya.
5) JANGAN PERNAH mencampur kode uji dengan kode Otomatisasi UI. Buat perpustakaan terpisah untuk melakukan Otomasi UI. Panggil perpustakaan ini dari tes Anda. Ketika UI berubah, ini akan membuatnya lebih mudah untuk memperbarui otomasi.
6) Selalu daftarkan pendengar untuk Acara UI sebelum melakukan tindakan yang akan menyebabkan acara tersebut menyala. Dalam praktiknya, ini berarti Anda akan bekerja dengan utas.
6a) Contoh: jangan mulai menunggu acara Buka Jendela setelah Anda mengklik tombol untuk membuka jendela. Jendela dapat terbuka sebelum pelayan terdaftar dan tidak pernah mendapatkan acara tersebut.
7) Jangan pernah menganggap jendela yang baru saja dibuka adalah yang Anda inginkan. Semua jenis jendela mungkin terbuka secara tak terduga di Windows.
Saya bisa melanjutkan lebih, tapi ini agak lama.