1

作成したコードに基づいて単体テスト ケースを作成している場合、CXX テスト フレームワークはどの程度効果的ですか。コードのバグは、単体テスト コードのバグにも変換される可能性がありますか? ネガ2つでプラスになるようなものじゃないですか。

また、CXX に費やされる時間と労力は、コーディングの労力以上ではないにしても、少なくとも同等です。

私はこのフレームワークが私のプロジェクトで使用されることに賛成ではなく、それに反対するための長所を探しているので、これについてのあなたの考えが必要です.

一方、それが有益だと思われる場合は、教えてください:)。

4

4 に答える 4

4

Google は、私が使用した素晴らしい C++ テスト フレームワークを提供しています... 私は他の C++ テスト フレームワークを使用したことがなく、Junit の経験も限られていました。優れたテスト フレームワークを使用することが重要です。なぜなら、フレームワークに不満があるためにテストをあきらめるにはあまりにも重要だからです。ここにリンクがあります:

http://code.google.com/p/googletest/

お役に立てれば!

于 2009-04-08T02:49:16.913 に答える
2

私はcxxtestを使用しています。回帰テストは、アプリにプラットフォームに依存しないレイヤーを提供するソフトウェア ライブラリを検証するためにのみ使用する高価なタスクです。これは、非常に多くのアプリやプロジェクトがそれらに依存しているため、すべての変更がコードの安定性に影響を与えないようにするためです。

cxxtest をカバレッジ分析と組み合わせて、テスト カバレッジが十分であることを確認し、CruiseControl と組み合わせて自動化します。

ただし、アプリではこれを行いません。頑張りすぎ。

テスト アプリの作成は、ライブラリ全体を作成するのと同じくらい困難です。時間をかける価値があるかどうかを検討する必要があることに同意します。

ジョエルもこれについて何か言いたいことがあると思います: http://www.joelonsoftware.com/items/2009/01/31.html

于 2009-04-06T10:56:56.570 に答える
0

私はヘッダーのみのテスト フレームワークを好みます。そのうちの 2 つはTUTCatchです。以前、いくつかのプロジェクトでTUTを使用していましたが、 Catchを見つけたのはつい最近のことです。

1) TUT -- C++ テンプレート ユニット テスト フレームワーク

TUT は、C++ 用の小型で移植可能な単体テスト フレームワークです。

  • TUT は、使用するコンパイラや OS に関係なく、非常に移植性があります。
  • TUT はヘッダー ファイルのみで構成されます。ライブラリは必要ありません。展開はかつてないほど容易になりました。
  • カスタム レポーター インターフェイスにより、TUT を世界中のほぼすべての IDE またはツールと統合できます。
  • マルチプロセス テストのサポート (デッドロックとタイムアウトのテストが進行中です)。
  • TUT は無料で、BSD のようなライセンスの下で配布されます。
  • テストは、名前付きのテスト グループに編成されます。
  • 回帰 (アプリケーション内のすべてのテスト)、1 つのグループまたは 1 つのテストの実行。
  • Pure C++、マクロなし!

2) Catch -- 単体テスト、TDD および BDD 用の最新の C++ ネイティブ、ヘッダーのみのフレームワーク

キャッチは何ですか?

Catch は C++ Automated Test Cases in Headers の略で、C++ および Objective-C (およびおそらく C) 用のマルチパラダイム自動テスト フレームワークです。完全に一連のヘッダー ファイルで実装されますが、利便性を高めるために単一のヘッダーとしてパッケージ化されています。

于 2015-04-18T02:09:09.987 に答える