当前位置: 首页 > news >正文

高县住房和城乡建设部网站河北网站推广

高县住房和城乡建设部网站,河北网站推广,做外贸网站要花多少钱,wordpress显示时间插件下载我们都知道全局探索性测试的漫游测试法#xff0c;也知道局部探索性测试可以从用户输入、状态、代码路径、用户数据和执行环境测试着手点。 那么#xff0c;如果我们能够获取开发代码#xff0c;我们怎么从代码入手#xff0c;进行具体的局部探索性测试呢#xff1f; 简单…我们都知道全局探索性测试的漫游测试法也知道局部探索性测试可以从用户输入、状态、代码路径、用户数据和执行环境测试着手点。 那么如果我们能够获取开发代码我们怎么从代码入手进行具体的局部探索性测试呢 简单回顾 在进行具体的案例讲解前我们先简单回顾下局部探索性测试的用户输入、状态、代码路径、用户数据和执行环境测试方法。 一张图说明一切。 图1局部探索性测试测试要点总结 具体案例讲解 本文从代码层入手分享如何进行局部探索性测试。值得注意的是接下来的叙述没有优先级和重要性排序单纯是某些测试要点的启发。 比对代码改动寻找测试要点 随着功能的改进或者故障的修复总会伴随代码的改动。因此我们可以从代码改动点出发寻找测试要点。 在此需要大家问自己几个问题开发人员为什么要这样改这样改有什么意义 图2 elasticsearch开源代码提交记录修改远程集群设置的authorization为credentials 由上图2所示为elasticsearch开源代码某次提交记录修改远程集群设置的authorization为credentials。如果我们获取到这样一份代码我们要怎么寻找测试要点呢 对于代码修改的原因和意义开发人员在代码提交记录中已经声明credentials名字更精确。而且从提交记录中我们还可以看到有许多地方涉及的authorization被修改。因此我们很容易就能想到一个测试要点authorization名字修改是否覆盖完全 我们再来看一个样例。如下图所示为elasticsearch的PreviewTransformAction.java某次代码变动。 从提交记录说明可以看到变动原因目前我们按顺序序列化转换预览文档。 然而当我们在另一端读取它们时我们将其反序列化为散列映射失去顺序。因此排序时序列化毫无意义。但是在集成测试时writeMapWithConsistentOrder的使用总使得集成测试失败因此将其改为无功能影响的writeGenericMap。 由此我们一眼可以得出最重要的一个信息功能不影响。 所以对此次变更我们应首要进行功能回归测试确保已有功能正常。那还有没有其它测试要点呢试试writeGenericMap是否真的是无顺序转换 图3 elasticsearch开源代码提交记录修改writeMapWithConsistentOrder方法调用为为writeGenericMap调用 注意覆盖代码中的分支 开发代码中经常会有if…else、switch…case等分支可是当我们从外部进行场景测试或功能测试时很少能覆盖完全代码中的分支从而可能忽视某些故障。因此可以从代码层面出发寻找或构造能够触发代码某个分支的场景。 图4 elasticsearch的ElasticsearchException.java某部分代码1 如上图4所示为ElasticsearchException.java某部分代码。该代码使用了if…else分支结构面对这样的代码我们是不是首先就会想如何进入不同分支进入不同分支后会有什么样的效果 如上图所示试试elasticsearchException不为null呢再试试id!127呢更或者试试传入的id为null呢 图5 elasticsearch的ElasticsearchException.java某部分代码2 如图5所示switch…case分支想想测试场景中覆盖完了所有case分支吗如果没有如何构造场景走到这些分支尤其是default分支 3)异常都捕获到没 我们在测试过程中经常由于环境或其他原因的影响造成一些异常的产生。而针对异常的捕获往往是代码中预先定义好的但如果异常不在期望中呢是否能够正常打印异常和捕获异常 图6 elasticsearch的ExceptionsHelper。。java某部分代码 如图6所示是try…catch…finally结构但没有catch分支。假如formatStackTrace功能异常呢能够捕获异常吗试试。又或者ExceptionsHelper。maybeError(throwable)不存在呢会是什么样的效果试试。 4)不同的return返回值尝试过没 如题所述试试不同的返回值对调用者的影响。看看是否调用方都能够正确处理或响应。如下图7所示试试不同case分支下的返回值尤其是不常见用的返回值如PARTIAL、INCOMPATIBLE等。 图7elasticsearch的SnapshotState。java某部分代码 5)如果变量不在定义的集合范围内呢 代码中我们难免会定义一些列表或集合会声明列表或集合元素的类型。那么如果某个变量不在定义的类型范围内呢要使用列表或集合的功能处理这个变量会怎么样 图8 elasticsearch的SnapshotsInProgress。java某部分代码 如上图8所示定义返回类型为ListString如果返回值的类型不是list或者列表中的值不是String呢想想。 6)正则表达式呢 正则表达式是很多测试人员头疼的一点因为人工解析不太顺畅。在此可以给大家推荐一个很好的解析器网址https://regexper.com/#%5Ba-zA-Z_0-9%5D%7B3%2C%7D。如下图所示将正则表达式输入就可以解析。 图9 regexper。com正则表达式解析网站 假如针对[a-zA-Z_0-9]{3}这样的正则表达式试试输入变量为345呢会有什么样的效果 7)代码中有没有写死的变量 比如常见的引用ip、port等是否被固定了比如有没有用到sleep被写死的变量会导致代码更改时容易忽略而产生异常。而sleep 10s这样的写法会导致性能下降。试试有没有这样的问题 8)每一条路径走完没有 在这里可以给大家推荐一个好用的工具visustinwww.aivosto.com可以解析代码路径可视化输出。支持javajsppython等多种语言。 图10 visustin软件解析代码路径样例图 如上图所示在visustin的帮助下我们可以方便地看出每条路径。试试遍历所有路径 3.总结 探索性测试的核心在于启发性思维。本文结合具体样例简单讲述了如何从代码层面入手开始局部探索性测试。并简单介绍了两个有用的工具regexper.com网站和visustin软件它们可以帮助我们解析正则表达式和可视化代码路径。工欲善其事必先利其器希望这两个软件也能帮助到你。 探索性测试是一门值得研究和探讨的课题尤其是对于测试人员来说对于专业能力的提升和个人职业的发展都有帮助。希望能有更多的同行加入探讨和研究。 最后 可以到我的个人号atstudy-js可以免费领取一份10G软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享其中包括了有基础知识、Linux必备、Mysql数据库、抓包工具、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试持续集成、测试架构开发测试框架、性能测试等。 这些测试资料对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你
http://www.hkea.cn/news/14594167/

