SlideShare a Scribd company logo
1 of 38
智能化测试前沿与实践
谢涛(北京大学讲席教授)
www.eegroup.org.cn
讲师简介
谢涛
北京大学讲席教授
谢涛,高可信软件技术教育部重点实验室(北京大学)副主任,北京大学
新工科建设委员会副秘书长。当选欧洲科学院外籍院士、国际计算机学会
(ACM)会士、电气电子工程师学会(IEEE)会士、美国科学促进会
(AAAS)会士、中国计算机学会(CCF)会士。
www.eegroup.org.cn
3
智能时代
4
AI可以为软件工程做什么?作为软件工程师,我们如何设计和构
建更好的AI系统?
随着AI继续颠覆从农业到制造业的许多领域,探索AI与软件工程
之间的重要联系变得非常重要。我们将对此在四个主要方面研究
AI:
1. 创建AI软件(我们如何设计,构建,维护,部署,测试和验证
AI软件?)
2. 人工智能在软件工程中的应用(人工智能如何帮助软件工程师
更好地完成其工作并提高实践水平?)
3. 已经被采用的AI和软件工程(到目前为止,应用如何将AI和
软件工程融合在一起?)
4. AI格局及其对软件工程的影响(AI技术投资,伦理,数据收集
和安全性等相关主题如何影响软件开发人员的工作?)
https://ieeexplore.ieee.org/xpl/tocresult.jsp?isnumber=9121610
www.eegroup.org.cn
人工智能 软件工程
智能化软件工程
智能软件工程
Xie. Intelligent Software Engineering: Synergy between AI and Software Engineering. SETTA 2018, Keynote Paper.
人工智能  软件工程
www.eegroup.org.cn
人工智能辅助代码自动生成会革程序员的命吗?
https://techcrunch.com/2022/06/23/amazon-launches-codewhisperer-its-ai-pair-programming-tool/
https://techcrunch.com/2022/06/21/copilot-githubs-ai-powered-programming-assistant-is-now-generally-available/
www.eegroup.org.cn
人工智能辅助软件测试会革测试人员的命吗?
http://www.diffblue.com/
Oxford University spin-off,
Daniel Kroening et al.
Java测试数据生成
Technical University Munich spin-off,
Benedikt Hauptmann et al.
基于需求的测试工具
https://www.qualicen.de/
www.eegroup.org.cn
目录
1. 智能化测试理念
2. 智能化测试实践实例
3. 智能化测试前沿实例
4. 智能化测试展望
www.eegroup.org.cn
目录
1. 智能化测试理念
2. 智能化测试实践实例
3. 智能化测试前沿实例
4. 智能化测试展望
www.eegroup.org.cn
智能化测试关键要素
• WHAT TO EMPOWER:被赋能的测试任务
• WHAT TO PROVIDE:人要提供什么?什么形式?
• HOW MUCH: 被自动化的程度
测试预言生成
测试数据生成
测试用例执行 ……
www.eegroup.org.cn
1. WHAT:任务目标
2. HOW:任务步骤
形式:图形界面交互 vs.自然语言 vs. 形式化语言
人要提供什么?什么形式?
www.eegroup.org.cn
Bixby拥有理解语境的能力,可以让用户持续地完成操作。具备Bixby功
能的应用将具备上下文理解能力,能够更准确地了解用户想要做什么,
并且还能在信息不完全或者语句顺序不对的情况下,理解和执行用户的
语音命令。Bixby可以理解不完整或跟预设不完全一致的指令,让交互更
自然和容易。
https://baike.baidu.com/item/Bixby/20495632
例子:WHAT + 自然语言形式
www.eegroup.org.cn
14
自动驾驶级别 自动化级别
L1 辅助测试
辅助驾驶
L2 部分自动测试
部分自动驾驶
L3 有条件自动驾驶 受条件制约的自动测试
L4 高度自动驾驶 高度自动测试
L5 完全自动驾驶 完全自动测试
被自动化的程度
www.eegroup.org.cn
目录
1. 智能化测试理念
2. 智能化测试实践实例
3. 智能化测试前沿实例
4. 智能化测试展望
www.eegroup.org.cn
1.通过链接启动应用程序
http://godel.in.ibm.com:8080/onlinebookstore/Default.jsp
2.输入所需的书籍搜索名称为“mysql” 在“标题”编辑字段中,然后通
过下拉列表选择“全部”作为“类别” ,然后单击“搜索” 按键
3.从显示出来所有搜索结果的列表中选择一个标题 ,然后在书的图标或书
名上点击
4.输入登录名“ guest”和密码“ guest”,然后单击登录
5.输入数量“ 1”,然后单击“添加到购物车”按钮
自动化“测试自动化”
翻译
自然语言
人工测试
用例
自动测试
脚本
自动化“测试自动化”
www.eegroup.org.cn
1.通过链接启动应用程序
http://godel.in.ibm.com:8080/onlinebookstore/Default.jsp
2.输入所需的书籍搜索名称为“mysql” 在“标题”编辑字段中,然后通
过下拉列表选择“全部”作为“类别” ,然后单击“搜索” 按键
3.从显示出来所有搜索结果的列表中选择一个标题 ,然后在书的图标或书
名上点击
4.输入登录名“ guest”和密码“ guest”,然后单击登录
5.输入数量“ 1”,然后单击“添加到购物车”按钮
自动化“测试自动化”
翻译
自然语言
人工测试
用例
自动测试
脚本
自动化“测试自动化”
www.eegroup.org.cn
Li et al. ClusteringTest Steps in Natural LanguageToward AutomatingTestAutomation. ESEC/FSE’20 Industry.
测试步骤 预处理
Word Embedding训
练 距离度量 聚类 后期细化
自然语言测试步骤的聚类
www.eegroup.org.cn
http://airtest.netease.com/
基于图像识别的自动化测试框架,理念
来自于MIT的Sikuli
(https://github.com/RaiMan/SikuliX1)
开源:https://github.com/AirtestProject/Airtest
网易Airtest IDE: 跨平台的UI自动化编辑器
www.eegroup.org.cn
在阿里包括淘宝、千牛等10余个大型产业移动应用上落地部署,并通过
软件绿色联盟向全行业提供测试服务,推动测试效能提升3倍以上。
冉德智等,Automated Visual Testing for Mobile Apps in an Industrial Setting, ICSE SEIP 2022
视觉化移动应用测试示例:MonkeyBot
www.eegroup.org.cn
•通过IoT(如机械手、摄像头)等外部设
备模拟真实用户操作
•实现以外部真实用户视角对被测系统进行
端到端的黑盒自动化测试
•以“真实”模拟为核心测试目的
阿里巴巴淘系技术质量
视觉化移动应用测试MonkeyBot架构
冉德智等,Automated Visual Testing for Mobile Apps in an Industrial Setting, ICSE SEIP 2022
www.eegroup.org.cn
控件识别 OCR定位文字 智能去重 智能验证
视觉化移动应用测试MonkeyBot: 测试预言
www.eegroup.org.cn
人的认知:
编译器测试输入程序的结构特征=>触发故障概率差异
•基于学习的编译器加速技术 [陈俊洁等 ICSE 17]
•基于历史的编译器测试生成 [陈俊洁等 ASE 19]
在华为公司应用技术的第一周就发现了11 个故障,而对比技术CSmith仅
能发现其中的 3 个故障
数据驱动的编译器测试
www.eegroup.org.cn
2015年起Pex发布为微软Visual Studio企业版IntelliTest
Tillmann, de Halleux, Xie. Transferring an Automated Test Generation Tool to Practice: From Pex to Fakes and Code Digger. ASE 2013.
Xie, Tillmann, de Halleux, Schulte. Fitness-Guided Path Exploration in Dynamic Symbolic Execution. DSN 2009.
支持用.NET语言写的被测代码
Fitnex: 受遗传算法的启发来指导路径搜索
智能化测试数据生成IntelliTest
www.eegroup.org.cn
http://www.agitar.com/solutions/products/software_agitation.html
智能化测试预言推荐AgitarOne
www.eegroup.org.cn
目录
1. 智能化测试理念
2. 智能化测试实践实例
3. 智能化测试前沿实例
4. 智能化测试展望
www.eegroup.org.cn
单元测试用例示例:断言
www.eegroup.org.cn
 输入: 被测方法+不包含断言的测试方法
 输出: 断言
ATLAS的输出
ATLAS的输入
ATLAS:基于深度学习推荐断言
Watson et al. On Learning Meaningful Assert Statements for Unit Test Cases. ICSE 2020
www.eegroup.org.cn
 ATLAS所生成的断言不可解释性
 不够理想的断言生成有效度(31.37%准确度)
ATLAS的局限性
www.eegroup.org.cn
基于信息检索的断言检索 被检索到断言的适配
于浩等, Automated Assertion Generation via Information Retrieval and Its Integration with Deep Learning. ICSE 2022
基于深度学习+信息检索的新方法
和深度学习的集成
www.eegroup.org.cn
不正确(但可适配)的断言例子
需被推荐断言的测试方法 被检索到的断言
基于信息检索的断言检索
于浩等, Automated Assertion Generation via Information Retrieval and Its Integration with Deep Learning. ICSE 2022
www.eegroup.org.cn
 决策被检索到的断言是否应该被修改
 决策哪个地方 (被调方法,变量,或常量) 应该被修改
 决策修改成什么新的值
被检索到断言的适配
于浩等, Automated Assertion Generation via Information Retrieval and Its Integration with Deep Learning. ICSE 2022
需被推荐断言的测试方法 被检索到的断言
不正确(但可适配)的断言例子
www.eegroup.org.cn
目录
1. 智能化测试理念
2. 智能化测试实践实例
3. 智能化测试前沿实例
4. 智能化测试展望
www.eegroup.org.cn
• 从其它做过同样事情那学
• 我们之前研究:挖掘API使用方法序列来测试API
[ESEC/FSE’09: MSeqGen]
• Visser et al. Green: Reducing, reusing and recycling constraints in program analysis. [FSE’12]
• 从其它做过类似事情那学
• Jia et al. Enhancing reuse of constraint solutions to improve symbolic execution. [ISSTA’15]
• Aquino et al. Heuristically Matching Solution Spaces of Arithmetic Formulas to Efficiently Reuse
Solutions. [ICSE’17]
工具持续自学习能力:数据驱动
www.eegroup.org.cn
35
独立下载量超过 30 万人,覆盖了 130 多个国家
和地区,是 JetBrains 插件市场中评分最高的智
能补全插件。
https://aixcoder.com
[李戈等, NeurIPS 21, ASE 20, NeurIPS 19, AAAI 16等]
aiXcoder智能编程助手
www.eegroup.org.cn
GPT-3 can program?
新趋势: 基于大规模预训练模型的代码自动生成
www.eegroup.org.cn
37
https://aixcoder.com
aiXcoder最新进展
麦思博(msup)有限公司是一家面向技术型企业的培训咨询机构,携手2000余位中外
客座导师,服务于技术团队的能力提升、软件工程效能和产品创新迭代,超过3000
余家企业续约学习,是科技领域占有率第1的客座导师品牌,msup以整合全球领先
经验实践为己任,为中国产业快速发展提供智库。

More Related Content

Similar to ee2022-ist-xietao.pptx

第一名 1st Bocoiops
第一名 1st Bocoiops第一名 1st Bocoiops
第一名 1st BocoiopsLeo Zhou
 
無標記擴增實境實驗平台建置與追蹤技術驗證
無標記擴增實境實驗平台建置與追蹤技術驗證無標記擴增實境實驗平台建置與追蹤技術驗證
無標記擴增實境實驗平台建置與追蹤技術驗證Tehuan Chung
 
4 cite space中节点选择的新方法-g-index
4 cite space中节点选择的新方法-g-index4 cite space中节点选择的新方法-g-index
4 cite space中节点选择的新方法-g-indexcueb
 
六合彩,香港六合彩
六合彩,香港六合彩六合彩,香港六合彩
六合彩,香港六合彩fqcijk
 
香港六合彩 » SlideShare
香港六合彩 » SlideShare香港六合彩 » SlideShare
香港六合彩 » SlideSharejcruicbc
 
六合彩 » SlideShare
六合彩 » SlideShare六合彩 » SlideShare
六合彩 » SlideSharetehjnxjl
 
六合彩,香港六合彩
六合彩,香港六合彩六合彩,香港六合彩
六合彩,香港六合彩kubkub
 
香港六合彩-六合彩 » SlideShare
香港六合彩-六合彩 » SlideShare香港六合彩-六合彩 » SlideShare
香港六合彩-六合彩 » SlideSharehjoehdju
 
2 cite space对网络结构变异分析
2 cite space对网络结构变异分析2 cite space对网络结构变异分析
2 cite space对网络结构变异分析cueb
 
AI智慧服務推動經驗分享
AI智慧服務推動經驗分享AI智慧服務推動經驗分享
AI智慧服務推動經驗分享Albert Y. C. Chen
 
3 bib excel对cnki的转换和分析
3 bib excel对cnki的转换和分析3 bib excel对cnki的转换和分析
3 bib excel对cnki的转换和分析cueb
 
網頁爬蟲入門 Python web crawler at 淡江大學 20170930
網頁爬蟲入門 Python web crawler at 淡江大學 20170930網頁爬蟲入門 Python web crawler at 淡江大學 20170930
網頁爬蟲入門 Python web crawler at 淡江大學 20170930Tim Hong
 
10 dii德温特专利数据的检索
10 dii德温特专利数据的检索10 dii德温特专利数据的检索
10 dii德温特专利数据的检索cueb
 
基于Zookeeper的配置信息存储方案的设计与实现
基于Zookeeper的配置信息存储方案的设计与实现基于Zookeeper的配置信息存储方案的设计与实现
基于Zookeeper的配置信息存储方案的设计与实现billowqiu
 
11 bib excel从标题中提取主题进行共词分析
11 bib excel从标题中提取主题进行共词分析11 bib excel从标题中提取主题进行共词分析
11 bib excel从标题中提取主题进行共词分析cueb
 
實作研究
實作研究實作研究
實作研究jack3802
 

Similar to ee2022-ist-xietao.pptx (20)

第一名 1st Bocoiops
第一名 1st Bocoiops第一名 1st Bocoiops
第一名 1st Bocoiops
 
無標記擴增實境實驗平台建置與追蹤技術驗證
無標記擴增實境實驗平台建置與追蹤技術驗證無標記擴增實境實驗平台建置與追蹤技術驗證
無標記擴增實境實驗平台建置與追蹤技術驗證
 
4 cite space中节点选择的新方法-g-index
4 cite space中节点选择的新方法-g-index4 cite space中节点选择的新方法-g-index
4 cite space中节点选择的新方法-g-index
 
六合彩,香港六合彩
六合彩,香港六合彩六合彩,香港六合彩
六合彩,香港六合彩
 
六合彩
六合彩六合彩
六合彩
 
香港六合彩 » SlideShare
香港六合彩 » SlideShare香港六合彩 » SlideShare
香港六合彩 » SlideShare
 
六合彩 » SlideShare
六合彩 » SlideShare六合彩 » SlideShare
六合彩 » SlideShare
 
六合彩,香港六合彩
六合彩,香港六合彩六合彩,香港六合彩
六合彩,香港六合彩
 
香港六合彩-六合彩 » SlideShare
香港六合彩-六合彩 » SlideShare香港六合彩-六合彩 » SlideShare
香港六合彩-六合彩 » SlideShare
 
2 cite space对网络结构变异分析
2 cite space对网络结构变异分析2 cite space对网络结构变异分析
2 cite space对网络结构变异分析
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
Yangliu
YangliuYangliu
Yangliu
 
AI智慧服務推動經驗分享
AI智慧服務推動經驗分享AI智慧服務推動經驗分享
AI智慧服務推動經驗分享
 
3 bib excel对cnki的转换和分析
3 bib excel对cnki的转换和分析3 bib excel对cnki的转换和分析
3 bib excel对cnki的转换和分析
 
Mccc lab
Mccc labMccc lab
Mccc lab
 
網頁爬蟲入門 Python web crawler at 淡江大學 20170930
網頁爬蟲入門 Python web crawler at 淡江大學 20170930網頁爬蟲入門 Python web crawler at 淡江大學 20170930
網頁爬蟲入門 Python web crawler at 淡江大學 20170930
 
10 dii德温特专利数据的检索
10 dii德温特专利数据的检索10 dii德温特专利数据的检索
10 dii德温特专利数据的检索
 
基于Zookeeper的配置信息存储方案的设计与实现
基于Zookeeper的配置信息存储方案的设计与实现基于Zookeeper的配置信息存储方案的设计与实现
基于Zookeeper的配置信息存储方案的设计与实现
 
11 bib excel从标题中提取主题进行共词分析
11 bib excel从标题中提取主题进行共词分析11 bib excel从标题中提取主题进行共词分析
11 bib excel从标题中提取主题进行共词分析
 
實作研究
實作研究實作研究
實作研究
 

ee2022-ist-xietao.pptx

Editor's Notes

  1. Image source: https://icarus.education/en/blog/MACHINE-LEARNING-IN-EVERYDAY-APPLICATIONS.18/