武田大輝作品一覧
-
3.0【E2Eテストの概念と目的を理解し、モダンなノウハウを実践できるようになる】 E2Eテスト(End-to-End Testing)とは、システムの端から端(End-to-End)まで、全体を通して行うソフトウェアテストを指します。本書ではE2Eテストを「ユーザーの視点でWebシステムの動作を確認する自動テスト」として定義し、E2Eテストをこれからプロジェクトに導入しようとしている人、すでに導入しているがパフォーマンスや保守性で課題を感じている人を対象に、E2Eテストのフレームワークとして近年人気が急上昇しているPlaywrightをツールとして、その目的からモダンなノウハウまで、E2Eテスト初心者の方にもわかりやすくハンズオンを交えながら解説します。CIへ組み込む方法やユニットテストとの棲み分けなど、E2Eテストを実際の開発現場に投入するうえでの知見も数多く紹介します。 ■目次 ●第1章 Playwrightハンズオン 1.1 Playwrightのセットアップ方法 1.2 テスト用Webアプリケーションの作成 1.3 表示のテストとテストの実行方法 1.4 ページ遷移のテストとテスト生成機能 1.5 フォーム操作のテスト 1.6 まとめ ●第2章 E2Eテストツールの紹介 2.1 E2Eテストツールの歴史 2.2 ブラウザベースのE2Eテストツール 2.3 WebフロントエンドフレームワークとE2Eテストツール 2.4 まとめ ●第3章 Playwrightのテスト用ツールセット(1)ロケーター 3.1 テストツールのカテゴリ 3.2 ロケーター 3.3 壊れにくいテスト 3.4 getByRole()で指定可能なロール 3.5 高度なロケーター 3.6 まとめ ●第4章 Playwrightのテスト用ツールセット(2)ナビゲーション、アクション、マッチャー 4.1 ナビゲーション 4.2 アクション 4.3 マッチャー 4.4 リトライの挙動 4.5 まとめ ●第5章 テストコードの組み立て方 5.1 何をテストとするか? 5.2 テストコードを書く 5.3 テストのコメントを書くべきか 5.4 テストファイルの命名 5.5 ビジュアルリグレッションテスト 5.6 まとめ ●第6章 実践的なテクニック 6.1 スクリーンショットとビデオ 6.2 認証を伴うテスト 6.3 ネットワークの監視とハンドリング 6.4 複数ブラウザでの動作確認 6.5 まとめ ●第7章 ソフトウェアテストに向き合う心構え 7.1 テストの7原則 7.2 ソフトウェアテストの構成要素 7.3 コード品質とは何か? 7.4 E2Eテストとユニットテストの効率の良い棲み分け 7.5 テストコードの設計方針とリファクタリング 7.6 モックとの付き合い方 7.7 E2Eテストの投資対効果を上げる 7.8 まとめ ●第8章 E2Eの枠を超えたPlaywrightの応用例 8.1 ランダムテスト 8.2 コンポーネントのテスト 8.3 再利用可能性 8.4 テストの並列実行 8.5 まとめ ●第9章 Web APIのテスト 9.1 PlaywrightにおけるWeb APIテスト 9.2 テストの実行例 9.3 タイムトラベルデバッグ 9.4 より詳細なテスト方法 9.5 通常のE2Eテストの中からWeb APIを呼び出す 9.6 まとめ ●第10章 E2Eテストの実戦投入 10.1 どのテストから書き始めるか 10.2 E2Eテストをどのリポジトリに置くか 10.3 CIでのE2Eテスト実行 10.4 プロジェクト管理との統合 10.5 まとめ ●第11章 Playwrightの内部構造 11.1 Playwrightのアーキテクチャ 11.2 他のE2Eテストツールのアーキテクチャ 11.3 クライアント/サーバ構成でのテスト実行 11.4 まとめ ●付録
-
3.01巻2,420円 (税込)◆プロのためのWeb API開発入門◆ 『Software Design』特集記事のうち、大好評を博したWeb API特集記事を1冊に収めました。 もはやWebにとって、Web APIこそが要です。Web APIを適切かつ効率的に開発できるかどうかが、Webサービスのその後を大きく左右するとも言えます。本書は、今まさにWeb APIを開発・運用する中で得られた実践的な知見が凝縮されています。 第1章では、OpenAPIを題材に、Webの基礎からさかのぼってWeb APIを再考し、REST APIの設計要素と、OpenAPIによるREST APIの設計手法およびREST APIの開発の実際の部分までつまびらかにします。第2章では、代わってGoogleが開発したRPCフレームワーク、gRPCにフォーカスし、その概要と、重要な技術要素であるProtocol Buffersの基礎を確認し、設計ポイントに触れ、gRPCによるWeb APIの実装を体験します。続く第3章では、GraphQLによるWebアプリケーションの開発・運用手法を一挙に解説。GraphQLの導入、TypeScript+Apollo Serverによるサーバサイドの実装、urqlやgraphql-codegenを駆使したクライアントアプリケーションの実装、そしてDatadogによるモニタリングやSentryによるエラートラッキングをベースとしたAPIの拡張手法にまで踏み込みます。 もちろん、Web APIは品質も重要です。本書では「テスト」「セキュリティ」の2つの観点でWeb APIの品質確保について考えます。第4章では、テストスコープをキーワードとしてWeb APIをテストする意義を見つめ直した上で、CRUD操作やエラーハンドリング、認証・認可設定、データ漏洩、バリデーション、メトリクスなど何をテストすべきか考え、Web APIテストを現実的に進める上で、カバレッジの目安やパフォーマンステストの実施フェーズ、実験計画などの考え方について考察します。第5章は、石川朝久氏や徳丸浩氏といったセキュリティの第一人者を中心に、Web APIのセキュリティに正面から向き合う極意を伝授します。Web APIはどのような攻撃にさらされるのか、リスクや攻撃手法、脆弱性から紐解き、「DevOps」「シフトレフト」を起点に、Web API設計からセキュリティを組み込む考え方を紹介。脆弱性診断や認証・認可設定の具体的な実施方法まで解説します。 まさしく、Web APIがまるごとわかる1冊なのです。 ■こんな方におすすめ ・Web開発者 ・REST API/GraphQL/gRPC開発者 ・Web APIのテスト手法やセキュリティ対策など、一歩進んだ開発/運用について学びたい人 ■目次 第1章 Web APIの作り方 ・1-1. Web APIの目的と技術要素 ・1-2. REST APIの設計で検討・決定すること ・1-3. OpenAPIによるREST API設計 ・1-4. OpenAPIを使ったWeb API開発の実際 第2章 gRPCで始めるWeb API開発 ・2-1. gRPCの特徴と登場背景 ・2-2. gRPCの技術要素とProtocol Buffersの基本 ・2-3. gRPC利用時のAPI設計ポイント ・2-4. gRPCによるWeb APIの実装 第3章 GraphQLでアプリケーション開発 ・3-1. GraphQLとは ・3-2. GraphQL導入 ・3-3. サーバサイドの実装 ・3-4. クライアントアプリケーションの実装 ・3-5. GraphQLアプリケーションの実運用 第4章 Web APIテスト 実践ガイド ・4-1. Web APIテストの意義 ・4-2. Web APIテスト時のチェック項目 ・4-3. 実践的なWeb APIテストの考え方 第5章 ゼロから学ぶWeb APIセキュリティ ・5-1. Web APIに潜むセキュリティリスク ・5-2. Web APIセキュリティの重要ポイント ・5-3. 脆弱性 ・5-4. 認証・認可