- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据驱动脚本示例 关键字驱动脚本实际上是比较复杂的数据驱动技术的逻辑扩展。它将测试数据文件变成测试用例的描述,用一系列关键字指定要执行的任务。 关键字驱动脚本实际上封装了各种基本的操作,每个操作由相应的函数实现,而在开发脚本时,不需要关心这些基础函数,直接使用已定义好的关键字,脚本编写的效率会大大提高,脚本也更易于维护。而且,关键字驱动脚本构成简单,脚本开发按关键字来处理,可以看作是业务逻辑的文字描述,每一个测试人员都能开发脚本。 关键字驱动脚本的数量不随测试用例的数量变化,而仅随软件规模而增加。这种脚本还可以实现跨平台的测试用例共享,只需更改支持脚本即可。 关键字驱动脚本 关键字驱动脚本示例 软件自动化测试技术 软件技术教研室 杨鹏 yangp@ 第3单元 软件自动化测试原理 3.1 代码分析 3.2 GUI对象识别 3.3 DOM对象识别 3.4 捕获和回放 3.5 脚本技术 3.6 自动比较技术 自动化测试的实现方法,对于静态测试和动态测试有很大的不同: 动态测试的自动化实现主要通过特定的程序来模拟软件的操作过程或操作行为,然后对软件所做出的反应或输出结果进行检查或验证。 静态测试的自动化实现是按照代码规范和软件开发的最佳实践建立各种代码规则,然后依据这些规则对代码进行自动扫描,发现和规则不匹配的各种问题。 软件测试自动化实现的原理和方法主要有:直接对代码进行静态和动态分析、测试过程的捕获和回放、测试脚本技术、自动比较技术、虚拟用户技术和测试管理技术等。 软件自动化测试的原理 代码分析类似于高级编译系统,一般是针对不同的高级语言去构造分析工具,在工具中定义类、对象、函数、变量和常量等各个方面的规则。 在分析时,通过对代码进行扫描和解析,找出不符合编码规范的地方,从而给出错误信息和警告信息。 还可以根据某种质量模型评价代码的质量,生成系统的调用关系图,评估代码的复杂度等。 3.1 代码分析 Findbugs是一个静态分析工具,它检查类或JAR文件,将字节码与一组缺陷模式(Java代码规范)进行对比以发现各种可能存在的问题。通过静态分析工具可以在不运行程序的情况下对软件进行测试,更早地发现软件中的缺陷。 安装Findbugs(Findbugs可以独立运行,也可以作为Eclipse的插件) 设置Java环境:安装JDK;配置环境变量 安装Eclipse:下载Eclipse软件包并解压 在Eclipse中安装Findbugs插件 URL:/eclipse 用Findbugs做Java代码的分析 安装成功后,在Eclipse的“窗口”--“首选项”中,展开“Java”后发现Findbugs项,从中可以发现Findbugs定义了很多种检查器(Detector),而且分为不同的模式(pattern)和类型(category):纠错(correctness)、不合理的(dodgy)、不好的实践(bad practice)、安全性(security)、性能(performance)和多线程纠错(multithreaded correctness)等问题。 使用Findbugs: 创建或打开一个Java项目 选择该项目并单击右键,从菜单中执行“Find bugs” 运行后的警告信息会显示在右下区域的Problems视图中 双击某条警告信息会自动定位到编辑器中对应的源代码行 用Findbugs做Java代码的分析(续) 用Findbugs做Java代码的分析(续) 上述例子中没有执行代码,而是通过对代码的逐行扫描来分析代码,找出问题。这种静态测试是通过事先所建立的代码规则、由软件工具来自动执行。代码静态分析的关键是建立各种规则,而这种规则的建立依赖于相应编程语言的语法。 利用这些规则可以找出Java源程序的许多问题,如:没有用到的变量、多余的变量创建操作、空的catch块等。为了提高代码分析的效率,会把Java源代码解析成抽象语法树(Abstract Syntax Tree, AST),由Java符号流(对象)构成树型层次结构(语义层)。对一个规则的检验,就是对相应的AST的一次遍历。 代码分析的实现 举例说明:下面是为一个简单的计算语句而设立的规则。 计算:Times = n*a + 1 规则:Times(plus(Var(“a”), Var(“n”)), Int(“1”)) 它的操作过程可以抽象为 如右图所示的抽象语法树: 代码分析的实现(续) 还可以自定义一些代码规则来供静态分析工具使用。例如,代码复杂度和代码重复率是代码质量关心的主要问题之一。 对于代码复杂度可能是含有过多的条件语句(if, while或f
您可能关注的文档
最近下载
- 2024年10月自考13005软件工程试题及答案.docx VIP
- 三角形内角和教学设计优质课一等奖.pdf VIP
- 英语四六级常见短语及词组固定搭配汇总.pdf VIP
- 2025年自考税收筹划真题答案.docx VIP
- 2024_2025学年广东省广州市黄埔区高一上学期(10月)月考数学试卷【有解析】.pdf VIP
- 2025年中国静脉注射用人免疫球蛋白数据监测研究报告.docx
- 自考树社会学概论真题及答案分析.docx VIP
- 2025-2026学年江苏省无锡市高一上学期10月月考物理模拟试卷含详解.docx VIP
- (高清版)B 3100-1993 国际单位制及其应用.pdf VIP
- 6SE70系列变频器讲解及Drive Monitor调试(内部员工培训).ppt
文档评论(0)