我正在使用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