はじめに
主にCypressについて、その学習記録を残します。
Cypress以外にも、ソフトウェアテスト一般的なものやエンジニアの教養的なもの(テストは意識してます)も学習したので、前回からタイトルを変更しました。
前回の記事については、こちらを参照してください。
bonomodel.hatenablog.com
モチベーション
業務の中で、Cypressによるテスト自動化に取り組み始めています。
Cypressによるテスト自動化を実践するために必要と思ったものを、少しずつ進めています。
Cypressとは
www.cypress.io
主にE2Eテストの自動化に使われる、テストフレームワークです。
JavaScript/TypeScriptで書けます。
やったこと
Cypress
- Advanced Cypress(by Filip Hric)
testautomationu.applitools.com
Cypressの実践的な使い方を学べました。
APIを通じてアプリケーションの動作をテストしたり、複数のアサーションをする方法などがよかったです。
- Cypress with TypeScript(by Filip Hric)
testautomationu.applitools.com
一通りやりました。
CypressでTypeScriptを使うメリットを感じるためにも、もっと使う必要があると感じました。
- Test Automation for Accessibility(by Marie Cruz)
testautomationu.applitools.com
一通りやりました。
Cypressのプラグイン以外にも、色々とAccessibilityチェックする機能の紹介がありました。
- Acceptance Test Driven Development for the Front End(by Lewis Prescott)
testautomationu.applitools.com
ATDDの解説とそれを小さく実践する講座でした。
受け入れテスト(Cypress)をして、それが通らない場合は単体テスト(Jest/Testing-library)をする。
その結果に合わせて開発コード(React)をリファクタリングして、テストが通るようにする。
といった具合でした。
個人開発などで実践してみないと、その良さがまだ分かっていないかもしれません。
TypeScript
- Learn TypeScript(Lessonのみ)
www.codecademy.com
フロントエンド、CypressでTypeScriptが必要になるためやりました。
Free会員なのでLessonのみですが、なかなかやりごたえがありました。
TypeScriptに限らずですが、手を動かさないと実際理解できないことが多いと思いました。
CI/CD
・Github Actions for Testing(by Matthias Zax)
testautomationu.applitools.com
とても難しかったです。
テストコードを使用頻度の高いものにするためにも、まずは小さく実践しておきたいです。
DevOps
- Effective DevOps ―4本柱による持続可能な組織文化の育て方
www.oreilly.co.jp
DevOpsは文化というのを、初めて知りました。
今までDev(開発)・Ops(運用)という、技術上の循環プロセスぐらいに思っていました。
ユーザーストーリー
- ユーザーストーリーマッピング
www.oreilly.co.jp
E2Eテストの学習をしているときに、たまに見かけることがあったので読んでみました。
個人的にまとめると「限られたリソースの中で実現可能なものを考慮して、ユーザーにとって使いやすく価値のあるサービスを作る」といった感じだと思います。
思いつきを形にするため、ただ手を動かすだけでは・・・ということなのかもしれません。難しいです。
マイクロサービス
- マイクロサービスアーキテクチャ 第2版
www.oreilly.co.jp
モノリス/マイクロサービス/モノリポあたりの話からはじまって、中立的(and 批評的/経験的)に書かれていると感じました。
マイクロサービスという概念は、Google Cloud Professional Cloud Architectで覚えたきりでした。
単純にモノリスが古くて変更が必要で、マイクロサービスが革新的で良いという二項論ではないとわかりました。
アーキテクチャーってこんなに多くのことを考慮するのかと思いました。個人的にVault(HashiCorp)の話が面白かったです。
www.vaultproject.io
ソフトウェアテスト一般
- ISTQB Foundation Level(by TM SQUARE)
www.youtube.com
ソフトウェアテスト一般的な知識を得たいと思い、ISTQBのFoundation Levelの上記講座を一通り視聴しました。
各セクションで、小問がいくつかあります。
テストマネジメントは結構間違えました。
- 【この1冊でよくわかる】ソフトウェアテストの教科書 [増補改訂 第2版]
www.sbcr.jp
テスト技法の内容が濃かったです。
ソフトウェアテストについて一通り学べました。
教科書として、よいコンテンツだと思いました。
www.kinokuniya.co.jp
ソフトウェアテストについて、網羅的に触れられていました。
言葉が理解しやすかったです。
基礎的なことだけではなく、実務での受け止め方、考え方などにも触れられていました。
テスト自動化のセクションは、特にためになりました。
さいごに
Cypressとソフトウェアテストの基礎知識について、学習記録を書きました。
久々に、紙の本をよく読みました。
図書館でソフトウェアエンジニアの本を借りることができるのは、とてもありがたいです。
アウトプットとのバランスは大事だと思いますが、本でのインプットもいいですね。