「Hello!TestCafeもくもく Part0」~TestCafeはなになり?~
「ひとことで? 」
- 「TestCafeの環境構築をして、TestCafeのデモサイト&自動化のためのデモサイトで簡単にコード書いて試してみたよ。楽しかったよ!」
- というお話をするにあたっての「そもそも」のお話。
「ほう、TestCafeってなに?」
- 簡単に言うと、TestCafeとはNode.js製のe2eテストツールだよ。
「(なんか知らない言葉を話し出した…どう相槌打とう)」
- わかる〜知らない言葉を話し出したときにどう相槌打てば良いかってむずいよね。
- 一個一個話すね。
Node.js?
- ごめんね、そこまで詳しくは知らないんだけど、
- Node.js はV8 JavaScriptエンジン)上に構築されたJavaScript実行環境の1つらしいよ。
- 「サーバサイドJavaScript」と呼ばれることもあるらしいよ。
e2eテストツール?
- End to Endテストツールのことだよ。
- E2Eテストツールは、手動でやるテストと同じようなことを自動でやってくれるんだ。
- 「自動テスト」とひとことでいっても色々種類があって、E2Eテストは「自動化ピラミッド」の中ではピラミッドの先端なんだ。
- 「E2E」のことなんだけど、
- 企業から企業への取引のBusiness to BusinessをBtoBとかB2Bって呼ぶじゃない、あれのノリでそう呼んでるんだよね。たぶん。
- 「なんのEnd to なんのEnd」なのかは、「フロントEnd to バックEnd」なのかな〜と思ってる。たぶん。
テストツール?
「テストツール」と言われたときは「テストのなんのためのツールか」
- テスト自動化のためのツール
- テスト設計の管理をするためのツール
のどちらかな〜というのを会話のコンテキストで判断すると良いと思う。
ちなみにTestCafeは前者で、後者だとTestRailとかの名前をよく聞くよ。
わかってきたありがと。もっかいTestCafeのこと教えて。
TestCafeとはNode.js製のe2eテストツールだよ。
- これだね。
- 「1 minute to set up」って公式で言っているように、比較的環境構築が容易だよ。
- でも私は1分じゃ無理だった。キューピー3分クッキングみたいなものだね。
- 「TestCafe runs on Windows, MacOS, and Linux.」なんだって。
- 「Write tests in JS or TypeScript, run them and view results」なんだって。
- さっきの話で出たけど、「サイゼリヤでググるテスト」を自動でやってくれるようにするためには「サイゼリヤと入力するように指示するコード」「検索ボタンを押すコード」「結果が期待値と合っているか見るコード」は書かないといけないといけなくて、そのコードを「JS」か「TypeScript」で書けるんだ。
- 「JS」は「JavaScript」の略だよ。
- 「JavaScriptとTypeScriptって何が違うの?どっち使えば良いの?」と言われると…ちょっと自信ないんだけど、
- JavaScriptから拡張した「なんちゃらScript」ってたくさんあって、TypeScriptもその一つ。公式サイトに「TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.」ともあるし。たぶん。
- 公式サイトに「JavaScript that scales.」って書いてあって、観覧車の絵とか「Strong tools for large apps」って書いてあることから、大規模開発に向いている。たぶん。
- 「どっち使えば良いの?」は、気が向いたほうで良いと思うよ。余談だけど『好きなようにしてください』っていう本ちょっと面白いよ。話を戻すと私はTypeScript使った。
- さっきの話で出たけど、「サイゼリヤでググるテスト」を自動でやってくれるようにするためには「サイゼリヤと入力するように指示するコード」「検索ボタンを押すコード」「結果が期待値と合っているか見るコード」は書かないといけないといけなくて、そのコードを「JS」か「TypeScript」で書けるんだ。