新着情報
採用情報
日本語
|
English
ユーザーサポート
資料ダウンロード
お問い合わせ
3つの強み
組み込みソフト開発・検証ツール
Windows開発環境向けユニットテストツール
カバレッジマスターwinAMS
カバレッジマスターwinAMS MBTオプション
Linux開発環境向けユニットテストツール
QTE(Quality Town for Embedded grade)
パフォーマンス検証ツール
PLAS-Qlite
テストデータ生成ツール
PROMPT
C/C++ 組込み用プログラム仕様書作成・解析ツール
Caseplayer2
共有変数自動解析ツール
SharedVariableChecker2
ISO 26262セーフティ&セキュリティ
Salutem(サルテム)
Safilia(セイフィリア)
Seculia
HighTec社 TriCore/Power Architecture クロスコンパイラ
HighTec社 TriCore 開発プラットフォーム
HighTec社 Power Architecture 開発プラットフォーム
動作タイミング解析ツール
Timing-Suite T1(ティーワン)
組込みシステム仮想検証環境
シミュレータベーストファミリ仮想検証ツール
実機連携 組込みソフト自動テストシステム
リアルタイムファンクションテスター
モデルガイドラインチェック製品
Model Dr. MDiA
エンジニアリングサービス
モデル中核開発事業
MBD Back-to-Backテスト 定着運用サポート
モデルベース開発(MBD+MDD)のプロセス構築とツールの導入支援
セキュリティサービス
ガイオ サイバーセキュリティサービス
(サイバーセキュリティ 現場業務)
ガイオ サイバーセキュリティサービス
(サイバーセキュリティワークパッケージ)
ガイオ サイバーセキュリティサービス
(サイバーセキュリティ 教育支援)
セキュリティ脅威分析支援サービス
セキュリティ検証支援サービス
大規模ソフトウェア開発者向けテストツール導入支援
QTE導入支援サービス
機能安全開発効率化支援
Salutem導入支援サービス
Safilia導入支援サービス
機能安全に対応した派生開発の影響分析サービス
先進品質技術ソリューション事業(SAQT)
テストパートナーSQV
ユニットテスト・オンザトラック
SAQT HILSエンジニアリングサービス
HILS テストシナリオ作成及びシナリオ実行自動化サービス
HILS 車両モデル作成サービス
HILS CANモデル作成サービス
リアルタイムハードとSimulinkモデルの割り付けソフト設定サービス
道路、交通流CGの設定・作成サービス
QEMUを使った仮想検証環境構築サービス
GAIO CLUB
導入事例
セミナーイベント
企業情報
ガイオ・テクノロジーの3つの強み
モダン型開発/従来型開発について
組込みソフト開発・検証ツール
Windows開発環境向けユニットテストツール
カバレッジマスターwinAMS
カバレッジマスターwinAMS MBTオプション
Linux開発環境向けユニットテストツール
Quality Town for Embedded grade(QTE)
パフォーマンス検証ツール
PLAS-Qlite
テストデータ生成ツール
PROMPT
C/C++ 組込み用プログラム仕様書作成・
解析ツール
CasePlayer2
共有変数自動解析ツール
SharedVariableChecker2
ISO 26262セーフティ&セキュリティ
Salutem
Safilia
Seculia
HighTec社 クロスコンパイラ
HighTec社 TriCore 開発プラットフォーム
HighTec社 Power Architecture 開発プラットフォーム
動作タイミング解析ツール
Timing-Suite T1(ティーワン)
組込みシステム仮想検証環境
シミュレータベーストファミリ仮想検証ツール
実機連携 組込みソフト自動テストシステム
リアルタイムファンクションテスター
モデルガイドラインチェック製品
Model Dr. MDiA
エンジニアリングサービス
モデル中核開発事業
リバースモデリング代行サービス
MBD Back-to-Backテスト 定着運用サポート
モデルベース開発(MBD+MDD)のプロセス構築と
ツールの導入支援
セキュリティサービス
サイバーセキュリティ 現場業務
サイバーセキュリティワークパッケージ
サイバーセキュリティ 教育支援
セキュリティ脅威分析支援サービス
セキュリティ検証支援サービス
機能安全開発効率化支援
Salutem導入支援サービス
Safilia導入支援サービス
機能安全に対応した派生開発の影響分析サービス
先進品質技術ソリューション事業(SAQT)
テストパートナーSQV
ユニットテスト・オンザトラック
SAQT HILSエンジニアリングサービス
HILS テストシナリオ作成及びシナリオ実行自動化サービス
HILS 車両モデル作成サービス
HILS CANモデル作成サービス
リアルタイムハードとSimulinkモデルの割り付けソフト設定サービス
道路、交通流CGの設定・作成サービス
QEMUを使った仮想検証環境構築サービス
企業情報
新着情報
採用情報
導入事例
セミナーイベント
資料ダウンロード
動画一覧
GAIOサイバーチャンネル
GAIO CLUB
お問い合わせ
プライバシーポリシー
情報セキュリティ基本方針
ユーザーサポート
GAIO CLUB
HOME
>
GAIO CLUB
>
【第6回】ガイオ用語集「ブラックボックステスト」
2023年07月14日
【第6回】ガイオ用語集「ブラックボックステスト」
ガイオ用語集
目次
ブラックボックステストとは
ブラックボックステストの種類
同値分割法
境界値(限界値)分析
状態遷移テスト
デシジョンテーブル
ユースケーステスト
ブラックボックステストのメリット・デメリット
メリット
デメリット
ブラックボックステストのやり方(使い方)
まとめ
ブラックボックステストとは
ブラックボックステストとは、テスト対象となるシステムやアプリケーションなどを、内部のプログラムの構造や動作原理を考慮せずにテストして品質を評価する方法です。テスト対象を見えない箱として扱い、入力と出力の整合性を確認します。
ブラックボックステストの種類
ブラックボックステストにはいくつかの手法があります。主なものを以下に紹介します。
同値分割法
入力値や出力値を同じ結果になると予想されるグループに分けて、各グループから代表的な値を選んでテストします。例えば、年齢を入力する場合、1歳未満、1歳以上120歳以下、120歳超という3つのグループに分けて、それぞれ0、60、121という値をテストします。
境界値(限界値)分析
入力値や出力値の範囲を最小値、最大値、最小値より1大きい値、最大値より1小さい値などに分けて、それぞれの境界値でテストします。例えば、年齢を入力する場合、1歳以上120歳以下という範囲に対して、0、1、120、121という値をテストします。
状態遷移テスト
テスト対象が持つ状態や状態間の遷移を表現した状態遷移図や状態遷移表をもとにして、各状態での動作や遷移条件をテストします。例えば、ATMの操作画面をテストする場合、カード挿入・暗証番号入力・メニュー選択・取引実行・カード返却という状態やその間の遷移をテストします。
デシジョンテーブル
複数の条件や結果が組み合わさる場合に使用する表で、各条件の真偽に応じて期待される結果を列挙してテストします。例えば、商品の送料を計算する場合、購入金額や会員ランクなどの条件と送料無料かどうかなどの結果を表にまとめてテストします。
ユースケーステスト
ユーザーの視点からテスト対象が提供するサービスや機能を表現したユースケースをもとにして、ユーザーの目的や要求に沿ったテストシナリオを作成してテストします。例えば、ECサイトで商品を購入する場合、商品検索⇒ カート追加⇒ 注文確定⇒ 支払い方法選択⇒ 配送先入力などの一連の流れでテストします。
ブラックボックステストのメリット・デメリット
メリット
・プログラムの内部構造を知らなくてもテストが可能
・利用者の視点からのテストができるため、より現実的なテストができる
・どのテストレベルでも適用できるため、設計不良の発見が早期に行える
・ソフトウェアの異なるバージョンやプラットフォームでの互換性を評価するのに適している
デメリット
・プログラムの内部構造を考慮しないため、特定の箇所のバグが見つけにくい場合がある
・テストケースの選定に悩む場合がある
・内部のプログラム変更があった場合、テスト条件が変わることがある
・冗長なテストが発生しやすくなり、効率が悪くなる場合がある
ブラックボックステストのやり方(使い方)
ブラックボックステストの実施手順は以下の通りです。
1. テスト対象のソフトウェアやシステムの機能や仕様を確認します。
2. テストケースを設計し、実装します。入力データや操作手順、期待する結果を含むものです。
3. 実際にテストケースを元にテスト実行し、得られた結果を期待する結果と比較します。
4. テスト結果によって不具合が見つかった場合、修正を行った上で確認テストと回帰テストを実施します。
5. 全てのテストが完了し、問題がないと判断されたらリリースします。
まとめ
ブラックボックステストは、テスト対象が設計通りに機能しているか確認するための重要なテスト方法です。内部の構造を知らずに行えるため、幅広い視点でテストが可能です。ただし、内部構造を考慮しないため、特定の箇所の故障や欠陥が見つけにくい場合があることを理解し、テスト計画を立てることが大切です。
今すぐ資料ダウンロード!
この記事を読んだ人はこんなページを読んでいます。
【第5回】ガイオ用語集「ホワイトボックステスト」
【第7回】ガイオ用語集「GPU」
前のコラム
コラム一覧に戻る
次のコラム
人気のコラム
C言語コーディングガイドラインについて、いくつかの理解し難いルールとそれに関わるお話をしたいと思います。
シミュレータによる製品開発のメリットについては多く語られていますが、目的に応じたシミュレータの選択や使い方について正しく理解していないと、思ったような成果を得ることができません。ここでは、xILSの構成と利用上の注意点について簡単に説明を行います。
単体テストとは…ソフトウェア開発において非常に重要な工程の一つであり、1つの機能やモジュールを単独でテストすることです。単体テストを行うことで、モジュール内で発生する問題を事前に検出でき、修正することができます。
最新のコラム
静的解析/コンパイラ技術
前回まで、具体的なソースプログラム例を確認したのは6つの脆弱性タイプでした。今回はそれ以外の脆弱性について、見てみます。CWEサイトにはどのような説明があるか、ごく簡単にまとめました。
静的解析/コンパイラ技術
今回も、CWE Top 25 の脆弱性に関するコーディング例を考えます。
静的解析/コンパイラ技術
引き続き、CWE Top 25 の脆弱性からコーディング例を考えます。
静的解析/コンパイラ技術
CWE Top 25 の脆弱性からコーディング例を考えてみます。
静的解析/コンパイラ技術
前回、CWEが提供するCERT CガイドラインのVIEWのお話をしましたが、Top 25に現れる脆弱性とCERT C他のコーディングガイドラインの対応付けをしてみます。
静的解析/コンパイラ技術
CWEでは、脆弱性の種別・分類の共通基準を提供しています。ということで、前回集めた過去5年間のTop 25について見てみます。
静的解析/コンパイラ技術
今回から、セキュリティに関するお話をしようと思います。と言っても、セキュリティの専門家ではないので、脆弱性とコーディングルール・静的解析に関わる話になります。
お問い合わせ・お見積りはこちら
03-4455-4767
[代表]9:00~17:30
(土・日・祝日・年末年始・夏季休暇を除く)