問題タブ [web-component-tester]
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.
javascript - ライト DOM のロードが必要な要素をどのようにテストしますか?
私は要素を持っています:
およびテストフィクスチャ:
light dom が初期化された後にテストを実行する方法がわかりません。添付されたイベントをリッスンしようとしましたが、fixture() を呼び出す前に登録する方法がないため、発生しません。同期テストも試みましたが、添付イベントが発生する前にテストが実行されます。
web-component - テスト用に HTML インポートをモックする方法
カスタム要素のテストを書いています。私はWeb Component Testerを使用しているので、モックには Sinon.js を使用するとよいでしょう。
カスタム要素が<link rel="import" href="something.html">
動的に追加されます。
のコンテンツをスタブするにはどうすればよいsomething.html
ですか?
teamcity - TeamCity CI で実行される Polymer Webcomponent Tester を入手する
TeamCity 環境でのビルド手順として、Web コンポーネントのコレクションに対してすべての単体テストを実行する必要があります (TeamCity は常に最新であると想定できます)。どこから始めればよいかわかりません。アドバイスをいただければ幸いです。
unit-testing - firebase を使用するポリマー Web コンポーネントの単体テスト
Firebase 分散データベースの最新リリースを使用するポリマー Web コンポーネントのオフライン単体テストを構成しようとしています。私のテストのいくつかは合格していますが、合格したものとほぼ同じように見える他のテストは正しく実行されていません。
私の構成を示すプロジェクトを github にセットアップしました。以下にさらに解説を加えます。
サンプル: https://github.com/doctor-g/wct-firebase-demo
そのプロジェクトには、正常に動作する 2 つのテスト スイートがあります。最も単純なのはoffline-test
、Web コンポーネントをまったく使用しない です。これは単に、firebase データベースのオフライン モードを使用して単体テストを実行できることを示しています。このトリックの核心は、以下に示すメソッドにあります。これは、 firebase-server に関する nfarina の作業suiteSetup
から取り上げたトリックです。
すべてのテストにoffline-test
合格しました。
次のスイートはwct-firebase-demo-app_test.html
、同名の Web コンポーネントをテストする です。このスイートには、同様に設定されて合格する一連の単体テストが含まれていoffline-test
ます。依存性注入の考え方に従って、wct-firebase-demo-app
コンポーネントにはdatabase
、firebase データベース参照が渡される属性があり、これはすべての firebase 呼び出しを行うために使用されます。スイートの例を次に示します。
コンポーネントには非常に単純なメソッドもいくつかあります。これは、すぐに説明する壊れた部分に向かって三角測量を行う試みです。このテストに合格したと言えば十分です。
で、次の実装によってサポートされていますwct-firebase-demo-app
。
繰り返しますが、これらはすべてパスします。今、私たちは本当の困惑にたどり着きます。x-element
メソッドを持つ別の要素 の一連のテストがありますpushData
。
このメソッドのテストは、そのスイートで唯一のテストです。
このテストは合格しません。このテストの実行中に、コンソールに次のエラー メッセージが表示されます。
once
いくつかのブレークポイントを設定して実行をたどると、このエラーは呼び出しの後、コールバックがトリガーされる前に発生するように思えます。繰り返しますが、これは、上で説明した にある同じテスト構造では発生しないことに注意してくださいwct-firebase-demo-app
。
それが私が立ち往生しているところです。offline-test
およびwct-firebase-demo-app_test
スイートは正常に動作するのに、この API キー エラーが で表示されるのはなぜx-element_test
ですか? 私が持っている他の唯一の手がかりは、有効な API キーをinitializeApp
構成にコピーすると、代わりにテストタイムアウトが発生することです。
アップデート:
これは、テストを実行したときのコンソール ログの (パッチを適用した) イメージです。
以下のtony19によって提起された問題を説明するために、pushData has an effect
コメントアウトx-element_test
されたコンソールログを次に示します。
polymer - Polymer web-component-tester を使用して特定のテストを実行するにはどうすればよいですか?
Polymer Web コンポーネントの開発中、具体的には追加のテストを追加しているとき、テストを調整するたびにすべてのコンポーネントのテストを実行するのは非常に面倒です。
最も簡単な答えは、実行してはいけないテストをコメントアウトすることですが、これも面倒です。
web-component-tester は Mocha を使用するため、実行する特定のテスト セットのみを示す方法がおそらくあるはずです。特定のファイルをターゲットにするのは簡単ですが、ファイル内の特定のテストをターゲットにするにはどうすればよいでしょうか?
polymer - JUnit 形式のテスト出力
Jenkins は私のテスト ケースが Polymer で実行されていることに気付かず、正しい JUnit ファイルを生成する方法がよくわかりません。web-component-testerを使用して JUnit 形式のテスト出力を生成するにはどうすればよいですか?
testing - Eslint が Polymer 要素の web-component-tester テストを実行していない
eslint を使用して、Polymer 要素の gulp でテストを実行しようとしていますが、「エラー 'suite' は no-undef で定義されていません。 "。
私のgulpfile.js:
そして、ここに私が使用するテストスイートがあります:
最後に、このテストの gulp コマンド:
私はこれらすべてのツールと一般的な Web 開発に非常に慣れていないため、正しく行っていない非常に単純なものがあるに違いありませんが、24 時間経ってもまだ見つけられないようです。
編集: eslint-plugin-html がインストールされていて、.eslintrc.json にインストールされています
polymer - スタブを呼び出し、置換し、Web コンポーネント テスターで修正する必要がある順序
アプリの一部の要素のテスト スイートの構築を開始しています。最上位には<my-app>
要素があり、そのテンプレートでは<my-session
要素を使用してユーザーのログオンを制御し、<iron-media-query>
要素を使用してアプリのヘッダーで使用する文字列の長さを定義します。
これら 2 つの動作をより適切に制御するために、それらの特別なテスト バージョンを構築し、replace('my-session').with('test-session')
アプローチを使用してそれらを変更しています。また、この関数を使用stub
して、テスト スイートとのやり取りを制御します。
ポリマーの Web サイトのドキュメントをすべて読みましたが、 を使用する必要があるか、 を呼び出す前または後にreplace
を使用する必要があるかわかりません。stub
fixture
誰かアドバイスできますか