問題タブ [ember-testing]
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.
ember.js - PhantomJS 構文エラーによる Ember.js テストの失敗
Ember アプリケーションでテストを実行すると、このエラーが発生します。どうやら構文エラー ( Unexpected token ','
) が発生しており、テスト環境のロードそのものが失敗するため、結果としてすべてのテストが失敗します。
上記の最初のエラーに注意してくださいglobal failure
。これは、予期しないカンマ トークンを報告するものです。その後、残りのすべてのテストは、存在するファイルをインポートできないか、testResolver
が設定されていないか、またはその他の理由で失敗します。
問題は、ブラウザですべてが正しく実行されることです。これは、PhantomJS がどこかの構文でより厳密になっていることに関係しているようです。しかし、この不正なコンマがどこにあるかについてのエラー メッセージには示されていません。
このコンマを見つける方法や、このエラーを何らかの方法で解決する方法について、ヒントを教えてもらえますか? 前もって感謝します。
ember.js - テスト時にコンポーネントからプロパティを取得する方法は?
コンポーネントにテンプレートがない場合、コンポーネントのプロパティ値を確認するにはどうすればよいですか? アプリケーションでは、コンポーネントが拡張され、テンプレートがそのように提供されます。
this.render(hbs'{{#my-component foo=foo2}}{{foo}}{{/my-component}}');
foo が譲れないので使えません。コンポーネントに直接アクセスすることもできません。
ember.js - Ember ヘルパー ユニット テスト - サービスの注入またはモック
私は Ember 1.13 (まだ 2.x ではありません) を使用しており、ヘルパー ユニット テストを実行できるようにする必要があります。私のヘルパーには次の行があります:
Ember 2.x より前のヘルパーは「本物の」オブジェクトではなく、次のようなことはできません。
ヘルパーの単純な単体テストを実行しようとすると、次のようになります。
この場合、グローバル アプリの名前空間をインポート/挿入/モックするにはどうすればよいですか? または、これを乗り越える別の方法はありますか?
ember.js - インスタンス初期化子単体テストが「store is undefined」で失敗する
サンプル アプリケーションの生成後:
次のファイルを使用します。
models/test-data.js
ルート/index.js
instance-initializers/preload.js
テンプレート/index.hbs
アダプター/application.js
ember serve
アプリケーションを実行し、プリロード データを表示しますが、インスタンス初期化子/tests
の既定の単体テストに進むと、エラー で失敗します。preload
store is undefined
完全なエラー メッセージ:
単体テストで使用できるように、アプリケーションのストアを初期化するにはどうすればよいですか?
編集 - tests/unit/instance-initializers/preload-test.js
ありとなしで試してみました(Ember-Dataがページ上にある場合、これを行う必要はないneeds: [ 'service:store' ]
ことが示唆されていますが、単体テストとインスタンス初期化子の両方でインポートを試みました)。
バージョン:
ember.js - Ember CLI: 不明なファクトリを登録しようとしています: `controller:object`
私の ember-cli バージョンは 0.2.3 です。テストを実行しようとすると、次のエラーが発生します。
これを引き起こしている可能性のあるものについて何か考えはありますか? ember-cli 内部の問題のように見えます。
私は実際v2.3.0-beta.2
にEmber CLIを使用しています。起動すると、なぜか端末に v0.2.3 と表示されます。
Ember のバージョンは 2.0 です。
これをトリガーするモデルの単体テストがあります。テストでは、アプリが Ember Data を使用していないためではmoduleFor
なく、使用しています。moduleForModel
jquery - ember 統合テストでコンポーネントに焦点を当てる/ぼかす方法は?
Ember.js コンポーネントのテスト中にフォーカス イベントとブラー イベントをトリガーするにはどうすればよいですか?
this.$().focus();
またはthis.$('input').focus();
動作しているように見えますが、phantomjs と chrome では動作が異なります。
またthis.$().blur();
、this.$().focusout();
phantomjs と chrome の両方が動作していないようです。
ember.js - Chrome および Firefox の Ember アドオン テストが「ランナーを待機中」でハングする
次のようにChrome について言及しましtestem.json
たが、何も起こりません。
「Chrome」のみを記述すると、コンソールに「Waiting for runners...」というメッセージが表示されてハングします。
package.json
、bower.json
およびtestem.json
他のすべてのプロジェクトと同じであり、他のすべてはすべてChromeで実行されています。
javascript - ember.js でカスタム テスト ヘルパーを使用する方法
以下を使用してカスタム テスト ヘルパーを生成しました。
コードを削除したものを次に示します。
ただし、コンポーネントテストで実際に機能させることはできません。私はそれを直接使ってみました:
これはエラーをスローしReferenceError: integrationFor is not defined
ます。
そして、私もそれをインポートしようとしました:
ドキュメントに基づいて正しくないようです。
ドキュメントには最新バージョン (>2.4.x) に対応するセクションがないため、これがテスト ヘルパーの登録を処理する正しい方法なのか、それとも私のやり方が間違っているのかわかりません。