APP下载

基于人工智能软件测试的探索

2021-04-04

信息记录材料 2021年10期
关键词:测试用例软件测试测试方法

周 璨

(长沙商贸旅游职业技术学院 湖南 长沙 410006)

1 引言

作为近年来新兴的计算机科学技术,人工智能技术开始在通信、交通、教育、安防监控以及医疗等多个行业领域得到应用,可以在识别、感知、设计、学习等方面,模仿和执行人类智能行为。软件的研发过程中,测试是十分重要的环节,在软件运行程序中寻找问题、发现错误,并予以修改。在人工智能软件测试中,应该改变原有的测试方法和评价标准,而需要采取自动化、智能化的测试方法,高效、准确地测试运行程序。

2 人工智能软件功能和运行特点

随着计算机科学技术的发展和进步,人工智能技术开始得到广泛应用。人工智能技术的研究、开发,均是围绕着模拟人类智能进行,并持续进行延伸和扩展。人工智能技术日渐成熟,各项功能也在逐步完善,通过模拟人类的意识、思维,运用生物学、物理学、数学、心理学等多方面的知识,进行识别、感知、设计、学习,在自然语言处理、图像处理、数据挖掘中发挥其优势作用,可以达到或超过人类的智能水平。人工智能软件主要具有快速计算与储存、语音与图像识别、自主学习等功能[1]。

人工智能软件的安全、稳定运行,需要以功能完善的硬件作为支持。在此基础上,追求更高的性能效率。应用人工智能软件,可以更加高效地进行信息的采集、传输、存储及处理,充分利用相关数据,发挥其自适应、自学习和自协调的能力,分析用户的行为规律,结合实际需求,进行服务内容的选择。人工智能软件具有模块化特性,相关操作较为简单、易行,方便用户掌握。人工智能软件测试工作的开展,需要对人工智能软件功能和运行特点进行深入的分析、研究,并采取科学的测试策略。

3 人工智能软件测试的策划、设计、执行

在人工智能软件测试的过程中,需要面对多元化的运行场景,并考虑到多种网络运行状态需要(3G、4G、5G等)。人工智能软件的功能和性能的持续更新,导致测试量的增加,还要对测试方法进行改进和完善。为了提高人工智能软件测试的效率和质量,应该结合人工智能软件的功能和运行特点,制定科学的测试方案,做好策划、设计、执行等各项工作[2]。

3.1 策划

人工智能软件测试的过程中,需要做好策划工作,制订测试计划。该过程中,应该结合被检测人工智能软件的实际情况进行分析,明确测试目标,确定测试内容。在测试需求分析的过程中,需要具体了解开发技术要求,参考需求规格说明书。人工智能软件的测试过程中,需要明确其主要测试范围。基本功能测试包括过程接口、人机接口、外部设备接口等方面,同时涉及数据处理、通信等方面。在数据处理方面,测试范围包括运算、分析控制、实施趋势等。在每个测试项的测试中,选择正确的测试方法。

在测试过程中,应用黑盒测试方法,不考虑程序内部情况(内部结构和内部特性),对于输入数据、输出数据、系统功能进行测试,判断软件的功能需求,侧重于功能遗漏、界面错误、数据库访问错误等问题的检出。白盒测试方法的应用,则是以结构化测试为主,具体了解软件内部逻辑结构,判断软件的运行状态。在此基础上,还应该考虑到环境因素对于人工智能软件工作运行的影响。气候因素引起的温度、湿度变化,会影响到人工智能软件的运行状态。电网电源、通信线路的过电压,也是影响人工智能软件运行状态的主要因素。在进行测试的过程中,实施健壮性测试,或是采用错误恢复测试等方法。另外,测试的资源要求(软硬件设备、环境、人员和技术)、测试风险(技术、人员风险等)、测试活动进度均是策划环节需要考虑的内容[3]。

3.2 设计

根据人工智能软件测试的策划,进行测试设计。将各个测试项分解,分别进行测试用例的设计,同时明确执行顺序,对于每个测试用例进行编号。根据测试输入要求,进行测试数据的设计,并予以验证,对于用例名称、用例标识、测试方法进行具体说明,同时可以了解测试的操作步骤,判断其期望结果。对比分析实际结果与期望结果,评价测试设计的可行性。

3.3 执行

在执行测试计划的过程中,应认真遵循测试要求,详细记录测试过程。测试用例的执行,将执行结果与期望结果进行对比,根据评估准则,判断测试用例是否通过。测试用例未通过测试,说明人工智能软件存在缺陷。根据测试过程的终止情况,对于异常终止的条件进行分析。针对未完成的测试,确认有无未修正的错误,均详细记录。在测试记录中,记录执行日期、执行结果以及测试人员的同时,将异常问题列出,形成清单。分析测试记录,可以具体了解人工智能软件测试的执行情况,便于回归测试的开展。

