2012-04-26 2 views
1

これまでのところ、私はInstrument GUIからiOSの自動化を実行し、コマンドラインでも機器を使用しています。私は手動でテストの一部として私のアプリを開いたり閉じることができるようなオプションは見つかりませんでした。代わりに、楽器を走らせることは、常に最初にアプリを起動し、最後に終了するように見えます。iOS向けにUIAutomation Instrumentsを使用している場合、テスト間で私のアプリケーションを開いたままにする方法がありますか?

私のテストの一部には、デスクトップブラウザとのペアリングプロセスが含まれているため、私のアプリを開いたままにしておきたい理由があります。理想的にはosxのジェンキンでは、一連のシェルコマンドがあります。

  1. アプリを "display passcode"状態にするrun instrumentsテストです。
  2. ブラウザコンポーネントにパスコードを入力する別のコマンドを実行します。
  3. アプリが正常にペア設定されたことを確認する別の計測器テストを実行します。

ステップ1の後にアプリケーションが自動的に終了すると、残りのシーケンスは機能しません。

また、計測されたテストの中からシェルコマンドを実行する方法があるかどうかを確認しましたが、セキュリティ上のリスクがあるためjs does notはこのようなことを許可しているようです。私はWindows上でこれを実行するつもりはないので、OSXの特定のコマンドに満足しています。

+0

target.host()を使用して必要な結果を得ることができるようです。[here](http://stackoverflow.com/questions/6191814/issuing-a-synchronous-http-get -request-or-invoking-shell-script-in-javascript-fr/6854819#6854819)、私のテストの中からターミナルコマンドを実行します。それでも誰かがアイデアを持っていれば楽器コマンドが完了したら私のアプリを開いたままにしておきたい –

答えて

1

ああ、インストゥルメンテーションが完了したときにアプリプロセスを実行し続ける方法はありません。しかし、target.delay()を使用すると、アプリが探している状態になるまで待つことができます。あなたのステップで何を意味しているのかよく分かりません。2.シミュレータの外で「ブラウザコンポーネント」を操作していますか?または、これはすべて同じアプリ内にありますか?

関連する問題