app自動化テスト4---desired capabilities
3554 ワード
Capabilities
Capabilitiesとは何ですか?Desired Capabilitiesはキー値ペアの組み合わせで、Pythonの中に辞書があります.クライアントはこれらのキー値ペアをappiumサーバに送信し、サーバにテスト方法を教えます.
desired Capabilitiesの例:
よく使われるCapabilities共通、Android専用、iOS専用のCapabilities:http://blog.csdn.net/jojoy_tester/article/details/72081905
Capabilitiesパッケージは、関数パッケージを使用して複数回呼び出すことができ、パラメータを変更すると何度もフィットします.
アプリの変化、携帯電話の変化、バージョンの変化などをテストするには、プログラムのコードを修正する必要があります.カプセル化した後、異なる需要を使って適切なパラメータを入力すれば、直接使用することができます.
Capabilitiesパッケージの使用例:
関数パッケージです...
Unicodeキーボード設定
テキストボックス(TextField)
アンドロイドの自動化では、desired Capabilitiesには次の2つの設定があります.
***
デフォルトでは、iOSとAndroidの自動化ツール(携帯電話、シミュレータ)では、入力ボックスにASCII以外の文字を入力することはサポートされていません.
iOSは先に研究しません.スキップします.
appiumはこの問題に対して、Android自動化の問題をどのように解決しますか?
ダウンロードして特殊なキーボードをインストールすることで、AndroidはUnicode文字をサポートすることができ、この入力法はASCIIを通じてappiumとテストされたアプリケーションの間でテキストを同行させることができる.
設定する必要があります.
unicodeKeyBoardはTrueに設定されています.キーボード設定をテスト完了後に元の状態に戻すには、resetKeyBoardもTrueに設定する必要があります.そうしないと、appiumテストが終了してもappiumのUnicodeキーボードがアクティブになります.
設定するとsend_keys()メソッドは入力ボックスにUnicode文字を入力しました.
コメント:
このUnicodeキーボードは仮想キーボードではなく、インタフェースには表示されません.他のタイプのテストを行うには、他の入力方式に戻す必要があります.
総じて、desired Capabilitiesに次の2つの設定を追加します.
Capabilitiesとは何ですか?Desired Capabilitiesはキー値ペアの組み合わせで、Pythonの中に辞書があります.クライアントはこれらのキー値ペアをappiumサーバに送信し、サーバにテスト方法を教えます.
desired Capabilitiesの例:
desired_caps = {} #
desired_caps['platformName'] = "Android" # ,
desired_caps['platformVersion'] = '22' #
desired_caps['deviceName'] = "7N3HPX159H051514" # ,adb devices
desired_caps['udid'] = "7N3HPX159H051514" #
# web
desired_caps['browserName'] = '' # web , APP 。Chrome、Browser、Chromlum
'''
, , activity
desired_caps['app'] = r'D:\test\test.apk' # APP
'''
desired_caps['appPackage'] = 'com.thinkwu.live' #APP package uiautomator view appium
desired_caps['appActivity'] = '.ui.activity.InitActivity' # APP ,appium
desired_caps['unicodeKeyboard'] = "True" # Unicode
desired_caps['resetKeyboard'] = "True"
desired_caps['newCommandTimeout'] = 30 # ,
''' :
appium h5 :
desired_caps['chromeOptions'] = {'androidProcess': 'com.tencent.mm:tools'}
'''
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps)
よく使われるCapabilities共通、Android専用、iOS専用のCapabilities:http://blog.csdn.net/jojoy_tester/article/details/72081905
Capabilitiesパッケージは、関数パッケージを使用して複数回呼び出すことができ、パラメータを変更すると何度もフィットします.
アプリの変化、携帯電話の変化、バージョンの変化などをテストするには、プログラムのコードを修正する必要があります.カプセル化した後、異なる需要を使って適切なパラメータを入力すれば、直接使用することができます.
Capabilitiesパッケージの使用例:
関数パッケージです...
from appium import webdriver
def driver_app(platformVersion='23',deviceName='7N3HPX159H051514',udid='7N3HPX159H051514'):
desire_caps = {}
desire_caps['platformName'] = "Android"
desire_caps['platformVersion'] = platformVersion
desire_caps['deviceName'] = deviceName
desire_caps['udid'] = udid
desire_caps['appPackage'] = 'com.thinkwu.live'
desire_caps['appActivity'] = '.ui.activity.InitActivity'
desire_caps['unicodeKeyboard'] = "True" # Unicode
desire_caps['resetKeyboard'] = "True"
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub",desire_caps)
return driver
if __name__ == "__main__":
driver = driver_app(platformVersion="22")
Unicodeキーボード設定
テキストボックス(TextField)
アンドロイドの自動化では、desired Capabilitiesには次の2つの設定があります.
desire_caps['unicodeKeyboard'] = "True"
desire_caps['resetKeyboard'] = "True"
***
デフォルトでは、iOSとAndroidの自動化ツール(携帯電話、シミュレータ)では、入力ボックスにASCII以外の文字を入力することはサポートされていません.
iOSは先に研究しません.スキップします.
appiumはこの問題に対して、Android自動化の問題をどのように解決しますか?
ダウンロードして特殊なキーボードをインストールすることで、AndroidはUnicode文字をサポートすることができ、この入力法はASCIIを通じてappiumとテストされたアプリケーションの間でテキストを同行させることができる.
設定する必要があります.
unicodeKeyBoardはTrueに設定されています.キーボード設定をテスト完了後に元の状態に戻すには、resetKeyBoardもTrueに設定する必要があります.そうしないと、appiumテストが終了してもappiumのUnicodeキーボードがアクティブになります.
設定するとsend_keys()メソッドは入力ボックスにUnicode文字を入力しました.
コメント:
このUnicodeキーボードは仮想キーボードではなく、インタフェースには表示されません.他のタイプのテストを行うには、他の入力方式に戻す必要があります.
総じて、desired Capabilitiesに次の2つの設定を追加します.