モバイル端末での使用のための5つの--AppiumLichフレームワークの自動テストシリーズ - Mio4konさんのブログ

チュートリアルのシリーズの前に経験した、私はあなたが試してジャンプジャンプしなければならないと信じて、このチュートリアルでは、自動テストの終了を移動するためのフレームワーク(appium-霊)を使用する方法を紹介します。

行こう

プロジェクト構造

プロジェクトのディレクトリ構造の下で見て

  • apk配置は、フォルダテストしたい*.apkファイルを
  • data/config.iniファイルには、変更する必要がある内容を[name][account]
  • data/page.yamlそれはで述べた4つの一連の文書である要素の位置のファイルを
  • test/conftest.py前の実施形態とのファイルであるsetup & teardown操作は、シリーズIIはで述べています。

注意:[account]アカウントのパスワードのテストアプリケーションのために。

構成アイテム

config.ini

上記の指示に従って、最初にコンフィギュレーションアプリケーションAPKは同様に、試験されているdata/config.iniコンテンツに。

あなたがアプリケーションわからない場合はapp_package(パッケージ名)とapp_activity(起動クラス名)を、次のことが可能aaptなツールを取得します。

      
      
1
2
3
4
5
      
      
ビルドツールの下でのAndroid SDKの一般的なバージョンを入力します
CDライブラリ/アンドロイド/ SDK /ビルド・ツール/ 25.0.0
执行AAPTダンプバッジを付ける<APK地址> | grepの-E 'パッケージ|起動可能-活動'
/Users/mio4kon/code/python_workspace/appium-lich/apk/v2ex.apkをバッジAAPTダンプ|
grepの-E 'パッケージ|起動可能-活動'

appiumサービス

設定が完了したら、開く必要があります appium service

      
      
1
2
      
      
CDのPROJECT_PATH
appium --address 127.0.0.1 --port 4723 --log "appium.log" --log-タイムスタンプ--local-タイムゾーン--sessionオーバーライド

このサービスでオンとプロジェクトうねりにログファイルになっています appium.log

pages.yaml

最後に、我々は要素を検索する必要があります。

携帯電話のテストAPKを開いた後、使用するuiautomatorviewer情報要素を表示します。

uiautomatorviewerツールは次の場所にあります。<android-sdk>/tools/binディレクトリ

      
      
1
2
      
      
CDライブラリ/アンドロイド/ SDK /ツール/ binに
./uiautomatorviewer

これは、GUIツールを開きます

14920693891874

青色の円をクリックして、現在の携帯電話のインターフェース上の情報のすべての要素を見ることができます。

私は、今後の中で使​​用されるID情報のいくつかの数を記録しました

      
      
1
2
3
4
      
      
com.czbix.v2ex:ID /ログインインターフェイスIDを入力してくださいusername_tv
com.czbix.v2ex:ID /アカウントアカウントIDの入力ボックス
com.czbix.v2ex:ID /パスワードID・パスワードボックス
com.czbix.v2ex:ID / sign_inのログインID

書面でpages.yaml最初のオープンファイルの前にwatch_dog

python3 watch_dog.py

その後、完全なため、これらの情報に対応するpages.yamlファイル

      
      
1
2
3
4
5
6
7
8
9
10
11
12
13
15
16
17
18
19
20
21
22
23
24
      
      
# content of pages.yaml
---
HomePage:
dec: 主界面
locators:
-
name: 登录入口
type: id
value: com.czbix.v2ex:id/username_tv
LoginPage:
dec: 登录页面
locators:
-
name: 账户
type: id
value: com.czbix.v2ex:id/account
-
name: 密码
type: id
value: com.czbix.v2ex:id/password
-
name: 登录
type: id
value: com.czbix.v2ex:id/sign_in

保存文件后,就会发现在 page/pages.py中已经生成了控件元素.

剩下的时间就是编写用例的时候了.其实非常简单!

编写用例

test/目录下新建一个 test_home 文件

      
      
1
2
3
4
5
6
7
8
9
10
      
      
class :
def test_login(self, action: ElementActions):
L.d( 'test_login')
account = Steps.get_account()
action.click(HomePage.登录入口)
action.text(LoginPage.账户, account[ 0])
action.text(LoginPage.密码, account[ 1])
action.click(LoginPage.登录)
assert action.is_toast_show( '欢迎回来')

其中Steps是我写的专门放steps的文件

      
      
1
2
3
4
5
6
7
8
9
      
      
# content of test/steps.py
class Steps:
@allure.step(title="获取账号和密码")
デフ get_account ()
アカウント=環境()。get_inited_config()。account_success
PWD =環境()。get_inited_config()。password_success
LD( 'アカウント:%sのパスワードS%' %(アカウント、PWD))
返す [アカウント、PWD]

上書きユースケースにログインし、そうではありません簡単に、しかし、ケースを見たときには非常に明確になります。

ラン

python3 run.py    

場合

再び実行されるケースを使用してください。フィニッシュの後、なりますreport/htmlテストレポートを生成します。

概要

チュートリアルモバイルオートメーションのこのシリーズはオーバー考えることができ、最終的に私はソースのプロジェクトを添付します、我々は歓迎するstarと言及issue

プロジェクト住所:https://github.com/mio4kon/appium-lich


おすすめ

転載: www.cnblogs.com/dajunjun/p/11711238.html