相关文章:

  • 推荐上海网站建设网站首页几天做完
  • 企业网站总结深圳做网站价比高的公司性
  • 自建房设计网站推荐东莞服务行业推广软件
  • 怎么用自己的电脑做网站数据分析师是干嘛的
  • 为什么招聘网站做不大网图素材库
  • 公司网站的宣传栏怎么做网站建设先进部门评选标准
  • 12306网站制作上海优化排名网站
  • 做摄影网站的目的是什么意思怎么向百度提交网站
  • 建设网站需要api吗深圳东门街道办事处电话
  • 上市公司网站设计wordpress4.9漏洞利用
  • 教育局网站建设管理工作意见WordPress迁移网站打不开
  • 电脑网站拦截怎么解除新密做网站优化
  • 一元夺宝网站建设费用嵌入式软件培训
  • 商业网站建设与运营专业集团门户网站建设服务商
  • 网站建设推广工资广告机自建站模板
  • 电子书网站建设app网站开发报价
  • 食品网站app建设方案东昌府网站建设公司
  • 织梦做手机网站wordpress标题图标
  • 如何查询到某网站开发商在线网站你们会回来感谢我的
  • 哪些网站可以做外链吴江市中云建设监理有限公司网站
  • 网站机房建设解决方案南宁百度seo放心选择
  • 五力合一营销型网站建设系统黄山风景区
  • 论述网站建设引言国际网站卖东西怎么做
  • 网站备案号申请流程wordpress快速扒站
  • 安徽湖滨建设集团网站职业培训学校加盟
  • 网站改版 程序变了 原来的文章内容链接地址 打不开怎么办支持asp的免费空间 适合钓鱼网站
  • 南昌seo建站网易企业邮箱入口 官网
  • 怎样建设网站呢网络设置ip地址
  • 医院门户网站开发动漫设计制作专业
  • 闸北区网站制作我做夫人那些年网站登录