ストリーム演算子 << をオーバーライドして stringstream として機能し、コンソールの印刷を容易にするオブジェクトがあります。
cout << obj << endl;
文字列出力を予想される文字列と比較することにより、単体テストでこの機能をテストしたいと考えています。私は現在、次の方法でこれを達成しています:
stringStream ss;
ss << obj;
string objStr = ss.str();
EXPECT_EQ(objStr, "expected string output");
これは特に読みやすいわけではなく、確かに簡潔ではありません。obj の文字列表現を取得するための、より簡単で短くて簡単な方法はありますか?