APPモバイル端末のテストが進んでいる

Appium の紹介

環境設定

アピウムの用途

APP要素の位置決め操作

 Appium の共通要素の配置方法

名前 価値
ID id 属性値
クラス クラス属性値
xpath xpath式

Selenium で要素を配置する方法は何ですか?

id、name、class_name、xpath、css_selector、link_text、partial_link_text、tag_name を通じて要素を見つけます。通常、ID がある場合はその ID を使用し、CSS または XPath を使用して位置を特定します。もちろん、位置を特定する際には、ページ要素に対応する XPath 情報を取得するためにブラウザに firebug firepath をインストールする必要があります。 

APP要素情報操作API

1. 要素をクリックします。

ele.click()

 2. データを入力ボックスに送信します

メソッド: send_keys(vaue) # 値: 入力ボックスに送信する必要があるテキスト

3. 入力ボックスの内容をクリアします

  • メソッド:clear()

4. 要素のテキストコンテンツを取得する

  • メソッド: テキスト

5. 要素の属性値を取得する

  • メソッド: get_attribute(value) # value: 要素の属性

6. 画面上の要素の座標を取得する

  • 方法: 場所

7. アプリのパッケージ名とスタートアップ名を取得します。

  • パッケージ名の取得メソッド: current_package

APP要素イベント操作API

1. プレフィックスコード

from appium import webdriver
# server 启动参数
desired_caps = {}
# 设备信息
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '5.1'
desired_caps['deviceName'] = '192.168.56.101:5555'
# app的信息
desired_caps['appPackage'] = 'com.android.settings'
desired_caps['appActivity'] = '.Settings'

# 声明我们的driver对象
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

2.スワイプスライドイベント

ある座標位置から別の座標位置へのスライドは、2 点間のスライドのみとなります。

  • 方法:スワイプ(start_x、start_y、end_x、end_y、duration=None)

3. スクロールスライドイベント

 ページが自動的に停止するまで、ある要素から別の要素にスライドします。

  • メソッド:scroll(origin_el, destination_el)

4.ドラッグドラッグイベント

ある要素から別の要素にスワイプすると、画面上の最初の要素の元の位置が 2 番目の要素に置き換えられます。

  • 方法:ドラッグアンドドロップ(出発地エル、目的地エル)

5. バックグラウンドイベントに配置されたアプリケーション

アプリはホット スタートをシミュレートするためにバックグラウンドに配置されます

  • 方法:background_app(seconds)

APPは高度なジェスチャー操作をシミュレートします

1. プレフィックスコード

from appium import webdriver
# server 启动参数
desired_caps = {}
# 设备信息
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '5.1'
desired_caps['deviceName'] = '192.168.56.101:5555'
# app的信息
desired_caps['appPackage'] = 'com.android.settings'
desired_caps['appActivity'] = '.Settings'

# 声明我们的driver对象
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

2. フィンガータッピング操作

画面上での指のタップをシミュレートします

  • メソッド: Tap(要素=なし、x=なし、y=なし)
  • メソッド: Perform() # サーバーにコマンドを送信して操作を実行します
  • パラメータ:
    1.element: 配置された要素
    2.x: 要素の左上隅を基準とした座標。通常は要素の X 軸座標が使用されます。
    3.y: 要素の Y 軸座標は通常、使用済み

3. 指で押す操作

指で画面を押すことをシミュレートし、押すと離れることに対応します。

  • メソッド:press(el=なし、x=なし、y=なし)
  • メソッド: release() # アクションを終了し、指を画面から離します

4. 操作を待ちます

  • メソッド: wait(ms=0)

5.指で長押し操作

携帯電話をシミュレートして、画面を一定時間押し、その後、それに応じて押して放します。

  • 方法:long_press(el=なし、x=なし、y=なし、duration=1000)

6. 指の移動操作

携帯電話のスライド操作をシミュレート

  • 方法:move_to(el=なし, x=なし, y=なし)

携帯電話操作API

携帯電話のいくつかの一般的な設定機能を操作します。

1. プレフィックスコード

from appium import webdriver
# server 启动参数
desired_caps = {}
# 设备信息
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '5.1'
desired_caps['deviceName'] = '192.168.56.101:5555'
# app的信息
desired_caps['appPackage'] = 'com.android.settings'
desired_caps['appActivity'] = '.Settings'

# 声明我们的driver对象
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

2.携帯電話の時間を取得する

  • メソッド: device_time
  • コード:
    # 获取当前手机的时间
    print(driver.device_time)

3. 携帯電話の幅と高さを取得する

携帯電話の幅と高さを取得すると、幅と高さに基づいていくつかの調整操作を行うことができます。

  • 方法:get_window_size()
  • コード:
print(driver.get_window_size())

4. キーをデバイスに送信します

ホームボタン、音量ボタン、戻るボタンなどのシステムキー値の操作をシミュレートします。

  • パラメータ:
    keycode: デバイスに送信されたキーコード
    metastate: 送信されたキーコードに関するメタ情報、通常はデフォルト値
  • ビジネス シナリオ:
    1. 設定を開きます。
    2. 音量を上げるキーを複数回押します。
  • コード:
    for i in range(3):
        driver.keyevent(24)

 

5.携帯電話の通知バーを操作する

携帯電話の通知バーを開いて、関連情報と通知バーの要素の操作を取得します。

  • 方法:open_notifications()
  • ビジネスシナリオ:
    1. 設定を開始する
    2. 通知バーを開く
  • コード:
driver.open_notifications()

6. 携帯電話の現在のネットワークを取得します

電話機が現在接続しているネットワークを取得する

  • 方法:network_connection
  • ビジネス シナリオ: 携帯電話の現在のネットワーク モードを取得する
  • コード:
print(driver.network_connection)

7. モバイルネットワークを設定する

携帯電話のネットワーク モードを変更し、特殊なネットワーク条件下でテスト ケースをシミュレートします。

  • 方法:set_network_connection(connectionType)

8. 携帯電話のスクリーンショット

携帯電話の現在の画面をキャプチャし、指定した形式で設定した場所に画像を保存します

  • 方法:get_screenshot_as_file(filename)

スクリプトの記録

「記録開始」ボタンをクリックしてスクリプトの記録を開始します。

  1. 上部ナビゲーション バーの左側にある最初の [要素の選択] ボタンをクリックして検索バーを選択し、右側の [クリック] ボタンをクリックして操作します (記録プロセスでは、最初に左側の APP 要素を選択します)記録ウィンドウの横に移動し、ウィンドウの右側に操作方法を記録します)。

  2. 録音終了後、「録音停止」ボタンをクリックすると、録音ウィンドウ右上にオペレーションコードが同時に表示されますので、コードの種類を選択し、テンプレートコードを正式コードに変換し、Pycharmにコピーしてください。

  3. コードを pycharm にコピーした後、各操作またはページ切り替えに待ち時間を追加することが最善です。そうしないと、ネットワーク速度、APP 設計の問題、またはその他の理由により次のページに間に合わず、APPIUM が実行できなくなります。ページ要素と位置を取得するための要素は失敗し、pycharm の実行時にエラーが報告されます。コードを編集した後、pycharm の実行ボタンをクリックすると、APPium が電話機上でスクリプトを自動的に実行します。

Guess you like

Origin blog.csdn.net/hjy_mysql/article/details/119520279