【发布时间】:2011-05-28 21:34:17
【问题描述】:
我正在开发一个处理 CTRL-C 的应用程序。我正在生成一个信号处理程序来优雅地关闭线程和其他资源。
我想在我的应用程序可能存在的不同场景中测试 CTRL-C。我知道如何为被测进程设置这些,但我需要一种方法(在正在运行的测试套件的代码中)检查是否达到该条件以准确调用 CTRL-C.
我在 Linux 中工作,我想在 CPPUNIT 的帮助下自动运行我的测试。在我的每个 CTRL-C 测试中,我都会启动该过程,然后使用 @987654323 发送 CTRL-C @函数有进程的PID。
我正在使用共享内存;一旦测试的应用程序达到我感兴趣的条件或我想发送 CTRL-C 的点,我将标签或状态写入共享内存。同时,在不同进程中运行的测试套件代码不断地轮询共享内存,一旦读取到所需的状态,它就会发送 CTRL-C/kill。
您认为这是一种好方法还是通常以更好/有效的方式完成?
亲切的问候
AFG
【问题讨论】:
标签: c++ unit-testing testing signals