問題タブ [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: 単体テスト用のコードをパーソナライズするために使用できる記号
Catch C++ テスト フレームワークを使用しています。私は別のテストコードファイルを持っています。
コード定義を変更するために使用できるビルド時に Catch が定義するシンボルはありますか?
例: いくつかの特別なコンストラクターを持つ必要がある構造体があるとしますが、特定のテスト ケースのためのテスト目的のみです。テスト コードをビルドするときにこのコンストラクターを使用できるようにしたいのですが、通常のビルドではこの関数を有効にしないでください。
使える記号は?
https://github.com/philsquared/Catch/blob/master/docs/configuration.mdを調べましたが、関連するものが見つかりませんでした。
c++ - std::transform c++ での致命的なエラー
foo インスタンスのベクトルを文字列に変換しようとしていますが、std::transform で致命的なエラーが発生しています。
次data
の値があるとします。
コード:
デバッグ中は
、実装の行*__result = __unary_op(*_first)
で停止し、 catch テスト フレームワークの FatalConditionHandler に移動します。私はキャッチテストとstd::transformの両方に不慣れです。誰かが問題の原因とその解決方法を説明できますか? どうもありがとう!tranform
stl_algo.h
c++ - Catch C++ を使用した単体テストが main() に干渉している
私は単体テストに不慣れで、Catch フレームワークを使用することにしました。これは、1 つのヘッダー ファイルと統合するのが簡単に思えたからです。ただし、マルチファイルのバイナリ検索ツリー プログラムがあります (ファイルは次のとおりです: main.cpp、Tree.h、Tree.hxx、TreeUnitTests.cpp、catch.hpp)。main.cpp で int main() 関数をコメントアウトした場合にのみ、単体テストを実行できます。TreeUnitTests.cpp の '#define CATCH_CONFIG_MAIN' 宣言と競合していることは理解していますが、その宣言を含めないと単体テストを実行できません。単体テストを実行するたびに main() をコメントせずに両方を実行するにはどうすればよいですか?
これは私が使用しているヘッダー ファイルです: https://raw.githubusercontent.com/philsquared/Catch/master/single_include/catch.hpp
そして、私が見つけてガイドとして使用した Catch チュートリアル: https://github.com/philsquared/Catch/blob/master/docs/tutorial.md
参照用の関連ファイル: main.cpp:
TreeUnitTests.cpp:
(私のテストは実際のテストではなく、Catch フレームワークが正しく機能していることを確認するためのものです。これはメタ テストであると言えます)