問題タブ [catch-unit-test]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - Catch フレームワークを使用して C++ テンプレート クラスをテストする
Catch を使用してテンプレート化されたクラスをテストする良い方法を探しています。私はほとんど動作するものを持っています:
このセットアップは、最初の失敗までのみ実行されます。これは、8 つのケースすべてが同じように失敗する可能性が高いため、問題ありません。ただし、障害が発生したときにどのテンプレート引数のセットが使用されているかを知っておくと便利です。私の考えはこれを行うことです:
ただし、RUN_ALL で複数の INFO を使用することはできません。これを行うと、重複した識別子を持つコードが生成されるためです。
(RUN_ALL(test_number_one)
は 270 行目に表示されます。)
すべてのテスト関数を同じ署名にする必要がない回避策のアイデアはありますか?
(また、CATCH を使用したテンプレート コードのテストに関する記事へのポインタ、および一般的な例外処理 (つまり、try/catch) に関する多くの結果を取得せずにそのような記事を検索する方法に関する提案も歓迎します。)
c++ - C++ TDD でオーバーロードされた const メソッドと非 const メソッドを呼び出す良い方法は?
全て
イテレータを備えたいくつかの派手なコンテナを作成しました。ので、私は持っています
テストでは、コンテナをインスタンス化し、それを埋めてテストします。const バージョンと非 const バージョンの両方を呼び出すための受け入れられた/良い方法は何ですか? たとえば、次のような簡単なテスト
const イテレータだけでなく、イテレータに対しても実行する必要があります。定数参照?いくつかの醜いキャスト?
c++ - デバッグモードの単体テストでアサートをバイパスする方法は?
テスト ケースでは、デバッグ モードで無効な入力に対してアサーションを生成する関数をテストしたいと考えています。残念ながら、これはCatchテスト ランナーを停止します。テストランナーが継続するように、このアサーションをバイパスする方法はありますか?
これが私のテストケースです:
c++ - C++ Catch 単体テスト フレームワークと CMake の統合
Visual Studio 2015 を使用してアプリケーションを開発しています。
ソリューションには 6 つのプロジェクトがあり、そのうち 5 つがライブラリで、1 つが実行可能ファイルです。
実行可能プロジェクトにはテスト ファイルが含まれており、テストに使用Catch framework
しています。したがってcpp
、実行可能プロジェクトには 5 つのファイルがあります。を使用して各テストを 1 つずつ実行するにはどうすればよいCMake
ですか?
add_test
の関数CMake
は、実行可能ファイル名をコマンドとして受け取り、すべてのテストを一度に実行します。各テストを個別に実行する必要があります。
c++ - キャッチしない例外をキャッチする
Catch を使用して単体テストを記述していますが、REQUIRE_THROWS_AS
. これは私のテストです:
そして、これは私のコンソールで発生する例外です:
この例外をキャッチすることを理解していれば、まさにキャッチしようとしているものですよね?