青蛙学 / 可可 / 常问问题

常问问题

总览

整合方式& 支持

压扁 GUI大家乐棋牌器和Coco之间是否有任何特殊的集成,例如将大家乐棋牌套件/案例/脚本与覆盖率相关联?

这种集成正在积极发展。当前,这两个工具可以自动交换其信息,以用于为基于Qt的应用程序编写的Squish大家乐棋牌脚本。对于其他GUI技术,我们有一个 知识库文章 其中描述了如何通过脚本交换信息。

是否支持GitLab CI和GitHub Actions进行持续集成?

是。虽然我们有 书面说明 对于与Jenkins,Bamboo和SonarQube的CI工具集成,通常来说,与其他CI系统(包括GitLab CI和GitHub Actions)的集成受支持。 命令行工具集.

我们的 支持团队 可帮助您的团队将您选择的CI系统与Squish 可可集成。

可可可否与我的单元大家乐棋牌框架“ X”集成?

可可的构建考虑到了与单元大家乐棋牌框架集成的开放,灵活的方法。虽然我们有 记录的设置 对于CppUnit,QTest和Google Test这样的流行框架,几乎可以支持任何通用或非典型框架。

我们写了一个 博客,解释如何集成泛型单元大家乐棋牌框架 与Squish 可可。

什么’Qt附带的Squish 可可和QTestLib之间的区别是什么?

QTestLib是一个框架,用于为基于Qt的应用程序和库开发单元大家乐棋牌。可可’我们的工作是帮助分析框架大家乐棋牌(或不大家乐棋牌)了哪些代码。我们的 文件资料 概述了整合两者的必要步骤。

可可可与gmock一起使用吗?

gmock已被Google Test框架所吸收。可可包括 整合支援 这个框架。

可可如何与CMake + 谷歌大家乐棋牌一起使用?

我们的文档包括使用说明 CMake的谷歌大家乐棋牌。两者可以一起使用而不会出现问题。

性能

什么 are the project size limits which 可可 can handle?

虽然对于Coco可以管理的项目的大小限制没有明确的答案,但我们已经看到Coco已成功地用于构建有数百万行源代码的应用程序。

就运行时性能而言,已检测的构建仍在调试还是未优化?

由您决定以调试或发布模式编译构建。借助Coco,您可以直接使用经过优化的构建,其运行速度将比调试构建快。无论哪种情况,Coco都能提供准确,可靠的承保范围信息。

我们的基准大家乐棋牌显示,使用工具构建对运行时性能的影响为10%到30%。

测验

对于使用独立的Python脚本编写的,使用某些API调用应用程序功能的大家乐棋牌,我们能否衡量其大家乐棋牌覆盖率?那么,我们应该如何检测代码?

