2016-12-08 11 views
0

私は、Electronronアプリケーションのエンドツーエンドテストを行うためにSpectronを起動する一連のモカテストを行っています。Visual Studio Team Servicesビルドのエンドツーエンドテストを実行できますか?

npm runでテストを実行しようとすると、タイムアウトして失敗します。アプリケーションが起動していないようです。 VSTSにRun Functional Testsビルドステップテンプレートがありますが、それは実際のテストDLL用です。 Javascriptのエンドツーエンドテストにも同様のものがありますか?

+0

Spectronフレームワークでこれらのテストを実行するためにデスクトップ上で実行する必要があるかどうか知っていますか?ホステッドビルドプールで実行している場合は、デスクトップセッションではなくサービスとして実行しています。 –

+1

テストはウィンドウと対話してビルドエージェントマシン上で実行する必要があるため、ビルドエージェントは対話モードで実行する必要があります。つまり、対話モードで実行するビルドエージェントをセットアップする必要があります。 (ホステッドエージェントはサービスモードで実行されています)ビルドエージェントは対話モードで動作していますか? –

+0

独自のビルドエージェントを構成し、前述のように対話モードで実行する必要があります。 –

答えて

0

Hosted Agentはサービスとして実行されていますが、SpectronはElectronアプリでテストを実行してウィンドウと対話し、テストはビルドエージェントマシン上で実行されます。ですから、そのテストを行うための前提のビルドエージェントにセットアップaに必要な(this試験試料と私のために正常に動作手順をビルドします。NPMインストールし、NPMインストールテスト)

  1. ログイン用のアカウントを使用してマシンに上記で説明したようにアクセス許可を準備しました。
  2. エージェントプールコントロールパネルタブ
  3. エージェントをダウンロードをクリックします。
  4. Windowsをクリックします。
  5. [ダウンロード]ボタンをクリックします。
  6. PowerShellを管理者として実行します。
  7. エージェントの作成でコマンドを実行します。
  8. ファイル名を指定して実行。前提のビルドエージェント上の設定に\ CONFIG CMD

詳しい情報は、あなたがthisの記事を参照することができます。

+0

オンザンプルビルドエージェントを使用することは最適な方法ではありません。代わりに機能テストタスクを使用する必要があります。 –

+0

@MrHinsh Run Functional Testsタスクは、Jonのシナリオには適用されません。これは、mochaとspectronがNode.JSとブラウザでテストベースを実行するためです。 VSテストエージェントはこのテストを実行できません。 –

+0

私はステップを進めることができました。エージェントはローカルにあり、ビルドが実行されていることを確認できます。しかし、テストはビルドエージェントとしてローカルマシン上で実行されているようには見えません。私が紛失しているかもしれない何か他にありますか? – Jon

0

テストはデスクトップと対話する必要があるため、通常は実行中のアプリケーションのインスタンスを持っていないコンパイル時には適していません。ビルド時に純粋な単体テストに固執する。これらのテストをorchastrateするには、Release Managementを使用する方がよいでしょう。つまり、あなたは簡単にアプリケーション(ビルドまたはリリース)とアプリケーションをデプロイすることができます。機能テストタスクを使用して、UIインタラクティブタスクを開始します。テストエージェントを配備したマシンが必要ですが、そのためのタスクもあります。

enter image description here

機能(エンドツーエンド)以来のテストは、あなたが一度だけで1を実行することができ、デスクトップと対話します。数分しかかからないのであれば、これは問題ありませんが、より機能的な乳頭が得られるにつれ、これは長くかかる可能性があります。機能テストタスクでは、複数のエージェント間でテストの実行を分割して、テストを並行して実行できます。

対話型モードで独自のビルドエージェントを構成する代わりに、サーバーが必要です。このモデルを最初から使用して拡張することができるようになると、将来的にはもっと賢明になります。

フレームワークでVisual Studioテストアダプターを使用できない場合は、Visual StudioとFunctional Testingプラグインを使用して任意のテストフレームワークを検出して実行できるように、自分で作成することができます。 Javascriptの場合、http://mortenhoustonludvigsen.github.io/JsTestAdapter/CreatingATestAdapter/には、例としてJasmin Test Adapterを作成する方法の素晴らしい例がいくつかあります。

+0

ラン・ファンクション・テストでSpectronテストを実行する方法を教えてください。 –

+0

FunctionalテンプレートにはDLL名が必要です。その周りに道がありますか? – Jon

+0

機能テストは、他のVisual Studioプラットフォームと同じテストアダプタを使用します。 Spectronテストアダプタをテストエージェントに「インストールする」必要があります。 「ユニットテスト」タスクで実行できる場合は、機能テストタスクも実行できます。 –

関連する問題