問題タブ [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.

0 投票する
0 に答える
1260 参照

jestjs - Jest でのテスト時に Spectron を使用して Electron を「モック」する

Jest を使用して Electron アプリのライブラリ コードをテストしています。Jest は に対して奇妙なことをrequire行います。これは、Electron が行う必要があることを妨げています... と思います。

Spectron は、ライブラリ呼び出しを介して Electron アプリを作成できるようにすることで、テスト フレームワーク内からさまざまな Electron ビットにアクセスできるようにすることを目的としています。

最終的には、Electron の実際のものrequire('electron')(ブラウザー ウィンドウの作成など)を使ってモックできるようにする必要があります。主に、さまざまなライブラリ ビットが意図したとおりに機能するようにするためです。

動作するはずの様子は次のとおりです。

package.json で:

テスト/モック/electron.js:

docsによると、通常の操作app.electronと同じものにアクセスできるはずです。require('electron')

いくつかのテスト:

ただし、それ自体は定義されapp.electronていますが、定義されていないため、これは失敗します。App

ここからどこへ行くべきかよくわかりません。解決策を探しています

0 投票する
1 に答える
398 参照

testing - Spectron でウィンドウが閉じるのを「待つ」にはどうすればよいですか?

モーダル ウィンドウでいくつかのロジックを処理する Electron アプリケーションに取り組んでいます。これらのウィンドウは、非同期アクションが解決されるのを待ってから、自動的に閉じます。現在、Spectron と Jest を使用してこの動作をテストするのに苦労しています。ウィンドウのクローズをキャッチして別のテストに進む方法がないようです。

現在、私のコードは

それは機能しますが、非常にアンチパターンだと思います。のようなことをする方法はあるのだろうか

どんな助けでも大歓迎です。

0 投票する
1 に答える
640 参照

electron - Spectron app.client にすべてのメソッドが含まれていない

Spectron と mocha を使用して電子アプリをテストしようとしています。これが私のテストを含むファイル「first.js」です。

最初のテストは合格ですが、2 番目のテストでは要素をクリックしたいのですが、app.client には .click メソッドが含まれておらず、getText や getHTML も含まれていません。webdriverio からブラウザーをインポートしようとしましたが、同じ問題でした。テスト時に、これらのメソッドが存在しないというエラーが表示されます。スペクトロンのドキュメントを読み直しましたが、定期的に .click および .getText メソッドを使用しています。なぜ取得しないのですか? ドキュメントに記載されているように、スペクトロンをインポートしました。

ありがとう。