カクカクしかじか

技術的なアレコレ

自動テスト

JestのmockReturnValueOnceがmockreturnvalueonce is not a functionになってしまう場合の解決法

経緯 該当の関数を jest.mocked(useStore) のようにモックしているのに、戻り値をモックしようとすると mockreturnvalueonce is not a function のエラーが出てしまいました... 関数だけモックしてもモジュール全体をパス指定してモックしないとダメなことが…

Jestでテスト実行時に時間を固定する方法とその戻し方

結論 jest.useFakeTimers で止めて、 jest.useRealTimers() で戻します。 beforeEach(() => { jest.useFakeTimers({ now: new Date("2023/01/01") }); }); afterEach(() => { jest.useRealTimers(); }); jestjs.io jestjs.io

Nuxt.jsでComposition API利用時にcontextの中身をjestでmockしたい時の解決法

結論 📝 shallowMount(mount) のプロパティの mocks の中に $nuxt -> context -> mockしたいコンテキスト の順番で定義すれば良い describe("Component", () => { let localVue: typeof Vue; let wrapper: ReturnType<typeof shallowMount<Vue>>; beforeEach(() => { localVue = createL</typeof>…

Jestでnuxt-svg-loaderを使ったVueテンプレートのテスト実行時にSVGファイルをパースする方法

結論 プロジェクト直下に SVGファイルをテスト実行時にパースするファイル (svgTransform.js) を定義して、Jestでそれを読み込むようにする github.com 各パッケージのバージョン nuxt@2.15.8 vue@2.6.14 @vue/test-utils@1.3.3 @vue/vue2-jest@29.2.0 jest@…

JestをChromeデバッガーでステップ実行する方法

背景 Jestでテストコードを書いていた際にconsole.logで値をプリントデバッグしていたのですが、正直しんどい... 何か他にいい方法あるやろ!と思ってVue.jsのテストの洋書を読んでいたら、JestでChromeデバッガーを利用したデバッグの方法が書かれていたの…

ソフトウェアテスト自動化カンファレンス2020のスライドまとめ

概要 あとで自分で見返せるように現在公開されている範囲でソフトウェアテスト自動化カンファレンス2020のスライドをまとめておきます。 なおソフトウェアテスト自動化カンファレンス2020のイベントページはこちらです。 testautomationresearch.connpass.co…