0530-3433334

网站建设 APP开发 小程序

知识

分享你我感悟

您当前位置>首页 >> 知识 >> 软件开发

为什么工程仿真CAE软件需要自动化回归测试系统的应用理念与实践

发表时间:2023-10-13 08:05:03

文章来源:炫佑科技

浏览次数:174

菏泽炫佑科技

为什么工程仿真CAE软件需要自动化回归测试系统的应用理念与实践

目前,几乎所有CAE软件本身都是与测试系统分离的,*终用户一般不涉及测试系统。 CAE软件的开发人员必须清楚地了解整个自动化测试系统的构建和维护,才能很好地应用测试系统,保证软件产品的质量。 它是世界上**个向*终用户提供自动化测试系统的CAE软件,并且它还使所有自动化测试用例开源。 本文详细介绍了自动化回归测试在大规模通用仿真CAE软件中的应用概念和实践。

为什么工程仿真 CAE 软件需要自动回归测试

虽然回归测试可以手动完成,但这种方法容易出错且效率低下。 当软件较小的时候,偶尔使用一下也可以,但是当软件变大,需要多人协同工作时,就必须通过自动化来完成测试。 回归测试可确保 CAE 软件产品在发生任何变化时仍能良好地执行其现有功能。

CAE软件变更的原因通常分为四大类:

1.增加新功能。 这是运行回归测试的*常见原因,新旧代码必须完全兼容。 当开发人员开发新代码时,他们可能会忽略多年前开发的现有代码,这需要回归测试来识别潜在问题。 例如,增加网格划分控制参数,新参数的引入可能会对现有参数产生影响。 此时回归测试可以发现隐藏的问题。

软件自动开发环境_自动化软件开发平台_自动化软件开发

2、功能修改。 在产品的早期阶段,开发人员经常修改现有功能,放弃或修改某些功能。 在这种情况下,回归测试可以检查相关功能是否被删除或修改,以确保其他功能不会受到损害。

3、功能整合。 在这种情况下,回归测试可确保软件产品与其他产品集成时完美运行。 例如,当CAE想要集成固流耦合功能时,新代码可能会影响现有结构模块或流体模块的功能。 自动化测试可以及时发现问题。

4.错误和问题修复。 这是*常遇到的工作状况。 对于像 CAE 这样的大型软件,开发人员修复已发现错误的努力可能会产生更多错误。 因此,非常需要进行回归测试来保证软件质量。

工程仿真CAE软件的回归测试类型

CAE涉及领域广泛,因此回归测试需要覆盖范围广泛。 根据多年的研发实践经验为什么工程仿真CAE软件需要自动化回归测试系统的应用理念与实践,我们将CAE仿真软件的回归测试归纳为以下几类:

1.图形界面GUI测试

现代仿真软件往往功能复杂,GUI测试是保证软件稳定性的重要组成部分。 测试软件的各种交互控件,如菜单栏、工具栏、树形结构、属性窗口、弹出菜单、对话框等自动化软件开发,以及具有复杂交互功能的三维图形显示窗口。 用户界面测试可确保应用程序具有良好的外观和感觉,这通常可以提前确保产品的用户友好程度。 关于大型CAE软件窗口的设计,请参考《大型通用仿真软件窗口设计与开发》一文。

自动化软件开发_软件自动开发环境_自动化软件开发平台

2. 兼容性测试

CAE 软件用于不同类型的硬件和操作系统。 测试系统需要支持主流硬件系统和Linux等常见操作系统。 这就需要开发者拥有一定数量的硬件系统甚至虚拟机,并在发布大版本之前对各种用户环境进行兼容性测试。 现代CAE软件基本都是跨平台的,自动化测试运维系统需要考虑到支持的操作系统。 对于云CAE应用程序来说,需要支持测试不同的Web浏览器和网络环境。

3.计算及解精度测试

与其他类型的软件不同,工程仿真CAE软件对计算结果要求较高,精度也是测量仿真软件*重要的指标。 因此,计算沉降是测试系统的必要部分。 验证结果的常用方法是检查测试结果的*大和*小值,例如结构分析中的*大和*小应力值,以及流体分析中的*大和*小速度结果。 还有单个值的验证,例如动力系统中的总体能量值。 同时,由于不同硬件和操作系统的差异,结果需要允许一定的误差,但误差一般不超过5%。

4.数据持久化测试。

