Padanan imej boleh mencari butang yang kelihatan betul pada skrin yang salah. Gunakan semakan keadaan lima langkah untuk memutuskan masa untuk mengetik, bila untuk menunggu dan bila untuk berhenti.

Mengapa butang yang ditemui masih boleh menjadi butang yang salah
Bayangkan ujian QA yang menunggu dialog ralat rangkaian dan ketik Cuba Semula. Ia berfungsi pada skrin yang dijangkakan. Kemudian pop timbul promosi muncul dengan butang bulat yang serupa. Makro koordinat mengetik pop timbul dan padanan imej yang lemah juga boleh memilihnya. Gerak isyarat berjaya, tetapi ujian melakukan perkara yang salah.
Pengecaman imej hanya menjawab satu soalan: adakah sebahagian daripada skrin semasa menyerupai templat ini? Aliran klik automatik Android yang boleh dipercayai mesti menjawab tiga lagi: adakah ini skrin yang betul, adakah kedudukan yang dikesan ini dibenarkan untuk menerima paip dan perkara yang mesti dipaparkan selepas itu untuk membuktikan tindakan itu berjaya?
Panduan ini menjadikan setiap paip menjadi perubahan keadaan kecil yang boleh disemak. Corak yang sama boleh digunakan untuk automasi Android perantion dengan LaiCai Flow Inside: amati skrin permulaan, ketik hanya hasil pengesanan semasa, tunggu antara muka, kemudian sahkan keadaan seterusnya. Apabila andaian adalah palsu, aliran berhenti dan bukannya mencari apa-apa yang boleh ditekan.
Corak paip yang disemak keadaan lima langkah
- Tentukan keadaan permulaan dan tangkap sasaran visual yang stabil, seperti butang atau ikon tersendiri.
- Jalankan satu padanan imej terhadap bingkai semasa dengan ambang keyakinan dan kawasan carian yang disengajakan.
- Hanya pada perlawanan yang berjaya, hantar segi empat tepat atau tengah yang dikesan kepada tindakan ketik.
- Tunggu peralihan antara muka dan bukannya menyemak bingkai yang sama dengan segera.
- Perhatikan keadaan seterusnya yang dijangkakan. Teruskan kejayaan; jika tidak berhenti, cuba semula dalam had yang jelas, atau minta semakan.
Fikirkan setiap ketikan sebagai peralihan keadaan, bukan sebagai gerak isyarat terpencil. Pemerhatian pertama adalah prasyarat. Paip adalah operasi. Pemerhatian kedua ialah postcondition. Jika mana-mana bahagian hilang, automasi tidak dapat membezakan kejayaan daripada gerak isyarat yang mendarat pada skrin yang salah atau tidak mempunyai kesan.
Corak ini juga lebih mudah untuk nyahpepijat. Kegagalan sebelum ketikan menghala ke templat, ambang, kawasan carian atau skrin permulaan. Kegagalan selepas ketikan menunjukkan masa, kebenaran, gerak isyarat yang disekat, dialog yang tidak dijangka atau keadaan seterusnya yang berbeza. Satu makro panjang yang hanya melaporkan "gagal" menyembunyikan perbezaan itu.
Pilih isyarat skrin yang betul
| isyarat | Gunakannya apabila | Risiko utama |
|---|---|---|
| Padanan imej | Butang, ikon, kad atau dialog mempunyai penampilan visual yang stabil | Tema, skala, animasi atau reka bentuk semula boleh menurunkan skor |
| Pemilih UI | Apl ini mendedahkan teks yang stabil, perihalan kandungan atau pengecam sumber | Kandungan lukisan tersuai atau kanvas mungkin tidak mendedahkan unsur berguna |
| OCR | Perkataan yang kelihatan lebih penting daripada piksel tepat | Bahasa, fon, kontras dan pemilihan wilayah mempengaruhi pengecaman |
| Pengesanan objek | Sasaran tergolong dalam kelas yang lebih luas dan bukannya satu templat tepat | Model yang serasi dan kelas yang sah diperlukan |
| Koordinat tetap | Reka letak dikawal dan tiada isyarat keadaan yang lebih baik wujud | Sebarang pergerakan boleh mengubah hala paip |
Gunakan isyarat paling mudah yang menerangkan keadaan dengan tepat. Templat imej yang disimpan adalah sesuai untuk ikon tersendiri yang kelihatan sama setiap larian. OCR biasanya lebih baik apabila perkataan itu stabil tetapi gayanya mungkin berubah. Pemilih UI boleh menjadi lebih kuat daripada piksel apabila apl mendedahkan struktur yang boleh diakses. Pengesanan objek berguna untuk kelas yang diiktiraf, bukan sebagai pengganti templat butang yang hilang.
Android OCR dan panduan automasi pengecaman imej yang berkaitanmembandingkan kaedah pemerhatian ini dengan lebih mendalam. Artikel ini kekal fokus pada sempadan keputusan pada peranti: pemerhatian mesti berjaya sebelum gerak isyarat boleh menggunakan keputusannya.
Bina corak dalam LaiCai Flow Inside
1. Sediakan templat yang stabil dan keadaan permulaan
Pilih sasaran dengan tepi yang jelas dan perincian unik yang cukup untuk membezakannya daripada kawalan berdekatan. Elakkan menangkap kawasan besar yang termasuk menukar pembilang, cap masa, nama pengguna atau animasi. Profil pertama dan aset imej yang dirujuk disediakan pada komputer. Semasa penggunaan, templat yang serasi digabungkan untuk LaiCai Android Agent.
2. Padankan bingkai semasa sekali
Nod `vision.match` memerhati bingkai semasa sekali. Ia memerlukan satu atau lebih ID templat yang disimpan, skor minimum yang diperlukan, mod padanan dan kawasan nisbah skrin yang diminati. Perlawanan yang berjaya memberikan skor terbaik dan pusat dan segi empat tepat yang dikesan. Tiada perlawanan mengikut keputusan kegagalan; nod bukan gelung menunggu tersembunyi.
3. Ketik hasil yang dikesan, bukan koordinat lama
Sambungkan padanan yang berjaya kepada `pointer.tap` dan gunakan segi empat tepat yang dikesan sebagai `positionFrom`, biasanya dengan penambat tengah. Ini memastikan tindakan terikat dengan pemerhatian yang membenarkannya. Jangan salin koordinat daripada satu larian dan ubah larian seterusnya menjadi makro koordinat tetap.
4. Tambah penantian yang boleh dilihat
Selepas ketik, tambahkan `flow.wait` yang jelas sebelum pemerhatian bergantung pada skrin seterusnya. Tempoh yang betul bergantung pada apl, peranti, rangkaian dan animasi. Penantian yang boleh dilihat boleh disemak dan dilaraskan; semakan semula serta-merta mungkin hanya melihat bingkai lama.
5. Sahkan keadaan atau hentian seterusnya
Gunakan imej kedua, hasil OCR atau keadaan UI untuk membuktikan bahawa antara muka berubah seperti yang diharapkan. Sebagai contoh, mengesan dialog "Sahkan" selepas mengetik "Padam" hanya membuktikan bahawa peringkat pengesahan muncul; ia tidak membuktikan item itu telah dipadamkan. Semakan kemudian harus mengesahkan keadaan senarai akhir atau mesej kejayaan. Biarkan kegagalan pemerhatian yang tidak dikendalikan sebagai kegagalan sebenar, atau laksanakan percubaan semula terhad apabila pemeriksaan berulang adalah sebahagian daripada keperluan.
Sesuaikan keyakinan, kawasan carian, masa dan templat
- Mulakan dari ambang yang diukur, kemudian uji padanan benar dan calon palsu yang serupa secara visual. Lebih tinggi adalah lebih ketat, tetapi maksimum sewenang-wenangnya boleh menolak skala yang sah atau membuat perubahan.
- Hadkan kawasan carian apabila sasaran tergolong dalam bahagian skrin yang diketahui. Rantau yang lebih kecil boleh mengurangkan positif palsu dan berfungsi, tetapi rantau yang diteka boleh menyembunyikan sasaran yang dialihkan yang sah.
- Pilih mod padanan untuk sifat visual yang kekal stabil. Warna boleh membantu apabila warna bermakna; mod kelabu atau tepi mungkin bertolak ansur dengan beberapa perubahan warna; perincian harus diuji terhadap skrin sebenar.
- Simpan templat alternatif bersama-sama apabila ia mewakili kawalan yang sama dalam keadaan yang diketahui, seperti tema didayakan dan dilumpuhkan. Jangan tambah sasaran yang tidak berkaitan pada satu perlawanan.
- Uji skala peranti, orientasi, tema dan versi apl yang tepat yang akan menjalankan Aliran. Uji semula selepas kemas kini antara muka yang ketara.
- Catat di mana kegagalan itu berlaku. Skor padanan, aset yang dipilih, segi empat tepat yang dikesan, tempoh menunggu dan keputusan keadaan seterusnya adalah lebih berguna daripada ralat makro generik.
Jangan menala hanya pada contoh yang berjaya. Mulakan dari skrin yang dijangkakan, skrin di mana sasaran tiada, skrin dengan ikon yang serupa, peralihan perlahan dan pop timbul meliputi sasaran. Automasi boleh dipercayai apabila kes negatif berhenti dengan selamat, bukan hanya apabila laluan gembira selesai sekali.
Penggunaan praktikal untuk paip imej yang disemak keadaan
QA mudah alih dan ujian asap
Sahkan bahawa skrin yang diketahui muncul, ketik satu kawalan, tunggu dan tangkap keadaan seterusnya. Ini berguna untuk laluan ujian asap berulang pada peranti yang dibenarkan.Pencerminan skrin Android ke PC atau Macmembantu penguji menyemak telefon sebenar semasa menyediakan dan menyahpepijat Aliran.
Dialog dan pengendalian pemulihan
Kesan percubaan semula, kebenaran atau dialog sambungan tertentu sebelum memilih tindakan yang sepadan. Jangan bina satu ketik "OK" universal: perkataan yang sama boleh meluluskan tindakan yang sangat berbeza pada dialog yang berbeza.
Operasi apl dalaman berulang
Untuk apl perniagaan terkawal, Aliran boleh menyemak halaman semasa sebelum membuka item seterusnya atau menyerahkan borang yang diluluskan. Gandingkan semakan visual dengan sempadan input eksplisit, semakan keadaan akhir dan serahan manusia untuk pengecualian.
Rutin peribadi pada peranti
Aliran yang serasi boleh diteruskan pada telefon selepas penggunaan tanpa desktop kekal bersambung. Pastikan aliran kerja setempat sahaja setempat; jika Profil memanggil titik akhir HTTP, model jauh, webhook atau perkhidmatan mesej, aliran kerja khusus itu memerlukan akses rangkaian.
Kebenaran dan sempadan keselamatan
Pada Android, automasi visual dan automasi gerak isyarat menggunakan keupayaan sistem yang sensitif. Dokumen Android bahawa perkhidmatan kebolehaksesan mesti mengisytiharkan keupayaan gerak isyarat untuk menghantar gerak isyarat, manakala tangkapan skrin memerlukan kebenaran dan kitaran hayatnya sendiri. Dalam LaiCai Flow Inside, padanan imej menggunakan sesi skrin MediaProjection yang aktif dan pelaksanaan latar depan sebelah telefon; mengetik menggunakan Kebolehcapaian.
Gunakan automasi hanya pada peranti, akaun dan apl yang dibenarkan untuk anda kendalikan. Sesetengah apl atau binaan peranti mungkin menyekat atau mengabaikan gerak isyarat kebolehaksesan. Padanan imej yang berjaya tidak menjamin bahawa ketik kemudian akan diterima. Diagnosis pemerhatian dan penyampaian gerak isyarat secara berasingan.
Simpan pembayaran, perubahan akaun, pemadaman yang merosakkan, data peribadi dan tindakan yang tidak dapat dipulihkan di sebalik semakan eksplisit atau keadaan yang sangat sempit. Jangan gunakan klik automatik untuk membuat penglibatan palsu, mengelakkan kawalan platform atau melanggar syarat apl. Aliran paling selamat ialah aliran yang dibenarkan keadaan, tindakan, keadaan berhenti dan bukti yang boleh dilihat sebelum ia dijalankan.
Uji senarai semak sebelum penggunaan tanpa pengawasan
- Jalankan dari skrin permulaan yang dijangkakan sebanyak tiga kali.
- Mulakan dari skrin yang salah dan sahkan bahawa tiada ketik berlaku.
- Tutup atau alih keluar sasaran dan sahkan perlawanan berikutan kegagalan.
- Kemukakan kawalan yang kelihatan serupa dan semak bahawa ambang dan rantau menolaknya.
- Perlahankan apl atau rangkaian dan sahkan penantian dan postcondition berkelakuan selamat.
- Putar peranti atau tukar skala paparan hanya jika mod tersebut disokong, kemudian uji semula templat.
- Lumpuhkan atau ganggu keupayaan tangkapan skrin atau kebolehaksesan yang diperlukan dan sahkan ralat kelihatan.
- Semak skrin akhir, log, tangkapan skrin atau output yang membuktikan hasil tugasan.
Mulakan dengan satu peralihan terhad. Setelah ia boleh dipercayai, ekstrak tindakan berbilang nod berulang ke dalam Aliran anak kecil bernama dan pastikan Aliran utama boleh dibaca. TutorialLaiCai Flow Insidemenerangkan sempadan penyediaan dan penggunaan; halaman automasi AndroidAImerangkumi pembinaan aliran kerja dan penyahpepijatan berbantukan desktop.
Soalan Lazim klik automatik pengecaman imej Android
Adakah pengecaman imej sentiasa lebih selamat daripada koordinat tetap?
Ia lebih selamat hanya apabila templat, ambang, rantau, masa dan laluan kegagalan diuji. Padanan yang lemah atau terlalu luas masih boleh memilih sasaran yang salah.
Sekiranya Aliran terus sepadan sehingga imej muncul?
Satu nod padanan imej harus diperhatikan sekali. Jika menunggu diperlukan, gunakan percubaan semula eksplisit atau sehingga struktur dengan selang masa yang jelas, tamat masa atau had percubaan supaya tingkah laku itu kekal kelihatan.
Bolehkah kedudukan yang dikesan digunakan terus untuk mengetuk?
ya. Gunakan segi empat tepat atau tengah nod visual yang berjaya dikesan sebagai sumber ketik. Ini mengekalkan hubungan antara pemerhatian dan tindakan.
Bolehkah ini dijalankan sepenuhnya di luar talian pada telefon?
Ia boleh apabila setiap nod dan aset dalam Profil yang digunakan berjalan secara setempat. Padanan imej, menunggu, gerak isyarat dan semakan setempat boleh kekal pada peranti. Sebarang model jauh, permintaan HTTP, webhook, penyegerakan awan atau perkhidmatan mesej menambah pergantungan rangkaian.
Jadikan setiap ketikan sebagai peralihan keadaan yang boleh diaudit
Penambahbaikan utama adalah konseptual: jangan tanya hanya tempat untuk mengetik. Tanya perkara yang mesti benar sebelum ketik, hasil yang diperhatikan membenarkan gerak isyarat, tempoh antara muka perlu ditukar dan perkara yang membuktikan bahawa keadaan seterusnya tiba.
LaiCai Screen Mirroring termasuk LaiCai Flow Inside untuk corak sisi telefon yang menentukan ini: amati sekali, ikuti hasil kejayaan atau kegagalan, ketik daripada hasil nisbah skrin yang dikesan, tunggu dengan jelas dan amati semula. Sediakan dan sahkan Profil yang serasi pada komputer, gunakannya dengan aset yang diluluskan dan biarkan LaiCai Android Agent menjalankan hanya keadaan dan peralihan yang telah anda tentukan.