回归测试

企业级移动应用的测试难点:

家住魔仙堡 提交于 2020-02-10 13:03:09
对很多企业来说,移动端应用的使用比web端的应用使用率更高。但是迭代速度的加快和迭代版本的增多,每发布一个版本,不仅要测试新功能,还要对整个应用进行完整的回归测试,而且每个版本都需要进行测试。时间真的很紧张。 主要存在的是以下几个难点: 移动端的测试效率总是低于web端的测试效率。 难以全面覆盖种类繁多的测试设备。 移动端的测试很难达到web端测试的颗粒度。 移动端测试出现不可预测的场景可能性更大。 移动端网上的测试资料不够系统,不够全面。 个人经验: 移动端的测试效率总是低于web端的测试效率。 移动端的应用使用场景更广泛,不像办公用的电脑,一般固定在某个网络通畅的位置,而移动设备使用场景多种多样:例如地铁,楼道,山区等网络信号较差的地点;应用打开较多,内存不足,cpu占用较高;手机设备的型号,android版本设备兼容问题等;所以要找到一个合适的切入点,将功能测试尽可能的做到速度快,质量高。不得不承认,selenium对web端的测试支持还是最优的,显示等待隐式等待等机制,可以很好的支持。而移动端的测试往往因为电脑与手机设备间的通信延迟,无线链接很不稳定(推荐使用数据线链接)等问题很影响测试效率。 个人经验:对api接口进行二次封装,提高稳定性,设备之间通过数据线链接,保持网络完好。 难以全面覆盖种类繁多的测试设备。 web应用:测试相对简单,一般的只需要测试游览器和版本的区别

软件工程——个人总结

≯℡__Kan透↙ 提交于 2020-02-09 09:08:46
个人总结 一.回想开学初对于软件工程这门课的期望,总结本课程对你带来的提升 1.学习和使用的新软件 Mockplus原型设计软件 Dreamweaver软件 2.学习和使用的新工具 php编译工具 My sql 数据库管理系统 3.学习和掌握的新语言、新平台 学习的新语言: HTML、PHP 掌握的新平台: 微信公众平台、 新浪云 4.统计一下,你在这软件工程实践中,完成了多少行的代码 在本次软件工程的实践中,我完成了800行左右的代码 5.学习和掌握的新方法 在这次软件工程的时间中我掌握了原型界面的设计,使用PHP的后台数据库链接,使用PHP和HTML制作动态网页,软件开发方法及其测试方法。 总结与展望 1.记录自己在软件工程课程上的经验总结 通过这学期的软件工程实践,让我感触颇多。通过实践,我掌握了新的编程语言,新的平台,同时也发现了新浪云是一个很强大的平台。通过团队成员自己之间的相互配合,相互帮助,相互学习,最终我们的项目顺利地完成了,同时团队成员之间的友谊更加深厚了。 2.对于下一届的学弟学妹你有什么建议和告知呢? 学弟学妹们,我们这个项目还有许多需要改进的地方,希望你们能够进一步完善我们的这个项目。同时希望你们有更好的创意和想法来改进这个项目。 3.分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》团队合作的阶段,你们团队经历过么

冒烟测试

与世无争的帅哥 提交于 2020-01-30 21:24:01
1. 核心 冒烟测试就是完成一个新版本的开发后,对该版本最基本的功能进行测试,保证基本的功能和流程能走通。   如果不通过,则打回开发那边重新开发;   如果通过测试,才会进行下一步的测试(功能测试,集成测试,系统测试等等)。 简化:门槛测试,一个开关而不是一个阶段。 目的:版本验证测试BVT(Build Verification Testing)。 时间:开发转测试,历时半至一个小时,很短。 对象:需求覆盖,主功能路径。 优点:节省测试时间,防止build失败。 缺点:覆盖率还是比较低。 操作:对着需求文档把新功能过一遍;把所有流程功能走一遍;用monkey跑个一两个小时;如果有历史用例的话,可以把用例分级,冒烟级、详细级、回归级等等 用例:冒烟测试基本上不需要什么用例,如果有的话,就用详细用例里,覆盖需求文档级别的用例就可以了 冒烟测试 ,是 版本验证测试 ,主要 确认新的版本是否存在致命性bug ,冒烟测试最大的优点在于节约测试的时间成本,减少测试轮数。 回归测试 ,是软件 维护阶段 对软件修改后进行的测试,指修改了旧代码后,重新进行测试以确认修改没有引入 新的错误 或 导致其他代码产生错误 。 2. 定义   维基百科上对冒烟测试的解释:    smoke testing is preliminary testing to reveal simple failures

浅谈软件测试之回归测试

