自動テストをマスターしよう


できること
アプリケーション開発の継続性を高めるためや、高品質のアプリケーションを構築するためには、自動テストが必要です。
例えば、こんな経験はありませんか?
- 新しい機能を作ったら、既存機能が壊れてしまった
- 読みにくいコードを直そうとしたら、うまく動かなくなってしまった
- ライブラリをアップデートしたいけど、どこかに影響が出ないか不安
- 毎週リリース前に自動テストをしているけど、何時間も繰り返し実施するので大変
自動テストがあれば、アプリケーションが想定通りに動くことを自動的にチェックできるようになります。そうすれば、修正によって今まで動いてたはずの機能が動かなくなる「リグレッション(回帰、先祖返り。デグレードとも)」を防いだり、機能に影響を与えないようにコードの保守性を改善する「リファクタリング」などの取り組みをしやすくなったりします。もちろん、リリースの度に実施している手動での確認作業もグッと楽になります。
僕自身、駆け出しプログラマーのころは「バグを直したらまた別のバグが出る」「前任者から引き継いだコードが理解不能だが、直したら何かが壊れそうで直せない」などなどに悩まされ続けていました。そんな中、自動テストという考え方に出会って、バグの少ない開発の仕方を学べました。
自動テスト自体は以前に比べるとメジャーになり、技術も進展し、学ぶ方法も増えてきました。ですが、自動テストのベースにはアプリケーション開発の知識が必要になることも多く、例えばWebフロントエンドやアクセシビリティの知識があることで覚えやすかったり、DevOpsやCI/CDの知識があることで現場に取り入れやすかったりします。もちろん、効果的でバグを見つけやすい自動テストを作るには、テスト技法に関する知識も必要になってきます。
- この自動テストの技術は、どんな時に使えば良いんだろう
- こういうバグに悩まされたときは、どんな自動テストを作れば良いんだろう
- 自動テストの作り方は分かったけど、どうやって実際のコードに取り入れれば良いんだろう
そんな疑問に答えてくれるメンターと一緒なら、きっと最速で自動テストの知識を学べるはずです。
僕と一緒に、「最短で」自動テストの知識と技術を覚えて、一つ上のエンジニアを目指してみませんか?
メンタープロフィール
レビュー
レビューは投稿されていません。
あなたにおすすめの人気メンター
このプランをシェアしよう!