全文可编辑worldreportmarket-2025年AI+研发数字行业市场前景及投资研究报告:大语言模型时代-worldreportmarket.pptVIP

全文可编辑worldreportmarket-2025年AI+研发数字行业市场前景及投资研究报告:大语言模型时代-worldreportmarket.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

1.背景2.痛点目录3.解决思路4.具体实现5.总结与展望CONTENTS

PART01背景

软件正确性至关重要欧空局Ariane5波音737Max坠机海湾战争中爱国者飞弹7.23事故?软件缺陷已经导致很多灾难性后果?保障软件的正确性十分重要?当我们说软件是正确的:程序的行为符合正确性规约(specification)

保障正确性的方法intfoo(inta,intb){returna+b;}1.形式化方法FormalMethod:(a=0b=0)||(a=0b=0)||→correct输入域(a=0b=0a+b=0)||(a=0b=0a+b=0)形式化方法成本很高2.软件测试Testing:foo(0,1)=1;foo(INT_MAX,1)=ERROR;foo(INT_MAX-1,1)=INT_MAX;foo(INT_MAX,INT_MIN)=-1;××→correct××输入域测试是不完备的!

测试质量直接影响到软件质量?核心问题是:我们如何度量测试的好坏??测试质量达标的系统才有一定的可信度?测试集约减?测试排序?我们朴素的愿望:希望测试能发现真实缺陷?但是在发现之前,真实的缺陷对于我们是未知的?“测试可以非常有效地显示bug存在,但却无法证明bug的不存在”?我们可以使用一些指标,间接地度量测试质量?测试覆盖?变异测试:用人造缺陷发现率估计真实缺陷发现率

变异测试概览程序生成变异体(mutant):变异算子(mutationoperator)每个变异体是原始程序的小型文法改动变异体

变异测试概览程序测试集生成变异体(mutant):变异算子(mutationoperator)被测试集杀死的变异的比例:变异分数(Mutationscore)变异体执行测试

变异测试在软件测试中的发展?变异测试自1971年被DeMillo和Hamlet提出以来,是软件测试中的重要方法?修改位置:从一阶变异(firstorder)到高阶(higher-order),支持修改多处?在单元测试中:?面向高级语言源码:C、Java、Python、JS…?面向中间表示:Javabytecode,LLVM-IR?从桌面应用到Android、MPI、智能合约程序等?从单元测试扩展到其他测试阶段:?集成测试?设计阶段(例如在基于模型的软件开发过程中针对设计FSM的变异)

从变异测试到变异分析?基于变异的缺陷自动定位(mutation-basedfaultlocalization)是变异测试的衍生技术?缺陷自动定位:给定测试集(至少有一个未通过测试)和程序,返回程序中的语句出错可疑度分数。?传统定位方法:基于测试覆盖信息对语句排序(spectrum-basedfaultlocalization)?基于变异的方法:通过观察变异对测试结果的改变计算可疑度?若一个变异使失败测试通过了,那更可能是变异了出错语句

从变异测试到变异分析变异测试基于变异的缺陷定位程序自动修复软件产品线测试变异分析

工具和标准程序集?变异测试?C语言:?Proteum(108mutationoperators)?Milu(Higher-order)?WinMut(IR-based)?Java语言:?MuJava?Major[ByReneJust]?JavaLanch(IR-based)[ByZeller]?PITest(Commercialtool)?标准测试集?Software-artifactInfrastructureRepository(somehowoutdated)?Defects4J(Java)?ManyBugs(C)

PART02痛点

挑战1:生成高质量的变异?现有方法生成变异主要有两类?基于规则的传统方法?PIT、Major、JavaLanche、AccMut?生成变异过于简单,不考虑代码上下文,文本上与真实bug差别很大?基于学习的方法?训练模型,学习真实Bug的代码变换模式?DeepMutation[ICSME-19]、LEAM[ASE-22]?训练数据集有限,生成大量错误变异

挑战2:可扩展性较低?阻碍变异分析走向工业实践的是可扩展性(Scalability)较低?假如有M个变异,N个测试?变异分析的计算复杂度:O(M)+O(M×N)??=∑?+∑?+∑?∈?∑??∈????????,??∈?

文档评论(0)

anhuixingxing + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档