如题,正在使用VS2015 Qt5.9 c++,想要测试一个在使用应用过程中可能导致整个工作流程异常终止的bug,但是由于需要完成前几步才能到该步骤,测试时间较长,且并非每次出现,比较难复现,应该如何处理,了解过VS专业版似乎有个东西可以做进程快照?
一般对这种BUG处理方式有:
breakpad
。如果只是在Windows里使用,可以看看SetUnhandledExceptionFilter()
, MiniDumpWriteDump()
MSDN文档。我在qt开发时经常使用一个第三方log模块,在每个线程开始运行和结束运行他都会写入txt日志文件相关信息,软件挂了一般都是查日志然后复现该bug。如果编码没这么做,可能得看专业测试工程师给你意见了
可以这样来debug
一、首先右击工程名,选择最后一个选项“Properties”
二、然后选择Linker-System-Console即可。
运行程序时,会另外弹出一个dos命令框。
崩溃捕获那几个函数了解一下,找找示例代码
SetUnhandledExceptionFilter
MiniDumpWriteDump
代码里实现进程崩溃时,写入dmp文件,可以用vs打开调试,查看崩溃时的状态
bug不是每次出现的话,用按键精灵录制回放,自动操作多跑几遍
搞一台录像机,一个大的内存卡,对着拍。