問題タブ [enzyme]
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.
reactjs - contentEditable 要素の「onInput」でメソッドが呼び出されることを期待する
contentEditable
入力メソッドとして使用するコンポーネントがあります。関心のあるコンポーネントの部分は次のとおりです。
コンポーネントは正常に動作します -textChanged
ユーザー入力でメソッドに入ります。メソッドは次のようになります。
入力動作をテストしようとすると、直面している問題が発生します。セットアップは酵素、チャイ、シノンで行います。renderComponent
酵素のmount
メソッドを使用して、単純な関数を使用してコンポーネントをレンダリングしています。
期待される textChanged が少なくとも 1 回呼び出されたことが出力されますが、呼び出されたことはありません。ただし、奇妙な部分console.log
は、コンポーネントのメソッド内に a を配置すると、そこに到達することです。
私がそれを機能させるために試したこと
sinon.stub
の代わりに使用spy
してください。メソッドの何かが正しく機能しない可能性があるためです。view.find('.user-input').simulate('input', {target: {value: "lorem"})
またはで呼び出す.simulate('input', {key: 'a'})
入力をシミュレートする代わりに を実行するviewReact.textChanged()
と、明らかに機能します。
これを引き起こしているのは contentEditable の入力メソッドだと思います。助言がありますか?onInput
メソッドにテキストを正しく入力するにはどうすればよいですか? (textChanged
メソッドに入っても本文は空)
reactjs - SyntaxErrorを返すAirBnBの酵素テスト(Reactコンポーネント用)
どこかのチュートリアルから直接出てきた酵素テストがあります。
構文エラー、予期しないトークンが表示され続けます:
何か案は?これらのモジュールをすべてインストールし、package.json ファイルに構成しました。
Windows で npm テストを実行しています。
*****編集******
これは私のコンポーネントファイルです:
これは私のテストファイルです:
エラーは次のとおりです。
シャロー、レンダー、マウントしてみました。ここで何が欠けていますか?最新の React 15 バージョンを使用しています。実際、最新のモジュールはすべて、npm をインストールしただけです。このライブラリの使用方法に関する基本的な理解が欠けていたに違いありません。助けてください!
reactjs - Enzyme を使用して React.JS で主要なイベントをテストする
Enzyme テスト ユーティリティでキー イベントを使用しようとしましたが、うまくいきません。私はもう試した
と
しかし、どれも機能していないようです。Enzyme で重要なイベントをシミュレートするための正しい構文を知っている人はいますか?
reactjs - Enzyme での input.focus() のテスト
input.focus()
酵素でテストするにはどうすればよいですか。私はreactでスクリプトを書いています。私のコードは以下の通りです:
javascript - 反応酵素を使用して実際のDOMノードを確認する方法
実際のDOMノードを取得して、酵素のAPIを使用する必要があるのではなく、Dom APIでクエリできるようにする方法はありますか?たとえば、DOMノード自体についてアサートする必要があるエッジケース用です。
javascript - Enzyme TypeError: 'in' 演算子を使用して未定義の 'phoneUtils' を検索することはできません
ここでは、ツールEnzymeを使用して 、ReactJs で記述された Web アプリケーションをテストしています。これが機能していて、アプリケーションのテストを実行しようとすると、エラー応答が返されます
/app/js/services/countries/lib/libphonenumber.js:1 (function (exports, require, module, __filename, __dirname) { "use strict";(function(){var aa=this;function l(a, b){var c=a.split("."),d=aa;c[0] in d||!d.execScript||d.execScript("var "+c[0]);for(var e;c.length&&(e=c.shift());){c.length||void 0===b?d[e]?d=d[e]:d=d[e]={} :d[e]=b;}}関数 m(a,b){関数 c(){}c.prototype=b.prototype;ao=b.prototype;a.prototype=新しい c();a.prototype .constructor=a;a.$=function(a,c,f){for(var g=Array(arguments.length-2),h=2;hc?Math.max(0,a.length+c) :c;if("string"==typeof a)return "string"==typeof b&&1==b.length?a.indexOf(b,c):-1;for(;cb?1:a
そしてそれに続いて
私のテスト スクリプトでは、phoneUtilsと呼ばれる引数を使用しておらず、変数または値の受け渡しが見つかりませんでした。私は酵素ツールを初めて使用するので、ReactJs はここで実際に何が起こっているのかわかりません。誰かが救いの手を差し伸べてくれたら最高です。
reactjs - React & Redux 内の Enzyme を使用したネストされたコンポーネントのテスト
SampleComponent
別の「接続されたコンポーネント」(つまり ) をマウントするコンポーネントがありますcontainer
。ingでテストしようとSampleComponent
すると ( が必要なため)、次のエラーが表示されます。mount
componentDidMount
不変違反: 「Connect(ContainerComponent)」のコンテキストまたは小道具のいずれかで「store」が見つかりませんでした。ルート コンポーネントを でラップするか、明示的に「store」を prop として「Connect(ContainerComponent)」に渡します。
これをテストする最良の方法は何ですか?
reactjs - React コンポーネントのプロパティと機能をテストするには?
ですべてを試しましたがenzyme
、以下のこれらのプロパティをテストする正しい方法が見つかりません。このコンポーネントはダミー コンポーネントでラップされているため、マウントの目的でProvider
必要な小道具 (つまり ) を渡すことができます。Store
1) マウント後、インスタンスにプロパティが設定されます (例: this.property
)
2) イベントリスナーが追加されました
3)イベントリスナーで、someFunction
呼び出されています