appium--マルチタッチ

前戯

ズームのために、我々はスライド式フロントは、例えば、地図ズーム十分ではありません使用し、ここでは、マルチタッチを使用する必要があります。

MultiActionクラスは、マルチタッチ、マルチタッチ操作は、主に、以前ActionTouch指スライド効果の複数の操作をシミュレートすることができる学んだと方法2、MultActionが組み合わされてもよい)((ADD)および実行を含む、シミュレートすることが可能です

appium.webdriver.common.touch_actionのインポートTouchAction
 から appium.webdriver.common.multi_action インポートMultiActionの

:ローディング
追加(セルフ、:方法 * MultiAction TouchActionにオブジェクトを追加するtouch_action)、そしてその後、実行

パラメータ:touch_action一つ以上TouchActionオブジェクト、チェーンディスクリプタ指操作を実行する

使用:
A1 = TouchAction(ドライバ)
a1.press(EL).move_to(E2).release()

A2 = TouchAction(ドライバ)
a2.press(E3).move_to(E4 ).release()

MultiAction(ドライバ)()(A1、A2).performを.add

の原理を説明スライド

 

(ズーム)増幅:各指をB> A、C> Dから外側に拡大ページを移動させながら

還元(ピンチ):指が同時にA> Bからページを減らしている、D> Cは中間に移動します

リアル

appiumのインポートwebdriverを
 から appium.webdriver.common.touch_actionのインポートTouchAction
 から appium.webdriver.common.multi_actionのインポートMultiAction 

desired_caps = {}は
[desired_caps ' platformNameを' ] = ' アンドロイド' 
desired_caps [ ' DEVICENAME ' ] = ' 127.0.0.1: 62001 'の
desired_caps [ ' platforVersion ' ] = ' 5.1.1 ' 
desired_caps [ 'アプリ' ] = R ' F:\アプリ\ com.baidu.BaiduMap.apk ' 
desired_caps [ ' appPackage ' ] = ' com.baidu.BaiduMap ' 
desired_caps [ ' appActivity ' ] = ' com.baidu.baidumaps.WelcomeScreen ' 
ドライバ = webdriver.Remote(' のhttp:// localhostを:/ハブ4723 / WD ' 、desired_caps)
driver.implicitly_wait( 10 

X = driver.get_window_size()' ' ] 
Y = driver.get_window_size()'高さ' ] 

driver.find_element_by_android_uiautomatorの\ ' UiSelector新新()テキスト( "マップ入力してください")。" ).click()


DEFピンチ():  定義限定機能

    アクション1 = TouchAction(ドライバ)   最初のジェスチャー 
    アクション2 = TouchAction (ドライバ)   第ジェスチャ 
    pinch_action = MultiAction(ドライバ)

    action1.press(X = 0.2 * X、Y = 0.2 * Y).WAIT(1000).move_to(X * X = 0.4、Y = 0.4 * Y ) .release()
    action2.press(X = 0.8 * X、Y = 0.8 * Y).WAIT(1000).move_to(X * X = 0.6、Y = 0.6 * Y ).release()
    pinch_action.add(アクション1、アクション2)  ローディング 
    pinch_action.perform()  実行


#は増幅機能定義
DEF )ズーム(:
    アクション1 = TouchAction(ドライバ)   第1のジェスチャー 
    アクション2 = TouchAction(ドライバ)   第ジェスチャ 
    zoom_action = MultiAction(ドライバ)
    action1.press(X 0.4 * X = Y = 0.4 * Y).WAIT(1000).move_to(X * X = 0.2、Y = 0.2 * Y ).release()
    action2.press(X = 0.6 * X、Y = 0.6 * Y ).WAIT(1000).move_to(X * X = 0.8、Y = 0.8 * Y ).release()
    zoom_action.add(アクション1、アクション2)   #1 ローディング 
    zoom_action.perform()  実行


IF  __name__== ' __main__ '  I における範囲(3):  3リダクション機能を実行する
        ピンチ()

    のために I (3レンジ:)
        ズーム()

 

おすすめ

転載: www.cnblogs.com/zouzou-busy/p/11438972.html