Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Apakah mata pengetahuan rangka kerja Appium?

Apakah mata pengetahuan rangka kerja Appium?

王林
王林ke hadapan
2023-05-13 21:37:121005semak imbas

1. Objek ujian

Appium ialah alat sumber terbuka untuk mengautomasikan aplikasi asli, web mudah alih dan hibrid pada iOS, peranti Android dan platform desktop Windows.

"Aplikasi asli" merujuk kepada aplikasi yang ditulis dengan iOS, Android atau Windows SDK.

"Aplikasi web mudah alih" ialah aplikasi yang diakses dengan penyemak imbas mudah alih (Appium menyokong Safari, Chrome pada iOS dan penyemak imbas terbina dalam pada Android).

"Apl Hibrid" disertakan dengan pembalut di sekeliling "pandangan web" - kawalan asli yang digunakan untuk berinteraksi dengan kandungan web.

Yang penting: Appium ialah platform merentas: ia membolehkan anda menulis ujian untuk berbilang platform menggunakan API yang sama, membolehkan anda menggunakan semula kod antara suite ujian iOS, Android dan Windows.

2. Platform dan bahasa yang disokong

● appium ialah platform merentas dan menyokong sistem OSX, Windows dan Linux. Ia membolehkan penguji menggunakan set API yang sama untuk menulis skrip ujian automatik pada platform yang berbeza (iOS, Android), yang meningkatkan kebolehgunaan semula kod antara suite ujian iOS dan Android dengan ketara

● appium menyokong berbilang bahasa, Mengguna pakai mod reka bentuk C/S, selagi pelanggan boleh menghantar permintaan http ke pelayan

3 Prinsip kerja

Prinsip kerja APPIUM IOS

Di bawah ini kita akan melalui. Gambar menunjukkan prinsip kerja keseluruhan proses IOS APPIUM:

Apakah mata pengetahuan rangka kerja Appium?

APPIUM Prinsip kerja bahagian Android

Mari kita lihat APPIUM android melalui gambar. Prinsip kerja keseluruhan proses:

Apakah mata pengetahuan rangka kerja Appium?

Penjelasan:

Seluruh anak panah menghala ke gelung arahan yang lengkap

skrip webdriver memerlukan penguji automatik sendiri Tulis skrip ujian yang sepadan

Adalah disyorkan agar anda mempelajari tentang protokol wayar JSON, instrumen, UiAutomator

4, alat pemasangan

● bahasa ujian , seperti python

● klien appium

● pelayan appium

● Peranti mudah alih, jika anda menggunakan mesin maya, anda perlu memasangnya

5. Persediaan persekitaran

( 1) Pasang Android SDK

1 Android SDK (Software Development Kit) menyediakan perpustakaan API Android dan alat pembangunan untuk membina, menguji dan nyahpepijat aplikasi seperti yang digunakan untuk membangunkan dan menjalankan aplikasi perisian Android A

2 Sediakan alat kecil, seperti adb, aapt, uiautomatorview

3 Gunakan emulator Android untuk menguji peranti dilangkau

( 2) Pasang Pelayan appium

1 laman web rasmi Appium: https://pium.app/downloads/

2. AppiumForWindows.zip, appium.dmg)

3 Pasang dan konfigurasikan pembolehubah persekitaran appium

(3) Pasang python-client

1 sebagai bahasa python

2. Pasang Appium-Client, jika anda menggunakan python, anda boleh menggunakan pip untuk memasangnya: pip install Appium-Python-Client

Aplikasi dan operasi

①Panggil proses appium

1 Konfigurasikan Parameter peranti mudah alih, beritahu pelayan peranti mudah alih yang ingin saya hubungi

2 kawalan yang sepadan untuk beroperasi

3 Dapatkan Operasi kawalan yang anda dapat, seperti mengklik, mengisi parameter, dsb.

Langkah pertama ialah mengkonfigurasi parameter peranti telefon mudah alih

Konfigurasi asas Keupayaan yang Diingini Appium adalah seperti berikut:

#persekitaran Android

import unittest

daripada pemacu web import appium

desired_caps = { }

desired_caps['platformName'] = 'Android'

desired_caps ['platformVersion'] = '4.2'

desired_caps['deviceName'] = 'Android Emulator'

desired_caps['app'] = PATH('../../.. /apps/selendroid-test-app.apk')

desired_caps['appPackage'] = pakej

desired_caps['appActivity'] = aktiviti

self.driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)

Penjelasan parameter biasa:

