我正在使用Boost.Test进行单元测试,并且当前正在各个测试中运行的各个线程中运行各种模拟服务器。为了更准确地测试我的代码,模拟服务器应该真正在单独的进程中。Boost.Test和分叉
我在想沿着这些线路做的事情:
MY_TEST()
if (fork() == 0) {
runMockServer(); // responds to test requests or times out, then returns
exit(0);
}
// Connect to MockServ and Run actual test here
END_TEST()
但我担心这会搞砸了测试框架。
这是安全吗?有没有人做过这样的事情?
我在Ubuntu 8.04上使用Boost 1.34.1(如果有的话)。
当你说你已经“为fork/exec编写库的单元测试”我假定你的意思是在Boost.Test的上下文中吗? – 2010-06-28 11:59:42
正确,使用Boost.Test。 – 2010-06-28 12:35:49
谢谢。出于好奇,为什么你会说这听起来不像是单元测试你? – 2010-06-28 18:32:23