Polyspace Test による C コードのテスト
スケジュールを確認して登録するコースの詳細
本2日間のコースでは、Polyspace Test™を使用して、ホスト環境とターゲット環境におけるC言語ソフトウェアを、期待される動作とコードカバレッジ目標に対して動的に検証する方法を学びます。
- 単純なものから複雑なものまで、グラフィカルなテストの作成と実行
- 一連のテストケースのコードカバレッジを測定し、不足しているコードカバレッジのためのテストケースを生成する
- テスト対象コード内の関数呼び出しをスタブやモックで置き換える
- C言語のxUnit APIを使用してテストスイートとテストケースを作成、構築、実行する
- 提供されたターゲットサポートパッケージを登録し、外部ターゲット上でテストケースを実行する
- Polyspace Test の結果からレポートを生成する
1日目
グラフィカル テストの作成
学習目標: Polyspace Platformの環境に慣れ、シンプルなグラフィカルテストを作成・実行する方法を学びます。
- Polyspace Platform プロジェクトの作成
- テスト環境の構成
- シンプルなグラフィカル テストの作成
- テストのデバッグ
- 生成アーティファクトについて
- テスト レポートの生成
- Polyspace Platform プロジェクト外部でのテスト ケースの定義
- テスト ケースと要件のリンク
- コマンド ラインからのテスト実行の自動化
複雑なデータの処理
学習目標: さまざまなデータ形式やスコープを含むコードに対して、グラフィカルなテストを作成する方法を学びます。
- 浮動小数点値の評価
- グローバル変数の初期化と評価
- ポインター ターゲットの初期化と評価
- 構造体の初期化と評価
- 配列の初期化と評価
複雑なテストの作成
学習目標: 複数の関数呼び出しを伴うテストや、パラメータスイープテストを作成する方法を学びます。
- マルチステップ テストの作成
- パラメーター化されたテストの作成
- スクリプト テストの作成
プロファイリング、カバレッジ、およびテスト生成
学習目標: コードカバレッジ、実行時間のプロファイリング、およびスタックプロファイリングの各レベルに対応した測定を用いて、テストを実行する方法を学びます。
- コード カバレッジの測定
- 未達コード カバレッジのテストの生成
- 実行時間のプロファイリング
- メモリ使用量のプロファイリング
- コマンド ラインでのコード カバレッジ測定およびプロファイリングの自動化
2日目
スタブとモックの使用
学習目標: 実装が存在しない被呼び出し関数についてはスタブ関数を追加し、テスト時に置き換えが必要な被呼び出し関数についてはモックを作成する方法を学びます。
- スタブとモックの概要
- 未定義のグローバル変数のスタブ化
- 未定義関数のスタブ化
- 定義済み関数のモッキング
- モック変数の使用
xUnit C API を使用したテストの作成
学習目標: xUnit C APIにおけるシンプルなテストに慣れた後、外部ツールチェーンを使用して直接テストをコンパイル・実行する方法を学びます。
- xUnit C API の概要
- xUnit ベースのテストの構築、実行、レビュー
- 評価マクロの使用
- テスト結果のエクスポート
- Polyspace プロジェクトへの xUnit テストのインポート
- インポートした xUnit テスト ケースと要件のリンク
xUnit C API を使用した複雑なテストの作成
学習目標: xUnit C APIを使用したテスト、スイート構成されたテスト、パラメータスイープテスト、カスタム型データを評価するテストなどを作成する方法を学びます。
- テスト スイートの構成
- パラメーター化されたテストの作成
- カスタム データ型オブジェクトの比較
- コード カバレッジの測定
- 実行時間とメモリ使用量の測定
ターゲット上でのテストの実行
学習目標: 既存のテストケースをクロスコンパイルして外部ターゲット上で実行し、パフォーマンスとコードカバレッジをプロファイリングする方法を学びます。
- ターゲット上でのテストの概要
- ターゲットの登録
- ターゲット上でのテストの実行
- ターゲット上でのプロファイリング