在人工智能软件测试中,经过策划、设计、执行等工作环节后,形成测试报告,对于测试结果进行详细分析,对于测试充分性做出评价,对于测试环境的影响、问题处理进行描述,并对异常情况进行说明。

4 人工智能在软件测试中的应用

在人工智能软件测试中,应用人工智能测试工具,可以有效降低测试难度,同时能够保障测试结果的准确性,便于及时对软件程序中的错误进行修正。人工智能可以持续进行深度学习,不断更新和完善自身的功能,能够更加高效地处理软件问题,实现化繁为简,有效降低测试难度。利用人工智能,快速进行代码的扫描,从数以万计的代码中找寻差错问题,进而发现软件程序中存在的弊病。人工智能软件的工作运行过程中,由于功能的复杂、多样,需要涉及庞大的数据资料。利用人工智能测试工具,可以有效扩大测试范围,提高测试的覆盖率,同时执行大量的测试用例,高效准确地进行计算。云计算技术的应用,能进一步提升数据统计的准确性。向人工智能机器内输入测试数据,充分发挥人工智能的自主学习能力,进而达到自我提升、自我完善的效果,进而有效提升软件测试能力,可以更加及时、准确地检出软件中存在的问题[4]。

5 基于人工智能的软件测试

软件测试的开展过程中,应该随着人工智能技术的广泛应用,对于原有的测试方法做出调整,并建立新的评价标准,采取自动化、智能化的测试方法,高效、准确地测试运行程序。基于人工智能的软件测试,实现了测试自动化,提升了测试的速度、进度,增加了测试的可扩展性。在降低风险的同时,可以有效提升业务价值,减少资源消耗,创造良好的收益。在游戏测试、工程测试以及性能测试中,人工智能测试工具发挥着十分重要的功能和作用。

5.1 游戏测试

游戏的研发过程中,需要通过测试,寻找程序中存在的缺陷和问题,便于及时进行修改。该过程中,应用人工智能测试工具,可以快速收集游戏数据,并对游戏中的各个角色、各个场景进行分析。在游戏的运行过程中,检测游戏功能。利用人工智能测试工具,针对多个角色、场景,建立测试用例,同步进行测试、分析,保障测试的全面性,提高检测结果的精准度。应用用户数据,人工智能可以对用户的行为进行模拟,可以展现出不同的游戏水平,便于展开大规模测试,充分覆盖测试场景,获得真实、准确的反馈。针对测试过程中发现的漏洞问题,做出相应的修改,进而达到完善游戏功能的目的。在游戏测试的过程中,人工智能可以不断进行自主学习,并实现自我修正,逐步发生进化和升级,进而提高测试功能,为游戏的稳定运行提供良好的保障[5]。

5.2 工程测试

在工程项目管理中,信息管理成为重要的发展趋势。建立信息化管理系统,对于相关数据信息进行储存、分析处理。在工程项目的测试中,应用人工智能技术进行测试,可以进一步提高计算能力,保障计算结果的准确性。以人工智能替代人工,可以有效减少工作中的疏漏与差错。人工智能技术的长期应用,可以不断学习工程建设方面的知识,积累相关经验,持续提高其测试功能,弥补工作中的缺陷,保障测试的精准度。

5.3 性能测试

软件的性能测试中,应用人工智能技术,在交互方面进行直观的分析。而在深层次的分析过程中,测试软件持续运作的稳定性,并关注了解其用户数量,评价其对于各项业务的处理能力。软件的性能状态,会受到硬件条件的限制,与用户的使用情况密切相关。在软件测试中,应用人工智能技术,自动化、智能化地完成检测。通过全方面测试,了解软件程序的内部结构和内部特性,及时发现性能方面的缺陷,做出相应的调整与改进。基于人工智能的软件测试,能够实现性能指标监控、性能调优,同时缩短测试时间,减少软件投入运行后的性能问题,进而有效改善用户的使用体验。

6 结语

综上所述,人工智能软件的应用,应该充分利用其快速计算与储存、语音与图像识别、自主学习等功能,实现智能化的识别、感知、设计、学习,对于多个行业领域的发展均有着积极促进作用。为了保障人工智能软件的稳定运行,对于软件测试进行策划、设计和执行,保障测试结果的准确性,及时发现软件运行中存在的各类问题,便于及时进行修改。在游戏测试、工程测试以及性能测试中,基于人工智能的软件测试发挥着十分重要的功能和作用。

猜你喜欢

测试用例软件测试测试方法
基于泊松对相关的伪随机数发生器的统计测试方法
基于SmartUnit的安全通信系统单元测试用例自动生成
基于OBE的软件测试课程教学改革探索
航天软件测试模型构建与应用
基于云计算的软件自动化测试方法
DLD-100C型雷达测试方法和应用
EXCEL和VBA实现软件测试记录管理
基于混合遗传算法的回归测试用例集最小化研究
软件测试工程化模型及应用研究
对改良的三种最小抑菌浓度测试方法的探讨