Abr*_*ile 9 c++ testing unit-testing signals
我正在开发一个处理CTRL-C的应用程序.我正在生成一个信号处理程序来正常关闭线程和其他资源.
我想在我的应用程序可能的不同场景中测试CTRL-C.我知道如何为测试中的进程设置那些,但是我需要一种方法(在运行的测试套件的代码中)来检查是否达到了这个条件,以便完全调用CTRL-C.
我在Linux工作,我希望在帮助下自动运行我的测试CPPUNIT.在我的每个CTRL-C测试中,我启动该过程,然后使用kill具有该过程的PID的函数发送CTRL-C .
我正在使用共享内存; 一旦测试的应用程序达到我感兴趣的条件或我想发送CTRL-C的点,我就会在共享内存中写入标记或状态.同时,在不同进程中运行的测试套件代码连续轮询共享内存,一旦它读取所需状态,它就会发送CTRL-C/kill.
您认为这是一种好方法还是通常以更好/更有效的方式完成?
亲切的问候
AFG
首先测试接收到某些外部信号时的行为看起来不像单元测试,而是像功能测试一样.
此外,你这样做的方式也听起来太复杂,可能会强制某种同步并隐藏一些行为.
另一方面,对于这种测试,我真的没有更好的建议,这通常是通过外部工具以更少控制的方式完成的.
| 归档时间: | 
 | 
| 查看次数: | 1065 次 | 
| 最近记录: |