es,因为您的项目是以Coco支持的一种语言(例如C / C ++,C#)编写的。仪器使用 CoverageScanner,与其他项目一样。

我们是否应该仅以单元大家乐棋牌为目标?在我们的覆盖率报告中包括更多“重量级”集成大家乐棋牌是否是常见的做法?

争取单元大家乐棋牌的高覆盖率是一个好目标,但应注意大家乐棋牌本身的质量。单元大家乐棋牌虽然是基本的,但即使单元大家乐棋牌实现了很高的覆盖率,也无法提供完整的产品质量信息。单元大家乐棋牌可以告诉您代码正在按预期的方式工作,但是可能会错过在进行更多“重量级”集成大家乐棋牌(例如执行GUI)时发现的客户需求。建议采用多管齐下的大家乐棋牌方法,包括对大家乐棋牌质量进行审查,以防止“自动盲目性”。

可可是否支持黑盒大家乐棋牌?

是。在源代码安全性阻止所有开发人员和质量检查团队成员之间共享代码的团队中,Coco提供了创建“黑盒”检测数据库的功能。可以与团队的任何成员(甚至是外包大家乐棋牌人员)安全地共享数据库,因为不可能查看应用程序的源代码。此外,质量保证工程师在将报告传递给开发人员以将报告合并为一个全局覆盖率报告之前,仍然能够查看其大家乐棋牌的覆盖范围并管理其执行情况。

查看我们的博客以获取 使用Coco进行黑盒大家乐棋牌的方法.

语言/编译器

可可支持哪些语言?

最新稳定版本 可可的语言包括对C / C ++,C#,SystemC,QML和Tcl的语言支持。

可可提供新的语言支持’的发展路线图。请 与我们联系 如果不支持您的语言,则支持实施的顺序将取决于客户的需求。

是可可’对应用程序的支持取决于GUI工具箱或工具箱版本,例如Qt 4或5?

可可可以检测以书面形式编写的每个应用程序 支持的语言,独立于GUI技术。

对于基于Qt的应用程序,Coco确实提供了用于识别某些特定于Qt的功能的开关,这些功能可用于所有Qt 3、4和5版本。

是否支持mingw-gcc?

是。可以找到我们大多数受支持的编译器的清单 在本页面.

是否处理C ++模板类?

是。

是否可以在较早的gcc编译器版本(例如gcc 3.3.6)中使用Coco?

是。甚至早于2.x的版本也可以使用。

平台类

可可可以在哪些平台上运行?

我们提供适用于Windows,Linux,Unix和macOS平台的预构建软件包。

可以使用交叉编译器来定位其他平台,包括嵌入式Linux和嵌入式Windows,实时操作系统(RTOS),移动操作系统和 微控制器 和微处理器。

仪器仪表

使用QMake .pro项目文件时如何检测应用程序?

We’编写了有关通过.pro文件检测Qt应用程序的完整教程。它’s freely available 这里.

是否包含共享库(DLL,.so)的项目?可以检测库中的代码吗?

双方都同意。分析库的代码覆盖率 _只要_,因此有必要编译主应用程序并将其源代码覆盖。我们’ve written 专用文件 关于这个话题。

分析

可以按班级运行报告吗?

_CoverageBrowser_ 方法浏览器包含用于浏览类的树视图。

EMMA-XML报告还会按类生成统计信息。

太多“hits”上的代码有时可以指示性能错误。有没有办法得到这样的报告?

可可没有为此内置的特定功能,但是一个简单的解决方法可以解决问题:

设置所需“Coverage Level”达到很高的值,例如10000。 _CoverageBrowser_ 仅在执行了1万次之后,才会认为该语句有效。然后,您可以找到数量众多的位置“hits”.

工具资格&安全关键应用

青蛙学是否支持IEC 61508和IEC 62304的工具资格?

是。我们提供 工具资格Kits 适用于以下标准:

  • ISO 26262:道路车辆–功能安全
  • EN 50128:铁路应用
  • DO 178C:机载系统
  • IEC 61508:与电气/电子/可编程电子安全相关的系统的功能安全
  • IEC 62304:医疗设备软件–软件生命周期过程
  • ISO 13485:医疗设备–质量管理体系

压扁 可可和gcov / LCOV有什么区别?是否有Coco可以检索gcov不能的指标?

  • gcov的覆盖范围支持仅限于语句和分支覆盖,而Coco除语句和分支覆盖之外还支持条件,MC / DC和MCC覆盖。
  • 对于优化的构建,gcov不会产生可靠的覆盖结果。
  • LCOV,gcov的图形前端,创建HTML页面,显示带有覆盖信息的源代码。另一方面,Coco不仅可以生成详细的HTML报告以帮助分析,而且Coco的前端用户界面程序 浏览器提供了用于交互式代码覆盖率数据分析,带注释的源代码视图,大家乐棋牌执行状态和计时等的全功能GUI。
  • gcov仅适用于使用GCC编译的代码,而Coco具有更多功能 广泛的编译器支持.
  • 可可分别记录每个单元大家乐棋牌或应用程序大家乐棋牌的代码覆盖率报告。这样可以选择和比较各个大家乐棋牌。
  • 可可支持 大家乐棋牌影响分析 (也称为补丁分析),一种优化方法,用于确定哪些大家乐棋牌进行了特定的代码更改(例如,最新补丁)。使用此分析,您只能运行那些进行更改的大家乐棋牌,从而改善大家乐棋牌在需要对补丁进行风险评估的时间约束下的效率。

复制链接