【丁寧解説】CppUTestをEclipseで動かす

 

CppUTestをEclipseでテストスイート

JUnitなどで見慣れた方にはお馴染みのユニットテストの実行画面。

実はCppUTestでも同じことができます。

 

ただ、環境を構築するのはちょっと大変なので、環境構築手順を丁寧に解説します。

0.事前準備

次のソフトウェアがインストールされている必要があります。

インストール手順の記事もご紹介していますので、準備がまだの方はご用意をお願いします。

 

『MinGW-w64』

【簡単】MinGW-w64のインストール方法【画像多め】

 

『CppUTest』

【丁寧解説】CppUTestをWindowsにインストール【MinGW-w64版】

 

『Eclipse CDT(C/C++ Development Tooling)』

GNU MCU Eclipseを使いたい場合はこちらからどうぞ

【丁寧解説】GNU MCU Eclipseのプロジェクト作成手順【画像多め】

 

シンプルな『Eclipse CDT』を使いたい場合は、Eclipse公式サイトから直接ダウンロードしてインストールしてください。

https://www.eclipse.org/cdt/

 

1.Eclipseにプラグインをインストール

Eclipseにプラグインを2つインストールする必要がありますので、順番に説明していきます。

 

プラグイン 説明
C/C++ Unit Testing Support Eclipseでユニットテストを実行するための基本プラグインです。
CppUTest Eclipse Test Runner 上記プラグイン上でCppUTestを実行するためのプラグインです。

 

1-1.C/C++ Unit Testing Supportのインストール

Eclipseの上部メニューから『Help』→『Install new Software…』をクリックして、ソフトウェア追加画面を開いてください。

 

ソフトウェア追加画面を開いたら、下記のGIF動画を参考にインストール作業を進めてください。

 

Unit Test Support1

 

GIF動画の内容を説明しておきます。

 

始めに選択したのはダウンロードサイトです。

動画では下記を選択しましたが、『2018-12』の部分はEclipseのバージョンによって変わるので、お使いのEclipseに合わせて適時読み替えてください。

 

2018-12 – http://download.eclipse.org/releases/2018-12

 

次に、追加するソフトウェアを選択します。

『Programming Languages』の中にある『C/C++ Unit Testing Support』を選択してください。

 

最後に、『Next >』ボタンをクリックして次に進みます。

 

ライセンスの承諾画面が表示されるので、『I accept the terms of the license agreement』にチェックを入れて『Finish』ボタンをクリックすると、インストールが開始されます。

 

Unit Test Support2

 

Eclipseの画面右下に、インストール中の旨の表示が開始されるので、消えるまで待ってください。

消えたらインストール完了です。

 

1-2.CppUtest Test Runnerのインストール

下記のURLから『CppUTest Test Runner』のzipファイルをダウンロードしてください。

 

https://github.com/tcmak/CppUTestEclipseJunoTestRunner

 

CppUtest Test Runnerのダウンロード

 

下記のファイルがダウンロードできます。

 

CppUTestEclipseJunoTestRunner-master.zip

 

このzipファイルは適当な場所で展開しておいてください。

 

次に、Eclipseのインストールディレクトリ(<ECLIPSE>と表記)の配下に下記のフォルダ構成を作ってください。

 

<ECLIPSE>/dropins/CppUTest

 

フォルダを作成したら、下記の絵を参考に、展開したフォルダ内の4つのファイル(フォルダ)をコピーしてください。

 

CppUTest Test Runnerのコピー

 

コピーしたら、Eclipseを再起動して、プラグインを有効化しましょう。

 

一度Eclipseを終了して、コマンドプロンプトを起動し、Eclipseのインストールディレクトリに移動してから、下記のコマンドを実行してください。

 

eclipse.exe -clean

 

Eclipseが起動し、CppUtest Eclipse Test Runnerが有効化されます。

 

2.ユニットテスト用のプロジェクトの作成

2-1.プロジェクトの作成

インストールが終わったら、ユニットテスト用のプロジェクトを作成しましょう。

今回は『cpputest-demo』という名前でプロジェクトを作成します。

 

CppUTest用のプロジェクトを作成

 

2-2.プロジェクトの設定を変更

作成したプロジェクトでCppUTestが使えるように設定を変更しましょう。

 

『cpputest-dmeo』を右クリックして『Properties』を選択し、プロジェクトの設定画面を開いてください。

 

プロジェクトの設定画面の左側メニューにある『C/C++ General』→『Path and Symbols』を選択してください。

この中で、設定変更を3か所行います。

 

1つ目はIncludesにCppUTestのヘッダファイルの場所を追加します。

『Includes』タブの『GNU C++』に下記の2つを追加してください。

 

${CPPUTEST_HOME}/include
${CPPUTEST_HOME}/include/CppUTest

 

CppUtestのIncludes

 

2つ目はCppUtestのライブラリを指定します。

『Libraries』タブで下記のライブラリを指定してください。

 

CppUTest
CppUTestExt

 

CppUtestのライブラリ

 

3つ目はCppUTestのライブラリへのパスを指定します。

『Libraries Paths』タブで下記のパスを指定してください。

 

${CPPUTEST_HOME}/lib

 

CppUTestのライブラリパス

 

3つ設定変更が終わったら『Apply and Close』ボタンをクリックして、設定画面を閉じてください。

 

3.テストコードの作成

サンプルのテストコードを用意したので、『cpputest-demo』直下に下記の2つのファイルを作成してください。

 

AllTests.cpp

#include "CppUTest/CommandLineTestRunner.h"

int main(int ac, char **av) {
    return CommandLineTestRunner::RunAllTests(ac, av);
}

 

DemoTest.cpp

#include "CppUTest/TestHarness.h"

TEST_GROUP(DemoGroup) {
};

TEST(DemoGroup, Test1) {
    CHECK(true == true);
}

 

テストコードを作ったら、ビルドできるか確認しておきましょう。

 

『cpputest-demo』プロジェクトを右クリックして、『Build Project』をクリックしてください。

下記のように表示されればビルド成功です。

 

CppUTestのテストコードをビルド

 

4.ユニットテストの実行

ついに実行の時が来ました。

テストランナーの設定を作って、ユニットテストを実行してみましょう。

 

CppUTestの実行

 

ユニットテストの結果が成功していることを確認しましょう。

 

CppUTest実行結果

 

無事ユニットテストが実行できましたね。

お疲れ様でした!