*

C言語でEV3開発(6)

公開日: : 最終更新日:2015/03/24 マインドストーム/EV3, 開発

どもです。
今回のエントリーは、前回のエントリーの続き、google testでの単体テスト環境についてです。

前回のエントリーでは、google testのコードをプロジェクトに取り込み、テストコードと一緒にビルドする方法について書きました。
そこで今回は、google testを静的ライブラリとしてビルド、リンクして実行ファイルを生成する方法について紹介します。

なお、google testのコードをダウンロード・展開してあることを前提とします。
場所は、

を想定します。

1. 静的ライブラリのビルド
では、実際にビルドするための手順を、以下に示します。

以上、最後に静的ライブラリが2つ作成されています。

2. 静的ライブラリのリンクの設定
ここでは、静的ライブラリをリンクするための設定について記載します。
といっても、手順は簡単。
eclipseのプロジェクトプロパティで、[C/C++ビルド]-[設定]-[ツール設定]-[GCC C++Linker]-[ライブラリー]で、以下の設定を行います。
[ライブラリー(-l)]
pthread
gtest
gtest_main

[ライブラリ検索パス(-L)]
(“1.”のビルドの手順で、静的ライブラリが出力されたディレクトリ)

以上で、ライブラリの設定は完了です。

3. テストコード
実際にライブラリを使用したテストコードと、テストの実行です。

まず、以下のようなクラス、およびメソッドを作成します。

次にテストコードです。今回は、「TestFunction」というメソッドのテストを実行します。
実際のテストコードは、以下。

なお、コード上の”gtest/gtest.h”をインクルードするためには、”gtest/include”フォルダをインクルードパスに追加しておく必要があります。
これまでの設定、およびコードを作成してビルドします。
ビルドされたファイルを実行することで、単体テストが実行されます。
なお、今回の結果では、以下のようになります。
google_test_sample_result_1
テストの内容は、非常に単純なので、ここは割愛します。
結果を見ての通り、1ケースのテストが実行され、結果が「OK」となっています。

以上がgoogle testをライブラリ化し、それを使用して単体テストを実行するための手順になります。
ではっ!

関連記事

no image

C言語でEV3開発(7)

どもです。 今回のエントリーでは、いよいよEV3を動かしていきます。 新しい環境に対して、最もよ

記事を読む

no image

C言語でEV3開発(9)-opOUTPUT_SPEEDコマンド

どもです。 今回のエントリーでは、前回に引き続きEV3のモーターを動かしていきます。 ただし、単

記事を読む

no image

C言語でEV3開発(10)-opOUTPUT_CLEAR_COUNTコマンド

どもです。 前回のエントリーのラストで、「モーターを動かすコマンド」と書きましたが、今回紹介するコ

記事を読む

toppers

C言語でEV3開発(18)-モードの遷移の設計-コマンド通信処理の準備

 どもです。  今回は、前回紹介したEv3とBluetoothで通信する機能を

記事を読む

toppers

C言語でEV3開発(19)-コマンド通信処理でEchoBackしてみた

どもです。 前回は、Bluetoothの接続状態の変化に伴う、状態遷移について書きました。 今回

記事を読む

eclipse_4.3_kepler

elicpse/CDTでのgdbでのソースを追従したデバッグができない問題

どもです。 今回のエントリーは、Eclipse上でgdbを利用したデバッグ中に発生する問題について

記事を読む

no image

C言語でEV3開発(4)

どもです。 今回のエントリーは、前回のエントリー内容/EclipseでEV3の実行ファイルをビルド

記事を読む

no image

C言語でEV3開発(17)-コマンドによるTOPPERS/HRP2 EV3RT アプリケーションの制御(コントロール)

どもです。 今回は、TOPPERS/HRP2 EV3RT で作成したアプリをPC上から操作するため

記事を読む

Splash

EV3開発サポートツール(3)-Ev3Controller

どもです。 今回は、以前ちらりと紹介した、Ev3のモーターの出力を調整するアプリケーションについて

記事を読む

MindStormControl_SprachScreen

EV3開発サポートツール(1)-C#のユーザーコントロール開発

どもです。 突然ですが、今回はC#に関するエントリになります。 具体的には、C#/WPFで、独自

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Splash
EV3開発サポートツール(3)-Ev3Controller

どもです。 今回は、以前ちらりと紹介した、Ev3のモーターの出力を調

GitHub
batファイルによるGitリモートリポジトリへのpush

どもです。 突然ですが、普段、コマンドラインからgitコマンドを利用

drawio
よさげな設計ツールをみつけました

どもです。 今回は、設計の際に使用するツールについて記載します。

MindStormControl_SprachScreen
EV3開発サポートツール(2)-C#のユーザーコントロール開発(2つ目)

どもです。 前回に引き続き、今回もC#/WPFでの独自UI(ユーザー

MindStormControl_SprachScreen
EV3開発サポートツール(1)-C#のユーザーコントロール開発

どもです。 突然ですが、今回はC#に関するエントリになります。 具

→もっと見る

PAGE TOP ↑