Catch C++ユニットテストフレームワークを初めて使用しています。
cow.h
:catch C++ユニットテストフレームワークへのヘッダファイルのインポート
class Cow{
public:
Cow(std::string name);
void moo(std::string someWords);
private:
std::string name;
};
cow.cpp
:
Cow::Cow(std::string cowName){
name = cowName;
}
void Cow::moo(std::string someWords){
std::cout << "my name is " << name <<" mooo " << someWords <<"\n";
}
私は私が構築したクラスをテストしようとしている、私は2つのファイル、
cow.cpp
ファイルと
cow.h
ファイルを持っ例えばとしましょう
今、クラスのテストを作成したいので、testCow.cpp
というテストファイルを作成し、catch.h
のC++のシングルヘッダーファイルとcow.h
ヘッダーの
しかし、メソッドmooを呼び出そうとすると、メソッドの定義されていない呼び出しが存在し、存在しないと言います。これを解決する唯一の方法は、s ++実装全体をテストファイルにコピーすることです良い練習...
私は標準のg++
コマンドを使用してファイルをコンパイルしています。崇高なテキストエディタを使ってファイルを編集しています。
このようなことが起こり、それを解決する理由は何ですか?
あなたのテストコードと完全なエラーメッセージを投稿してください。 – tkausl