コードの安全性・安定性を高める開発サイクル ~テスト管理の効率を上げ,脆弱性診断を自動で行う~
第9回 テストファーストな管理で,品質を落とさず素早くソフトウェアをリリース(前編)
テストで行うおもなプロセス
今回からは4回にわたって,
テストの開始から終了までのおもな活動について,
表1 テストで行うおもなプロセス
アクティビティ | 説明 | |
---|---|---|
1 | 要求分析を行う | 要件定義や設計からテストの視点を特定し, |
2 | テスト計画を策定する | 実施するテストを踏まえて, |
3 | テスト設計を行う | テストケースやテストスクリプトを作成してレビューを行う |
4 | テスト環境を構築する | テストの実行環境の準備や設定を行う |
5 | テストを実施する | テスト計画とテストケースに基づいてテストを実行する。また, |
6 | テスト結果を分析する | テストの実行結果, |
この前提条件に,
テストはソフトウェア開発のボトルネックになりがち
筆者が問題だと考えている理由はテストの開始時期にあります。
不具合の発見が開発スケジュールの遅れにつながる
テストで欠陥が見つかることは当たり前だと思いますが,
テストしづらい
要件定義で決まったことや設計したことが,
最近の開発手法にテストが追いついていけない
いわゆるアジャイル開発の採用が広がってきたことで,
このような状況の中で開発後期に,
テストを効率良く進めるアジャイルなテストの考え方
表2は,
表2 テストを効率良く進めるのに大事なこと
大事なこと | 概要 |
---|---|
要件どおりかテストをするよりも, テスト可能な要件を作る | 要件定義や設計といった開発工程の初期からテストの視点を持ち込み, |
作ったあとにテストするよりも, テストしながら作る | 設計作業と並行して行ったテストケースを使って, |
一度きりのテストよりも, 何度もテストする | 同じ条件で同じテストを何度も繰り返し実行できるように, |
すべての欠陥をなくすよりも, リリース可能かを考える | 要件およびストーリーのリスクと優先度を意識して, |
これらを実現するテストプラクティスとして,
テストファースト可能なテスト管理を考える
テストチームが顧客や開発チームと一緒に要件定義から参加し,
テストファーストはTDDと呼ばれるテスト駆動開発のことを指すのではなくむしろ,
テストファーストでは,
そこでテストの管理が必要になるわけですが,
日本だけでなく,
アジア圏でもアトラシアン製品販売のトップエキスパートであるリックソフトのWebサイトでは, 各アトラシアン製品の体験版を提供しているほか, アトラシアン製品専用のコミュニティも運営しています。まずはアクセスしてみては!
本誌最新号をチェック!
Software Design 2021年2月号
2021年1月18日発売
B5判/184ページ
定価(本体1,220円+税)
- 第1特集
Web API設計・開発入門
公開・運用も見据えたベターなやり方とは - 第2特集
「何からやるか,どこからやるか」がわかる
システム監視の始め方・続け方
バックナンバー
コードの安全性・安定性を高める開発サイクル ~テスト管理の効率を上げ,脆弱性診断を自動で行う~
- 第12回 Tricentis Toscaを使ったテスト自動化でE2Eテストを最適化する(後編)
- 第11回 Tricentis Toscaを使ったテスト自動化でE2Eテストを最適化する(前編)
- 第10回 テストファーストな管理で,品質を落とさず素早くソフトウェアをリリース(後編)
- 第9回 テストファーストな管理で,品質を落とさず素早くソフトウェアをリリース(前編)
- 第8回 イノベーションを加速させるアジャイル開発/DevOps(後編)
- 第7回 イノベーションを加速させるアジャイル開発/DevOps(前編)
- 第6回 OSSの脆弱性とコンプライアンス違反に対応するには(後編)
- 第5回 OSSの脆弱性とコンプライアンス違反に対応するには(前編)
- 第4回 WhiteSource+Jiraの連携でDevSecOpsをやってみよう(後編)
- 第3回 WhiteSource+Jiraの連携でDevSecOpsをやってみよう(前編)