泪湿孤枕 提交于 2020-01-25 18:56:37
回归测试的定义: 回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。 1.回归测试是指重复以前的全部或部分的相同测试。 2.新加入测试的模组,可能对其他模组产生副作用,故须进行某些程度的回归测试。 3.回归测试的重心,以关键性模组为核心。 回归测试的好处: 自动回归测试将大幅降低系统测试、维护升级等阶段的成本。回归测试作为软件生命周期的一个组成部分,在整个软件测试过程中占有很大的工作量比重,软件开发的各个阶段都会进行多次回归测试。 回归测试的存在意义: 在渐进和快速迭代开发中,新版本的连续发布使回归测试进行的更加频繁,而在极端编程方法中,更是要求每天都进行若干次回归测试。因此,通过选择正确的回归测试策略来改进回归测试的效率和有效性是非常有意义的。 回归测试的需求: 对于一个软件开发项目来说,项目的测试组在实施测试的过程中会将所开发的测试用例保存到“测试用例库”中,并对其进行维护和管理。当得到一个软件的基线版本时,用于基线版本测试的所有测试用例就形成了基线测试用例库。在需要进行回归测试的时候,就可以根据所选择的回归测试策略,从基线测试用例库中提取合适的测试用例组成回归测试包,通过运行回归测试包来实现回归测试。保存在基线测试用例库中的测试用例可能是自动测试脚本,也有可能是测试用例的手工实现过程。 测试用例的选择: 对于一个软件开发项目来说

高德APP全链路源码依赖分析工程

徘徊边缘 提交于 2020-01-22 06:04:06
一、背景 高德 App 经过多年的发展,其代码量已达到数百万行级别,支撑了高德地图复杂的业务功能。但与此同时,随着团队的扩张和业务的复杂化,越来越碎片化的代码以及代码之间复杂的依赖关系带来诸多维护性问题,较为突出的问题包括: 不敢轻易修改或下线对外暴露的接口或组件,因为不知道有什么地方对自己有依赖、会受到影响,于是代码变得臃肿,包大小也变得越来越大; 模块在没有变动的情况下,发布到新版本的客户端时,需要全量回归测试整个功能,因为不知道所依赖的模块是否有变动; 难以判断 Native 从业务实现转变为底层支撑的趋势是否合理,治理是否有效; 这些问题已经达到了我们必须开始治理的程度了,而解决此类问题的关键在于需要了解代码间的依赖关系。 二、高德 APP 平台架构 为了消除一些疑惑,在讨论依赖分析的实现前,先简单说明一下高德 APP 的平台架构,以便对一些名词和场景有一些背景了解。 高德 APP 从语言平台上可以分为 4 个部分,JS 层主要负责业务逻辑和 UI 框架;中间有 C++层做高性能渲染(主要是地图渲染),同时实现了一些切面 API,这样可以在双端只维护一套逻辑了;Android 和 iOS 层主要作为适配层,做一些操作系统接口的对接和双端差异化的(尽可能)抹平。 这里的切面是指 JS 层与 Native/C++ 层的分界线,这里会实现一些切面 API,也就是 JS 层与

几款具有代表性的自动化测试工具汇总简介

北城余情 提交于 2020-01-22 01:42:46
几款具有代表性的自动化测试工具汇总简介 一、传统自动化测试工具/商业工具(传统工具较多仅介绍两款,基本都是国外的) 1、QTP,全名HP QuickTest Professional software ,最新的版本为HP QuickTest Professional 11.0QTP是quicktest Professional的简称,是一种自动测试工具。使用QTP的目的是想用它来执行重复的手动测试,主要是用于回归测试和测试同一软件的新版本。 因此你在测试前要考虑好如何对应用程序进行测试,例如要测试那些功能、操作步骤、输入数据和期望的输出数据等QuickTest针对的是GUI应用程序,包括传统的Windows应用程序,以及现在越来越流行的Web应用。它可以覆盖绝大多数的软件开发技术,简单高效,并具备测试用例可重用的特点。 其中包括:创建测试、插入检查点、检验数据、增强测试、运行测试、分析结果和维护测试等方面。 2、IBM Rational Functional Tester(简称RFT)是一款先进的、自动化的功能和回归测试工具,它适用于测试人员和GUI开发人员。使用它,测试新手可以简化复杂的测试任务,很快上手;测试专家能够通过选择工业标准化的脚本语言,实现各种高级定制功能。 通过IBM的最新专利技术,例如基于Wizard的智能数据驱动的软件测试技术

为web功能测试而生的工具

耗尽温柔 提交于 2020-01-22 01:42:39
简介 selenium录制器是最近刚流行起来的一个WEB自动化测试工具,由多测测团队开发。 Selenium录制器采用关键字驱动的理念以简化测试用例的创建和维护,它让用户可以直接录制屏幕上的操作流程,自动生成功能测试或者回归测试用例。 专业的测试者也可以通过提供的内置脚本和调试环境来取得对测试和对象属性的完全控制。 适用于Web、PC软件系统的功能测试、回归测试及客户测试。 自动化脚本录制、一键回放、报告查看,轻而易举实现自动化测试流程,自有编辑器一站式解决目前支持的浏览器包括IE(8、9、10、11),支持Chrome及Firefox版本已经在开发中。 该工具支持不同级别的测试技能。 非程序员可以轻松地启动自动化测试项目,而程序员和高级自动化测试人员可以节省构建新库和维护脚本的时间。 工具的主要功能: 录制功能——创建回归测试检验软件功能和用户需求,支持IE系列浏览器所有HTML元素的快速录制、回放 对象属性参数化——通过工具提供的识别设置和数据输入,能随意改变对象的属性和数据。 测试报告功能——完成回归测试后,生成全面质量报告测试的结果。 原因诊断功能——出现查找错误地方,可以主动分析定位错误位置,可以通过调整查找策略(xpath、全路 径、属性集)准确查找到对象。 selenium+python脚本——专业的测试人员也可以通过工具提供的基于selenium框架来编写脚本。

