首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Windows上调试平台特定的非GUI软件问题的简单方法?

在Windows上调试平台特定的非GUI软件问题的简单方法?
EN

Software Engineering用户
提问于 2018-01-30 11:58:14
回答 1查看 134关注 0票数 2

我正在维护几个软件存储库(基本上是C、C++ ),我也想运行它们--或者让我们从至少在Windows上无缝构建开始。

现在,我的台式计算机没有安装Windows,我的笔记本也没有;我现在没有备用计算机,我也不想让我的台式机或笔记本电脑运行Windows (而不是GNU/Linux)。我意识到双引导可能是一种选择,但我也不想重新启动。

我一直在考虑设置一个Windows,但我想知道:

  • 在Windows环境中,除了通过VM进行相对简单的、本质上非突出的测试和特定于平台的调试工作之外,还有更简单/更容易的选择吗?
  • 有什么标准的方法来为我的工作设置这样的VM吗?

我知道现在‘m非常流行,有云和所有的东西,但是我对它们缺乏经验,因此我的问题。

备注:

  • 这是自由和开源软件。
  • 我已经可以选择只运行构建(并且失败),使用承办人's GitHub集成,我想要一台我可以用的机器来让它工作。
EN

回答 1

Software Engineering用户

发布于 2018-01-30 17:22:02

由于您使用的是AppVeyor,下一步是设置并运行测试工具,作为构建的一部分。几个库(如C运行时库、Xerces等)有一套测试,他们运行在刚刚构建的库上。

AppVeyor应该作为构建过程的一部分来运行测试。测试工具要么使用像CUnit这样的其他工具,要么使用自己的工具。每个测试都应该验证任何给定函数调用的结果是否正确。更有可能的是,您将对每个函数进行多个测试,因为您确保正确地处理了有效和无效的输入。有了足够的代码覆盖率,您可能不需要实际使用调试器。

您的构建将包含一些目标

  • all --应该编译应用程序并运行测试,这取决于check
  • check --运行测试工具,如果存在非零返回值,则生成失败。取决于buildbuild-check
  • build --构建库或应用程序(内部目标)
  • build-check --构建测试工具,依赖于build,将测试二进制链接到被测试的库(内部目标)

设置AppVeyor以执行make checkmake all。因为测试可能会导致构建失败,所以您可以确保您的测试在您所关心的所有环境中执行。

除此之外,如果您实际上需要设置断点并逐步执行代码,那么除了双引导或设置VM之外,您别无选择。

票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/364941

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档