数据持久化测试是测试系统中相对复杂的部分,需要开发人员对产品有深入的了解。 软件不断更新后,需要保证旧版本工程文件的兼容性。 现代CAE软件的更新频率比较快,因此足以保证持久性项目数据在3年内能够被读取和转换。 从降低维护成本的角度来看,不需要支持很久以前的项目文件。

另外,还有一些必要的测试内容,比如安全测试、本地化和国际化测试、内存压力测试等,由于篇幅限制,这里不再赘述。

自动化软件开发平台_软件自动开发环境_自动化软件开发

测试用例库的维护

测试库作为测试系统的重要组成部分,需要持续维护。 CAE软件会经常修改,新版本会不断发布。 修改后的新版本会增加一些新的功能或对软件功能产生一定的变化。 这时,测试用例库中的某些测试用例可能会失效,必须对测试用例库进行维护。 很多时候需要添加新的用例来测试新的功能或特性。

CAE测试用例的维护是一个不间断的过程。 软件开发的基线通常可以作为基准。 维护的主要内容包括以下几个方面。 (1)删除过时的测试用例。 (2)改进非受控测试用例。 (3)删除多余的测试用例。 (4) 添加新的测试用例。

维护测试用例库是一项大规模、长期的工作,需要开发人员投入大量资源。 因此,目前还没有成熟的CAE软件公司共享其测试库,而是将其测试用例库开源以贡献给仿真社区。

测试报告生成系统

测试结果需要易于用户浏览。 CAE软件的自动化测试用例将随着时间和功能的增加而不断增长。 数千或数万个测试用例也是常态。 自动生成测试报告,并突出显示报错的测试用例,并统计总体测试通过率。 测试结果以XML或JSON等轻量级文件的形式输出,以便在客户端显示。 它们还可以部署在云端,方便团队和互联网用户浏览,了解当前软件版本的测试结果。 测试结果文件可以包含时间标签、机器名称标签等信息,方便用户访问过去的历史测试数据。

软件自动开发环境_自动化软件开发平台_自动化软件开发

回归测试运行周期

尽管自动化测试非常高效并且测试用例编写简洁,但运行自动化回归测试是有成本的。 随着测试用例数量的增加,每个测试需要更多的时间和资源。 运行的测试越多,成本就越高。 当一个产品即将发布,或者增加一个主要功能,或者进行大范围的修改时,都需要集中运行自动化测试。 有经验的程序员会对自己提交的代码修改有更清晰的认识。 您可以决定是运行所有测试用例、仅运行快速测试的子集,还是不运行回归测试。

自动化测试系统

经过多年的研发,大型通用工程仿真CAE软件已经趋于稳定。 近期,自动化测试系统已向*终用户开放,所有开源测试用例均已开源。 用户不仅可以在本地运行经过验证的测试用例,还可以快速创建自己的测试用例。 目前选择XML作为主要的测试文件格式。 自动化测试功能也支持Linux版本。

运行自动化测试非常简单。 从菜单栏中选择工具→播放测试...。 按照提示选择要运行的测试用例。 测试用例支持多种选择。 单击“运行”即可执行自动化测试,测试过程中无需人工干预。

创建测试用例的方法类似。 从菜单栏选择Tools→Test...,根据提示选择保存的测试文件名,然后通过GUI操作记录测试用例。

软件自动开发环境_自动化软件开发_自动化软件开发平台

录制完成后,您可以使用文本编辑器打开XML测试文件,检查测试步骤,并手动调整和简化测试步骤。

所有测试用例均已开源并长期维护,为模拟社区做出贡献。

总结

从技术的本质来看,自动化测试系统是软件宏命令和数据持久化的结合。 然而,要开发一套工程仿真CAE软件的自动回归系统,不仅要了解可视化框架的底层逻辑,还要对各种物理工程分析案例有清晰的了解,才能创建和维护一个完整的系统。

基于多年专注CAE软件研发,直接向用户提供自动化测试系统。 用户可以在本地运行各种测试或创建自己感兴趣的测试用例。 对于求解器或网格划分器的开发人员来说,他们可以使用它来构建自动化测试系统,这大大减少了开发自己的测试系统所需的时间和资源。 它对整个工程模拟界产生了积极的影响。 目前已无缝支持一些知名的开源求解器,如、、SU2等,更多的开源求解器也在持续支持中。

本文重点介绍 CAE 软件的自动化回归测试。 所讨论的方法和实践也可以应用于其他大型软件。

炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等

相关案例查看更多