2.6.8
https://jsfiddle.net/chrisvfritz/50wL7mdz/
現在分離しようとしている最新バージョンのvue / dist / vue.jsファイルからスローされていますが、最近追加された新しいコードに関連しているようです。 それでも観察されない場合は、できるだけ早くステップを追加します。
1)このリポジトリで複製-https://github.com/vuejs/vue-test-utils-mocha-webpack-example
2)クローンする
3)npm i
4)npmテスト-エラーなし
4)npm update vue
5)npm test-ReferenceError:パフォーマンスが定義されていません
ご挨拶、
プラメン
エラーは観察されませんでした
エラーが観察された
バグを報告するときに再現を提供してください
こんにちは@posva 、
この問題はオンラインエディターでは再現されませんが、「再現手順」セクションでgithubのプロジェクトの手順を提供しました。
ご挨拶、
プラメン
リンクしたのは、アーカイブされ非推奨の例です。 再現はjsfiddleである必要はなく、HTMLファイル(またはその内容のみ)にすることができます。 また、mochaやvue-test-utilsなどの他の依存関係を含めるべきではありません(そのパッケージで問題になる可能性があります)。 乾杯。
またこれを取得します。 Vueが2.6.9にアップグレードされた後、CIから警告が表示されました(私はRenovateを使用してdepsを最新の状態に保ちます)。
jsdom環境では次のようです。
> window.performance
Performance {}
> performance
ReferenceError: performance is not defined
したがって、jsdomでコードを正しく実行するには、 performance
直接呼び出すのでwindow.performace
を使用する必要があります。
さて、ラベルの改善を追加する前にメニューを開き、has PRラベルを追加した後に外側をクリックしたので、それを削除したと思います。 面白いエッジケース
JSDOMが持っているのにことに留意すべきであるperformance
を介して支持をprocess.hrtime
、私は我々が現在のハックを保証することができるとは思わない、 performance
JSDOM環境で期待どおり(常に動作します結局のところ、ブラウザの実装とは異なります)。
@ posva😂
これがリリースされるまで、回避策はJSDOM登録後に次の行を追加することです。
// eslint-disable-next-line no-undef
global.performance = window.performance;
これがリリースされるまで、回避策はJSDOM登録後に次の行を追加することです。
// eslint-disable-next-line no-undef global.performance = window.performance;
愚かで申し訳ありませんが、JSDOM登録はVue CLI 3とcli-plugin-unit-mocha(setup.jsなし)で抽象化されているため、次の行をどこに追加しますか?
助けてくれてありがとう...
// eslint-disable-next-line no-undef
global.performance = window.performance;
同じ質問。 次の行はどこに追加しますか?
私は私のメインのテストエントリポイントでそれを置い@theonlychase test/setup.js
それあなたと同じディレクトリrequire('jsdom-global')
以下の--require
フラグで参照されます。
"test": "mocha-webpack --webpack-config webpack/webpack.config.test.js --require test/setup.js reporter mocha-bamboo-reporter"
最も参考になるコメント
jsdom環境では次のようです。
したがって、jsdomでコードを正しく実行するには、
performance
直接呼び出すのでwindow.performace
を使用する必要があります。