概要
本文は開発のtest関係の記事です。
仕事でjestとenzymeとtestCafeとそれぞれのテストフレームワーク・ツールを利用することになりましたが、それらの差がわかっていなかったので、まとめました。
初学者がネットで検索した情報をもとにまとめたものですので、間違ったところがあればなんなりご指摘ください。
テストフレームワーク・ツール一覧表
フレームワーク | 公式ドキュメント | 作っている会社 |
---|---|---|
jest | https://jestjs.io/ja/ | |
enzyme | https://airbnb.io/enzyme/ | airbnb |
testCafe | https://devexpress.github.io/testcafe/ | DevExpress |
それぞれの詳細
jest
コンフィグなし、スナップショットが撮れること、独立していること、優れたAPIがあることなどが特徴。
vsCodeのアドオンもあるようです。
https://github.com/jest-community/vscode-jest
参考になりそうなサイト
https://app.codegrid.net/entry/2018-jest-1
https://qiita.com/chimame/items/e97883fd46b67529d59f
https://qiita.com/moriaki3193/items/bc1120d572d55038d2d0
enzyme
ユニットテスト(コンポーネント単体ではなく総合的にするテスト)を助けてくれるテストユーティリティツール、jestで足りていない機能を補うのに便利らしい。
Reactの公式ドキュメントでも使用が推奨されている
参考になりそうなサイト
https://devhints.io/enzyme
https://mae.chab.in/archives/60066
https://qiita.com/putan/items/c43afc15cbdccd28075f
testCafe
UIテスト自動化フレームワークの1つ。
分類としてはSeleniumに近いらしい。
有料ですが、[testCafeスタジオ]
(https://www.componentsource.co.jp/product/testcafe-studio/prices?utm_source=google&utm_medium=cpc&utm_campaign=ga11%5Fjp%5Fja&gclid=Cj0KCQiApaXxBRDNARIsAGFdaB%2Dijvj4N%2DN%5Fxl%2D7u3u6Njb6gWGKD1gWDzcQL1r4RGLm0J3m4AXbYIsaAr6UEALw%5FwcB)なんていうのもあるらしいです。
参考になりそうなサイト
https://www.dcom-web.co.jp/lab/test/try_testcafe
https://tech.pjin.jp/blog/2019/06/19/testcafe_tutorial/
(途中から有料)https://app.codegrid.net/entry/2017-testcafe-1
記事を書きつつあんまりわかっていないこと
それぞれ単体テストのためのツールなのか、結合試験のためのツールなのかわかってないです。
まとめ
今回はテストフレームワーク・ツールについてまとめてみました。
いずれを使うにせよ、期待した通り になっているかをコードで書けていればいいのかなと思っています。テスト駆動開発について深掘りしたらもっとこの辺のことよくわかるんですかね?