人工智能在软件测试上的应用与挑战.docx

人工智能在软件测试上的应用与挑战.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

??

?

??

人工智能在软件测试上的应用与挑战

?

??

?

?

?

?

?

?

?

???

?

?

?

?

?

任子恒李昕昕龚勋

摘要:针对人工智能的应用于特点做出分析。认为人工智能有着非常强大的功能以及良好的发展趋势,并在此基础上展开对人工智能在软件测试领域应用的讨论。主要涉及了人工智能在软件测试上应用的方法以及特点与优点,并探讨了目前人工智能在软件测试领域所存在的问题与挑战。预测人工智能在软件测试应用上的发展趋势。

关键词:人工智能;游戏测试;性能测试;兼[本文来自于wWW.zz-news.COM]容性测试;专家系统

中图分类号:TP18文献标识码:A文章编号:1009-3044(2018)29-0218-02

1引言

人工智能作为当下最热门的新型前沿性技术科学,被广泛的应用于各个行业。从众所周知的AlphaGo,到我们的各种移动智能终端,人工智能的应用无处不在。软件测试作为软件工程质量保证的一个重要环节,从最初的手工测试到自动化测试再到云测试,其智能化的脚步也越来越快。本文将针对人工智能在软件测试领域的应用现状、前景以及面临的挑战进行分析,并给出合理的建议。

2人工智能与软件测试

2.1人工智能简述

人工智能是计算机学科的一个分支,是一门正在发展中的综合性的前沿学科,它是研究人类智能活动的规律,并用于模拟、延伸和扩展人类智能的一门新的技术科学,是在计算机、控制论、信息论、数学、心理学等多种学科相互综合、相互渗透的基础上发展起来的一门新兴边缘学科[1]。目前,人工智能被实际应用于计算、设计、医疗、安全等多个领域,可以出色的完成各种复杂的单一任务。上述应用我们称之为弱人工智能。

2.2软件测试简述

软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终审查,是软件质量保证的关键步骤。如果给软件测试下定义,可以这样讲:软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据和预期的结果),并利用这些测试用例去运行程序,以发现错误的过程[2,3]。通过需求分析与系统的功能实现,由人或者机器来编写出特定的测试用例,以此为输入数据,执行被测程序检查的过程。传统软件测试通常是由人来执行测试用例的编写、执行、分析等各项工作,称之为手工测试。随着技术的发展,越来越多的自动化测试工具可以更好的辅助人来完成上述工作。因此我们将利用自动化测试工具进行测试的过程称之为自动化测试。但是现阶段的自动化测试仍停留在辅助测试阶段,无法独立的完成某一完整的测试流程。因此我们希望引入人工智能帮助软件测试更好的实现自动化、智能化。

2.3人工智能在软件测试中的运用

在软件测试整个过程中,测试用例起着决定性的作用。在以是为了发现错误进而执行程序的软件测试中,测试用例的编写是能否发现程序漏洞或错误的关键。在以各种自动化测试工具蓬勃发展的今天,除了简单的数据测试能够靠电脑自动生成来完成,复杂测试用例的编写仍旧由人作为主导。而自动化测试工具只能实现自动的将人所编写的测试用例输出来执行程序并得出执行结果。作为人工智能在软件测试中的应用,其目的便是代替人来编写出更多的有效的测试用例,从而发现程序中的错误。基于此,我们希望通过运用机器学习的理论,由测试人员提供大量的输入和输出数据来训练AI,最终由AI学会根据特定需求去自动生成测试用例、执行测试,并对测试结果进行分析。这将大大减少人工测试工作量,大幅提高工作效率。

目前人工智能已经在软件测试的某些特定领域有了实际应用,比如游戏测试、性能能测试、兼容性测试等。

2.3.1人工智能在游戏领域的应用

人工智能在游戏测试中,通常用于各种游戏分支情况的测试以及游戏数据的收集。例如,通过AI去创建不同的游戏角色,执行不同的分支操作,来检测游戏功能的正确性。这样不仅可以大大减少测试人员对于游戏测试大量而重复的工作量,而且能够做到在同一时间建立多个AI来进行多个角色的活动,从而能够实现多人游戏的游戏测试,大大节约了成本。根据深度学习的理论,应用了AI的游戏测试还可以利用AI在测试过程中不断收集数据反复学习、更新,达到自我修正的目的。最终可以使游戏具有更完善的功能和更稳定的效果。

2.3.2人工智能在大型工程中的应用

除了常规的软件测试以外,人工智能还可以应用于大型工程项目的测试中。通过计算机庞大的计算能力以及精确性的特质,能够大大的提高工程质量,从而减少以人为主导所编写的测试用例的失误与不精确性。例如在航天工程中,运用专家系统,来使AI具备大量的航天领域专家水平的知识与经验,从而使AI模拟航空专家来进行测试用例的编写。避免因为测试人员专业知识不熟练所導致的各种问题。

2.3.3人工智能在性能测试方面的应

文档评论(0)

180****0576 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档