找回密码
 创建账号

QQ登录

只需一步,快速开始

查看: 437|回复: 0

[原创软件] 单元测试/集成测试自动化工具--WinAMS

[复制链接]
  • TA的每日心情
    无聊
    2023-12-22 10:28
  • 签到天数: 6 天

    连续签到: 1 天

    [LV.2]天邪鬼

    发表于 2023-5-16 17:17:36 | 显示全部楼层 |阅读模式

    CoverageMasterwinAMS : 适用于嵌入式目标机代码的单元测试/集成测试工具
    全面支持嵌入式微机!验证嵌入式C/C++软件 实施以模块为单位的自动化单元测试工具
    不需要HookCode 直接使用目标机代码进行单元测试
    联合静态解析工具[CasePlayer2],提供C0(语句),C1(判定),MC/DC覆盖率报告,优化测试用例制作
    已取得第三方认证机构TUVSUD对适用于汽车机能安全ISO26262软件工具的认证
    产品概要
    [Coverage masterwinAMS]是以嵌入式软件的函数为单位,实施模块单元测试以及C0/C1/MCDC覆盖率测试(coverage test)的嵌入式软件自动化单元测试工具。目标机源代码通过交叉编译器生成目标机执行代码,通过跟实际处理器同样的模拟处理器环境进行单元测试,不需要对执行代码做任何变动,使高信赖性的模块测试成为可能。在汽车控制软件这样的对安全性要求极高的领域,单元测试已经成为不可缺少的一部分。使用目标机代码进行单元测试也是为了符合汽车行业中ISO26262功能安全认证标准。
    产品特长
    全面支持嵌入式微机!验证嵌入式C/C++软件 实施以模块为单位的自动化单元测试工具
    作为能够检验出仅凭系统测试以及整体测试无法发现的[潜在错误]的检测方法,[单元测试]在嵌入式开发领域受到广泛重视。同时,单元测试也是汽车用软件功能安全(ISO26262)领域中要求实施的认证项目之一。

    [Coverage master winAMS]直接使用通过交叉编译生成的目标机代码,在模拟处理器环境下进行单元测试。既能实现C语言程序的逻辑上的单元验证,又能够对嵌入式微机组装为产品后可能发生的问题等进行具有高信赖度的白盒(white box)测试。
    不需要HookCode 使直接使用目标机代码进行单元测试成为可能的业界唯一的工具
    有些公司的单元测试工具往往采用在被测试对象的源代码中追加测试用代码或者测试用驱动器的方法,导致测试时所用的代码与组装为产品后的目标机用代码不同。虽然[理论上运行功能应该是相同的],但是从嵌入式开发的角度考虑,这样就如同对交叉编译所生成的经过优化处理的代码进行了加工,无法确保最终产品的质量。Coverage master winAMS是业界唯一的,具有[不需要对被测试对象做任何加工]实施单元测试功能的工具,特别是在安全性要求高的领域中得到很高的评价。

    不需建立单元测试专用的环境,可以在开发用交叉编译环境进行单元测试
    Coverage master winAMS不需要追加任何测试用驱动器或测试用代码,可以直接使用将组装成产品的目标代码进行单元测试。单元测试能够与软件开发使用共同的交叉编译环境,不再需要对测试资源进行专门管理,也不再需要建立其他专用环境。因此,既方便程序资源管理,又能够缩短准备测试环境所需的时间。
    符合汽车功能安全标准(ISO26262)[不做加工直接使用目标机代码实施单元测试]这一要求的最佳工具
    ISO26262是从IEC61508衍生出来的适用于汽车制造领域的功能安全标准。其中的Part.6-9[软件程序单元测试]包括了关于软件程序的构造覆盖率测试以及有关的规定项目。根据汽车安全标准(ASIL),提出了测试语句覆盖率(statement coverage),分支覆盖率(branch coverage),MC/DC覆盖率的推荐性事项。
    其中的另一个推荐性事项是
    [尽可能使单元测试的环境与目标环境相同]
    GAIO提供的单元测试工具Coverage master winAMS具有
    ●采用全面支持嵌入式微机的微机化功能测试平台环境
    ●不需要插入测试用代码直接使用目标机代码进行测试
    的特征,提供符合ISO26262标准要求的必须功能。GAIO提供的Coveragemaster winAMS是符合ISO26262标准[直接使用整装用代码实施单元测试]这一要求的业界唯一的工具。
    关于汽车机能安全ISO26262的对应以及认证的获得
    已取得第三方认证机构TUVSUD对适用于汽车机能安全ISO26262软件工具的认证
    2012年6月28日,「Coverage master winAMS /General」测试工具获得由德国TUVSUD第三方认证机构,在汽车机能安全规格的ISO26262软件工具方面的认证,包括日本在内亚洲地区首次获得该项认证。
    通过此项认证,说明本公司的单元测试工具「Coverage master winAMS /General」,以及程序分析工具「CasePlayer2」,在静态分析和单元测试领域,是符合所有安全度水准的工具,并由TUVSUD认证机构得到了保障。
    ISO 26262对于不同的开发用软件工具在工具置信水平(TCL),都需要开发者提供开发软件工具的认证书。此项认证适用于在工具认证当中,最为复杂的TCL3工具认证标准。因此,导入本公司的单元测试工具之后,不需要对TCL的部分进行认证,进而可以缩减手续跟时间。
    主要的单元测试功能
    采用SSTManager管理单元测试project
    SSTManager是Coverage master winAMS的应用功能,用于管理单元测试project,制作测试数据(test data)。从设定测试环境开始,到报告测试结果为止,均由微机化功能测试平台(ISS)实施综合管理。
    采用通用便利的CSV文件管理测试数据的输入输出
    Coverage masterwinAMS不需要插入测试用代码,直接使用目标机代码进行单元测试。采用通用便利的CSV文件管理函数测试时使用的输入输出数据。测试结束后,输出的测试结果和输出的期待值也将以相同的格式显示在CSV文件之中。
    C0/C1覆盖率报告的自动化制作功能(标准功能)
    根据测试的输入输出数据自动报告相应源代码的C0/C1测试覆盖率结果。包括通过图形(viewer)显示测试数据,以及与其相应的被测试的源代码路径的功能,用于分析测试结果。作为选项功能也包括MC/DC覆盖率测试功能。
    MC/DC覆盖率的自动化测试功能(选项功能)
    单元测试的效率化功能
    联合程序解析工具CasePlayer2,实现代码参照解析作业的效率化
    利用CasePlayer2生成的流程图表以及模块构造图(调用函数的构造图)与源代码的连接(link)功能,使单元测试用源代码的解析工作效率化。
    根据代码解析自动化制作C0,C1,MC/DC 覆盖率测试计划
    联合程序解析工具CasePlayer2,自动化制作符合覆盖率测试要求的条件分支if,switch,for,while等的测试数据。可以将被测试函数中含有的条件式(if以及switch等)在数据制成图形(Viewer)上列表显示。




    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?创建账号

    ×
    您需要登录后才可以回帖 登录 | 创建账号

    本版积分规则

    Archiver|手机版|小黑屋|iYa.App 软件交流社区

    GMT+8, 2024-4-30 01:20 , Processed in 0.043220 second(s), 19 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表