● deviceName: Tentukan peranti permulaan, seperti Android Emulator, iPhone Simulator, dsb.

● automasiName: Tentukan enjin automasi, lalai ialah appium

● platformName: Tentukan platform mudah alih, Android atau iOS

● platformVersion: Tentukan versi sistem platform. Contohnya, tentukan versi sistem Android sebagai 4.2

● appActivity: Aktiviti apl yang akan diuji untuk apl asli, tambahkan

● appPackage: pakej apl yang akan diuji maklumat Nama (pakej)

Langkah kedua ialah menangkap kawalan aplikasi mudah alih

Lihat parameter kawalan aplikasi mudah alih. melalui alat terbina dalam Android SDK uiautomatorviewer.bat (alat ini terletak dalam direktori /tools/ bin/)

1. Kedudukan ID

Apakah mata pengetahuan rangka kerja Appium?

Penggunaan. :

driver.find_element_by_id('com.android.contacts: id/three')

2. Kedudukan nama

Apakah mata pengetahuan rangka kerja Appium?

Penggunaan:

el = self.driver.find_element_by_name('missed call') el = self.driver.find_elements_by_name('missed call')

3 kedudukan nama kelas

Apakah mata pengetahuan rangka kerja Appium?

Penggunaan:

els = self.driver.find_element_by_class_name('android.widget.ImageButton') els = self.driver.find_elements_by_class_name('android.widget.ImageButton')

4. Kedudukan ID Kebolehcapaian

Apakah mata pengetahuan rangka kerja Appium?

Penggunaan:

el = self.driver.find_element_by_accessibility_id('三') el = self.driver .find_elements('_accessibility_id三')

5. penentududukan uiautomator android

Apakah mata pengetahuan rangka kerja Appium?

Kaedah penggunaan:

el=self.driver.find_element_by_android_uiautomator( '(UiSelector baharu ).penerangan(simbol bintang ")')

els=self.driver.find_elements_by_android_uiautomator('UiSelector().boleh diklik(false)')

Langkah 3 , kawalan operasi

1.scroll

scroll(self, origin_el, destination_el):

Tatal dari element origin_el ke element destination_el

Contoh: driver(el1, el2)

Penggunaan: driver.scroll(el1,el2)

2.tap

tap(self, positions, duration=None):

Simulasi jari klik (sehingga lima jari), anda boleh menetapkan masa penahanan (milisaat)

Contoh: driver.tap([(100, 20), (100, 60), (100 , 100)], 500 )

Penggunaan: driver.tap([(x,y),(x1,y1)],500)

3 leret

leret(self, start_x,. start_y, end_x, end_y, duration=Tiada):

Leret dari titik A ke titik B, masa gelongsor ialah milisaat

Contoh: driver.swipe(100, 100 , 100, 400)

Penggunaan: driver.swipe(x1,y1,x2,y2,500)

4 keyevent

keyevent(self, keycode, metastate= Tiada):

Hantar kod kunci (Android sahaja), kod kunci boleh didapati di tapak web

Penggunaan: driver.keyevent('4')

5 🎜>press_keycode(self, keycode, metastate=None):

Hantar kod kunci (Android sahaja), kod kunci boleh didapati di tapak web

Penggunaan: driver.press_ keycode(' 4')

6.text

text(self):

Kembalikan nilai teks elemen

Penggunaan: element.text

7.klik

klik(diri):

Elemen klik

Penggunaan: element.click()

8.get_attribute

get_attribute(self, name):

Dapatkan nilai elemen yang berkaitan

Penggunaan: element.get_attribute("name")

9.size

saiz(diri):

Dapatkan saiz elemen (tinggi dan lebar)

Penggunaan saiz.elemen

10

page_source(self):

Dapatkan sumber halaman semasa

Penggunaan: driver.page_source

11.quit

quit(self ):

Berhenti menjalankan skrip dan tutup setiap sambungan tetingkap yang berkaitan

Contoh: driver.quit()

Penghakiman hasil pelaksanaan

Selepas penggunaan kes dilaksanakan, penghakiman perlu dibuat Apabila lulus atau tidak, anda perlu membandingkannya dengan hasil jangkaan anda Secara amnya, anda boleh memilih untuk menegaskan untuk mencari sama ada bendera tertentu muncul, atau sama ada nilai teks elemen tertentu adalah sama. kepada nilai yang dijangkakan Anda juga boleh mengambil tangkapan skrin dan membandingkannya dengan gambar rujukan, dsb.

Atas ialah kandungan terperinci Apakah mata pengetahuan rangka kerja Appium?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam