問題タブ [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.
web-component-tester - pathMappings を理解しようとしている
私は(部分的な)構造で取り組んでいるPolymerプロジェクトを持っています
my-element.html をコーディングするとき、その html インポートで form の URL を参照するようにし../polymer/polymer.html
ます。これが意味することは、app/elements と bower_components の両方を同じ URL にマップする必要があるということです (存在する場合は app/elements が優先されます。存在しない場合は、bower_components ディレクトリで検索するようにフォールバックする必要があります)。
wct-conf.js
ファイルをセットアップしようとしましたが、これを行います。デバッガーをいじっていろいろ試した結果、この時点にたどり着きました。
しかし、それらを実行するために gulp test:local を実行するとすぐに、404 を報告する奇妙な URL が大量に表示されます。彼らはこのようなものです
これはなんとかマージapp/elements
さbower_components
れ、奇妙な方法で。
私は何を間違っていますか、どうすればよいですか?
javascript - web-component-tester : テストは Chrome では成功しますが、Firefox では失敗します
コマンド ラインから Web コンポーネント テスターを使用して、Polymer コンポーネントでフィクスチャ ベースのテストを実行しています。テストは Chrome (v.47) では成功しますが、Firefox (v.42) では失敗します。問題は、Polymer コンポーネントの一部の変更オブザーバー関数で、予想されるデータが Chrome で受信されているが、Firefox では空であるため、後者でテストが失敗することです。重要なコードは次のとおりです。
ポリマー コンポーネント: Polymer({ is: 'コンポーネント名',
Chrome では、上記の「この行」の「this.data」の値は、html フィクスチャで渡されたものに関係なく、空ではありません。これにより、テスト ケースが成功します。しかし、Firefox では、イベントから受け取った「this.data」の値が空の配列 [] であり、上記のテストが失敗します。これが事実である理由はありますか?
また、「WebComponentsReady」イベントのイベント リスナー内にテスト スイートをラップしようとしましたが、web-component-tester は、そのようなイベントが発生した後にのみスイートが開始されることを既に保証しています。このアプローチは Chrome では引き続き機能しますが、Firefox では失敗します。
javascript - sinonサーバーなしのweb-component-testerでajaxリクエストをテストするための基本的なパターンは何ですか?
(1) XHR リクエストが完了し、(2)次にアサートが実行され、(3) テストに合格するように、web-component-tester と Polymer を使用して次の要素/テストをセットアップするにはどうすればよいですか?
/my-element.html
/my-element-test.html
背景:
web-component-tester で提供されている Sinon サーバーを使用せずに ajax 呼び出しをテストしたいと考えています (つまり、実際のxhr 呼び出しを行いたいと考えています。xhr 要求はファイルからコンテンツを返す必要があるため、これを行いたいと考えています)。別のシステムから自動的に生成されます。
FWIW、鉄の ajax 要素を使用するなど、コールバックと約束をさまざまな場所に配置しようとしましたが、これを解決する理想的な方法を見つけることができないようです。これまでに見つけた唯一の解決策は、「executeTests」というイベントを作成することですが、これはぎこちないようです。
polymer - wctを使用してiron-ajaxでポリマー1.0コンポーネントをテストする
カスタム コンポーネント内の iron-ajax コンポーネントに対するサーバーの応答をモックするのに最も苦労しています。これが私のコードファイルです。
custom-component.html:
custom-component-tests.html
Iron-ajax の generateRequest を明示的に呼び出していることに気付くでしょう。そうしないと、テストが完了 (および失敗) するまで要求が発生しないからです。generateRequest を明示的に呼び出すと、少なくともリクエストを実行できますが、(server.respond() を呼び出しているにもかかわらず) テストが完了するまで、iron-ajax は _handleResponse を呼び出しません。そして、そうする場合でも、iron-ajax に if (request === this.lastRequest) (そうではない) をチェックするコード行があるため、lastResponse を設定していません。
私は何を間違っていますか?
unit-testing - Web Component Tester で mocha-teamcity-reporter を構成する
Web Component Tester (WCT) テストを TeamCity-CI に報告したいと考えています。WCT はテスト フレームワークとして mocha を使用するため、 mocha-teamcity-reporterを使用するのが理にかなっていると思います。
問題は; 追加のレポーターを使用して Mocha/WCT を構成するにはどうすればよいですか?
polymer-1.0 - Polymer WCT - ubuntu でブラウザーのクロムが見つからない
ポリマースターターキットをUbuntuで起動して実行し、Javaのインストール後にテストを実行しようとし、クロムが既にインストールされている.
chrome でテストを実行するように構成しました (firefox でのテストが失敗するため)。コマンド「gulp test」を実行すると、以下のエラーが発生します。
'wct:local' は 367 ミリ秒後にエラーになりました エラー: 次のブラウザーが見つかりませんでした: chrome。(インストールされているすべての
ブラウザが見つかりました: firefox)
ここで何が欠けているのかわからない、
wct.conf.js
polymer - テストフィクスチャ内でdom-bindを使用するには?
<template is="dom-bind">
内<test-fixture>
でweb-components-testerを使用するにはどうすればよいですか?
私はそれをPolymer 0.8の方法で使用しようとしましたx-template
:
dom-bind
メソッドがないため、当然失敗しますstamp
。
次に、ネイティブ<template>
要素からスタンプしてみました:
ただし、Chrome 以外のブラウザでは、これはoutside dom-bind
.
それを機能させる方法はありますか、それとも web-components-tester/test-fixture/dom-bind のブロック バグですか?
javascript - Sinon.js を使用した navigator.browserLanguage または navigator.language のテスト
sandbox.stub
テスト フレームワークSinonnavigator.language
を使用して、たとえば、またはテストのために上書きするにはどうすればよいnavigator.userAgent
ですか?
以下を使用しようとすると:
次に、次のエラーが表示されます:存在しない独自のプロパティ言語をスタブできません:
これらのスタブはどれも期待どおりに機能しません。
- sandbox.stub(window.navigator, 'language', lang);
- sandbox.stub(navigator, 'browserLanguage', lang);
ナビゲーターオブジェクトを嘲笑しています。
ヒントはありますか?