2011-10-05 4 views
2

私はTest C code with googletestを見ましたが、満足のいく回答は見つかりませんでした。googletest(gtest)を使用してCコードをテストすることはできますか

ほとんどの単体テストフレームワークでは、簡単な例が常に機能しますが、中規模または大規模のコードベース、モジュールが30以上あり、依存関係がどこにある場合でも、これらのツールを使用しますか? + gtestはCコードをテストできると主張していません。 Cコードあなたが言うリンクブログの記事として test c code with gtest

+0

関数を複数のモジュールまたは1つのモジュールに分解できます。だから私は1つのモジュールと30のモジュールをテストすることに違いは見られなかった。 – Daniel

+0

@Daniel問題はリンク時です。無関係なコードを含むモジュールを使用すると、必要のない多くのものがリンクされてしまうことがあります。 –

答えて

1

そうでもない

をテストするためにGTESTを使用して、言語間の違いは、それが難しいうまく設計されたC++テストフレームワークを使用するために作る場合は、ここでの例でありますこの記事の例のように、#defineなどを使用してCをテストするためのC++テストフレームワークをシューズすることができますが、前述したように依存性が多い場合は問題に遭遇します。

これはよくある問題です。this question about C testingには多くのC++テストツールが含まれていますが、大規模なプロジェクトではうまく動作しないと思います。ここで


いくつかの提案

あなたはautotoolsのを使用する場合は、あなたがCheckで見たいと思うかもしれませんです。また、私はtest-deptを使用しています。これは素敵で軽量で、その場で機能を置き換えることができます。私はそれを使用して数ヶ月間、非常に大きなコードベースにテストを追加しましたが、これまでのところはうまくいくように思えます(リファクタリングを多少行いましたが、フレームワーク)。

There are many other suggestions in the question I linked before

関連する問題