2017-05-10 5 views
0

iOSシミュレータのswiftとXCTestCaseを使用して、以下のシナリオを自動化する必要があります。iOS XCTestCaseを起動していくつかのアクションを実行し、アプリを終了してアプリを再起動します

  • ステップ1:アプリを起動し
  • ステップ2:パフォーマアプリ
  • ステップ3でいくつかのアクション:殺すアプリ
  • ステップ4:アプリを再起動し、実行されるアクションは、永続的であるかどうかを確認

以下のスニペットを使用するために私たちの質問の1つに記載されています。

XCUIDevice.shared().press(XCUIDeviceButton.home) 
    sleep(60) 
    XCUIDevice.shared().siriService.activate(voiceRecognitionText: "Open {appName}") 

私にとってはうまくいきませんでしたが、何か別のアプローチをお勧めします。

おかげで、

+0

ユニットテストを行っていますか?もしそうなら、この特定のテストのためにXcode * UIテスト*に切り替えることができますか? –

答えて

2

使用launch起動または再起動するには:アプリケーションの使用terminate()を終了するには

XCUIApplication().launch() 

を。しかしdocumentationによると:

アプリケーションが既に実行されている場合、この呼び出しは、新しく立ち上げたインスタンスのクリーンな起動状態を確保するために、既存のインスタンスを終了します。

まもなく。テストは次のようになります。

XCUIApplication().launch() 
// some actions 
XCUIApplication().launch() 
// some action 
+0

ニースの答え!しかし、私はUIテスト(単体テストではない)を使用している場合にのみうまくいくと思います。 –

+0

はい。これはUIテストでのみ機能します。私は単体テストでそれができるとは思っていません。 –

関連する問題