問題タブ [spectron]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mocha.js - electron-spectron webdriverIO ビデオ タグ ソースを取得する方法は?
私は今、電子スペクトルでいくつかのテストを書いています。
スペクトルがアプリを起動した後、ビデオが停止しているかどうかを確認したい
コードは次のようになります
エレメント
テストコード
webdriverIO には、ビデオ タグのソースを見つけるために使用できる getElementById のような API がないようです。
誰かが良い考えを持っていますか?
javascript - ダブルクリック xy 座標 WebdriverIO
WebdriverIO はdoubleClick()
コマンドを提供します。leftClick()
などの他のコマンドとは異なり、doubleClick()
xy パラメータはありません。特定のコンポーネントの特定の xy 位置をダブルクリックできません。正確なダブルクリック位置に子要素を挿入する必要があるため、これを行いたいと思います。
moveToObject()
最初にカーソルを特定の場所に移動していましたが、これdoubleClick
を拾いません。コンポーネントの中心を常にダブルクリックします。
また、「elementIdDoubleClick」のようなコマンドもありません。そして、アクションはまだ実装されていません。
コンポーネント内の特定の xy 座標をダブルクリックする方法を知っている人はいますか?
docker - Docker で Spectron テストを実行するにはどうすればよいですか?
Windows PC で Spectron テストを実行します。アプリケーションを docker でテストしたい。Spectron の Docker イメージをどこで入手できるかわかりません。
mocha.js - Spectron テストはウィンドウを開いたままにします
基本的な Spectron テスト ファイル (Typescript 内) のみを使用してアプリを開き、ウィンドウ カウントを取得して、おそらく終了します。ただし、Spectronapp.stop()
のみが開発ツール ウィンドウを閉じて、メイン ウィンドウを実行したままにしているようです。私は周りを検索して、この問題を抱えている人々に関するいくつかの GitHub の問題に出くわしました。最高の人々が提供しているように見えるのは、を使用することpkill
です。必要以上に殺される可能性があるため(たとえば、CIサーバー上で)、私はそれをしたくありません。
すべてのコードを表示する前に、テスト後に Spectron のセッションを実際に終了させるにはどうすればよいですか?
ここにspec.ts
私のテストが含まれています:
これが私のものpackage.json
です:
これが私のものmain.ts
です:
mocha.js - スペクトロンで複数のレンダラーにアクセス
私はElectronアプリケーションに取り組んでいます。メイン プロセスは、最初のレンダラー (browserWindow) を開きます。ユーザーがボタンをクリックすると、このレンダラーは IPC メッセージをメイン プロセスに送信します。このメッセージを受信すると、メイン プロセスは 2 番目の別のレンダラーを開きます。これら 2 つのレンダラーは同時に存在します。アプリケーションは正常に動作します。
次に、Spectron を使用してこのアプリをテストします。両方のレンダラーにアクセスするにはどうすればよいですか? 問題はapp.rendererProcess
常に最初のレンダラーを返すことです。
これは、最初のレンダラーの WebdriverIO オブジェクトapp.client
を常に含み、2 番目のレンダラーを決して含まない場合と同じ問題です。browser
テストで Spectron アプリケーションのすべてのプロセスを一覧表示する方法はありますか? browser
2 番目のレンダラーのオブジェクトにアクセスできますか?
AVA の場合:
AVA を使用していますが、問題はないと思います。したがって、これを Mocha などで機能させる方法を誰かが知っていれば、非常に役に立ちます。
ありがとう !