测试的分类

那年仲夏 提交于 2020-01-20 13:31:16
测试分类: 1.按开发阶段划分(重点): 开发阶段分为UI界面层(要求最低,人员最多)UI:功能验证测试、兼容性与用户测试 业务逻辑层 Server:客户端模拟测试、内外接口测试、SDK接口测试 数据处理层(要求最高,人员最少)Unit:单元测试(白盒测试,对代码进行测试)、CodeReview(代码复审) 1)单元测试(模块测试):对软件组成单元进行测试,其目的是检验软件基本组成单位的正确性 测试阶段:编码后或编码前(TDD,测试驱动开发(研发人员拿着测试人员写的测试用例去写代码)) 测试对象:软件设计的最小单位:模块,又称模块测试。 测试人员:白盒测试工程师或开发工程师 测试方法:白盒测试 测试内容:模块接口测试、局部数据结构测试、路径测试、错误处理测试、边界测试 测试依据:代码的注释+详细设计文档 2)集成测试(联合测试):至少两个模块,将程序模块采用适当的继承策略组装起来,对系统的接口及集成后的功能进行正确性检测的测试工作。 测试阶段:一般单元测试之后 测试对象:模块间的接口 测试人员:白盒测试工程师或开发工程师 测试方法:黑盒和白盒相结合(既要测功能又要测代码) 测试内容:模块之间数据传输、模块之间功能冲突、模块组装功能正确性、全局数据结构、单模块缺陷对系统的影响 测试依据:单元测试的模块+概要设计文档 3)系统测试(测试人员花费时间最长的阶段)

对开发测试的理解

好久不见. 提交于 2020-01-16 00:55:56
一、 冒烟测试 和回归测试的区别 1,测试阶段不同: 冒烟测试 描述的是在将代码更改嵌入到产品的源树中之前对这些更改进行验证的过程 。回归测试是指漏洞由开发人员修改之后再次测试的过程。 2,测试稳定性不同:在检查了代码后, 冒烟测试 是确定和修复软件缺陷的最经济有效的方法。冒烟测试设计用于确认代码中的更改会按预期运行,且不会破坏整个版本的稳定性。回归测试需要验证之前的漏洞是否解决完成。 3,测试目的不同: 冒烟测试是代码开发完成后进行的功能完整性测试 。但是回归测试为了验证漏洞是否正确修改且其他功能是否正常。 4,测试性质不同: 冒烟测试中发现问题然后反馈给开发人员进行修改,而回归测试是修改完之后进行验证再进行的工程 。 5,测试周期不同:冒烟测试只集中考虑了一开始的那个问题,而忽略其它的问题,这就可能引起了新的Bug。SmokeTest优点是节省测试时间,而回归测试作为软件生命周期的一个组成部分,在整个 软件测试 过程中占有很大的工作量比重,软件开发的各个阶段都会进行多次回归测试。 来源: CSDN 作者: 战斗,然后凯旋 链接: https://blog.csdn.net/qq_41893274/article/details/103984978

测试分类

天大地大妈咪最大 提交于 2020-01-14 19:14:21
按开发阶段分: 单元测试 单元测试是对软件组成单元进行测试。其目的是检验软件基本组成单位的正确性。测试的对象是软件设计的最小单 位:模块。又称为模块测试 测试阶段:编码后或者编码前(TDD) 测试对象:最小模块 测试人员:白盒测试工程师或开发工程师 测试依据:代码和注释+详细设计文档 测试方法:白盒测试 测试内容:模块接口测试、局部数据结构测试、路径测试、错误处理测试、边界测试 集成测试 集成测试也称联合测试(联调)、组装测试,将程序模块采用适当的集成策略组装起来,对系统的接口及集成后的 功能进行正确性检测的测试工作。集成主要目的是检查软件单位之间的接口是否正确。 测试阶段:一般单元测试之后进行 测试对象:模块间的接口 测试人员:白盒测试工程师或开发工程师 测试依据:单元测试的模块+概要设计文档 测试方法:黑盒测试与白盒测试相结合 测试内容:模块之间数据传输、模块之间功能冲突、模块组装功能正确性、全局数据结构、单模块缺陷对系 统的影响 系统测试 将软件系统看成是一个系统的测试。包括对功能、性能以及软件所运行的软硬件环境进行测试。时间大部分在系统 测试执行阶段,包括回归测试和冒烟测试。 测试阶段:集成测试通过之后 测试对象:整个系统(软、硬件) 测试人员:黑盒测试工程师 测试依据:需求规格说明文档 测试方法:黑盒测试 测试内容:功能、界面、可靠性、易用性、性能、兼容性、安全性等