使用VS2008,我们想模拟一个大小为X的文件,但在X-Y字节读取失败,以便我们得到错误指示。有人知道如何在Windows上执行此操作吗?看起来有一个针对linux的解决方案,但我真的想不出在windows上执行此操作的方法。我们有多个开发人员、多台机器和cppunit测试框架,所以我想要一个纯软件设计。我正在尝试模拟实际的CRT故障,因此我可以测试处理故障的代码。 最佳答案 将文件I/O函数包装在一个类中;覆盖测试派生类中的那些;用假的或模拟的来模拟失败。 关于c++-如何在CRT中模
我正在尝试对我的Windows可执行文件中的类和函数进行单元/组件测试。我想运行实际的编译代码而不将测试用例构建到可执行文件中*。Microsoft工具非常乐意从可执行文件中导出类和函数,我可以链接到它,就好像它是一个DLL一样。问题-由于动态加载的可执行文件的入口点没有被调用并且没有DllMain(从技术上讲它不是DLL),C运行时没有在“DLL”中初始化并且静态没有被初始化**.有没有办法在动态加载的.EXE上下文中调用CRT_INIT并使一切正常工作,或者这很荒谬吗?*如果我在这里遗漏了一些明显的东西,请随时指出正确的方向。**这似乎是我最大的问题。
如何在单元测试环境下模拟DialogBox、WindowCreationFunctions等MFC系统功能失效?是否有可用的工具或框架? 最佳答案 一个想法是使用ApplicationVerifier(免费,Microsoft)及其“低资源模拟”模式。它没有任何UI功能stub,但它可以伪造某些Win32API中的故障,例如内存分配、等待原语等。另一个想法是为C++使用成熟的模拟框架。Isolator++就是这样一种框架。 关于windows-UnitTest中如何模拟基于MFC的GUI
出于学习目的,我编写了一个test.py,它只会打印出“HelloWorld”。现在的问题是我想要一个Windows安装程序,以便程序在安装后安装并执行。测试.pyhello()defhello():print('HELLOWORLD')那我是不是要稍微改一下程序里的代码还是别的什么? 最佳答案 您不需要安装程序。您可以创建一个在打开时使用任何编译器执行的独立文件。我主要使用pyinstaller。如果你已经安装了pip,你可以在其中执行以下命令pipinstallpyinstaller确保pip在您的路径中。如果没有,google
我通过本地机器连接到VPN并尝试在chrome浏览器上执行selenium脚本然后我收到以下错误:Onlylocalconnectionsareallowed.PleaseprotectportsusedbyChromeDriverandrelatedtestframeworkstopreventaccessbymaliciouscode.[1553947986.711][WARNING]:TimedoutconnectingtoChrome,retrying...[1553947990.713][WARNING]:TimedoutconnectingtoChrome,retrying
我正在使用Boost.Test针对一些旧的C数学库编写单元测试。已知的测试功能之一会引发某些指定输入的整数除以零系统异常。假设这是期望的行为,我想为这种情况编写负面测试。BOOST_REQUIRE_THROW(statement,exception);对我不起作用,因为它不是C++样式的异常(此宏在内部使用try{}catch{})。当我预计系统级别会出现故障时,正确的处理方法是什么? 最佳答案 因为它是Windows,我建议查看_set_se_translator()窗口API。它允许使用C++catch处理结构化异常。还有其他可
在VisualStudio中进行C开发的首选单元测试工具是什么? 最佳答案 Google的快速搜索揭示了一些C的单元测试工具:CheckCUnit我怀疑它们是专为与VisualStudio一起工作而设计的,尽管我确信您无论如何都能使用这些工具,因为VisualStudio对第3方工具有很好的支持。 关于c-在VisualStudio中进行C开发的首选单元测试工具是什么?,我们在StackOverflow上找到一个类似的问题: https://stackover
前几天,我决定需要了解Windows平台上C++的测试驱动开发(使用VisualStudio2010Premium)。在决定试用boost的单元测试框架之前,我环顾四周。我应该说我选择了boostpro.com的版本(如果我没记错的话,当前版本是1.44)。这有一个静态库的构建,所以我不在我的测试中使用DLL。Boost的单元测试文档谈到将代码与测试套件分开,这似乎很合理。但随后您必须处理从现在独立的测试套件项目中引用代码的问题。所以我有一个要测试的库项目(但我仍然不确定如何编写可以引用.exe项目的测试...)所以我在我的解决方案中创建了一个单独的项目,称为单元测试。我添加了以下代码
我的应用程序使用LoadLibrary、GetProcAddress和FreeLibrary实现了某种插件架构。由于我所有的dll都与可执行文件位于同一目录中,因此当我查找dll时,我会使用以下函数获取可执行文件的目录并在那里搜索:stringFileSystem::GetPathToProgramDirectory(){charprogname[MAX_PATH];GetModuleFileNameA(NULL,progname,MAX_PATH);PathRemoveFileSpecA(progname);returnstring(progname);}这适用于生产,但是当我尝试在
我似乎无法弄清楚如何在cmake中使用add_test传递${CTEST_CONFIGURATION_TYPE}而无需CMake添加额外的转义字符。我目前正在使用cmake生成VS项目文件并设置RUNTIME_OUTPUT_DIRECTORY并且需要使用此目录+配置作为一些测试的工作目录,因为它们依赖于其他构建的可执行文件。我试过用add_test(NAMEtestWORKING_DIRECTORY"${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/\${CTEST_CONFIGURATION_TYPE}"COMMANDtest${TEST_ARGS})这正确地找到了