zoukankan      html  css  js  c++  java
  • 软件测试

    一、软件缺陷就是通常所说的Bug,它是指软件中(包括程序和文档)存在的影响软件正常运行的问题。缺陷是产品开发或维护过程中存在的错误、毛病等各种问题;从产品外部看,缺陷是系统运行过程中某种功能的失效或违背。

    二、软件测试

    (1)软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码实现的最终审查。

    (2)1.所有测试的标准都是建立在用户需求之上

         2.软件测试必须基于“质量第一”的思想去开展各项工作,当时间和质量冲突时,时间要服从质量。

       3.事先定义好产品的质量标准。

       4.软件项目一启动,软件测试也就是开始,而不是等程序写完,才开始进行测试。

       5.穷举测试是不可能的。

         6.第三方进行测试会更客观,更有效。

       7.软件测试计划是做好软件测试工作的前提。

               8.测试用例是设计出来的,不是写出来的,所以要根据测试的目的,采用相应的方法去设计测试用例,从而提高测试的效率,更多地发现错误,提高程序的可靠性。

               9.不可将测试用例置之度外,排除随意性。

              10.对发现错误较多的程序段,应进行更深入的测试。

    三、

    测试用例
    测试用例的特性
    1、有效性:测试用例的能够被使用,且被不同人员使用测试结果一致
    2、可重复性:良好的测试用例具有重复使用的功能。(回归测试)
    3、易组织性:好的测试用例会分门别类地提供给测试人员参考和使用(功能、性能、易用分类编号)
    4、清晰、简洁:好的测试用例描述清晰,每一步都应有相应的作用,有很强的的针对性,不应出现一些无用的操作步骤。
    5、可维护性:由于软件开发过程中需求变更等原因的影响,常常对测试用例进行修改、增加、删除等,以便测试用符合相应测试要求。
    1:测试用例包含什么类容
    用例编号,所属模块,用例描述,前置条件,优先级,输入数据,操作步骤,预期结果,实际结果,测试人员,测试时间
    2:测试用例的编写方法有哪些?
    等价类划分,边界值,错误推测,因果图,场景法,正交表
    应用的场景
    等价类划分
    多用于输入框:注册/登录
    边界值(掌握上点和离点的取值)
    多和等价类划分结合使用,有边界限制的:注册的密码长度,,
    场景法
    从基本流开始,再将基本流和备选流结合起来,可以确定用例场景
    正交表
    用于多个下拉框之间的组合,可以通过正交助手生成测试用例
    错误推测
    错误猜测法是测试经验丰富的人喜欢使用的一种测试用例设计方法。
    一般这种方法是基于经验和直觉推测程序中可能发送的各种错误,有针对性地设计。只能作为一种补充
    因果图
    因果图法比较适合输条件比较多的情况,测试所有的输入条件的排列组合。所谓的原因就是输入,所谓的结果就是输出
    3:测试用例的评审
    包含:参与评审人员(需求人员,对应的开发人员,对应的测试人员,项目经理)
    评审内容,评审的时间
    4:测试计划
    测试背景
    测试目的
    确定测试范围
    制定测试策略(功能测试/业务测试…)
    测试资源安排
    测试时间安排
    测试人员分配
    风险评估
    5:缺陷报告
    所属产品,所属模块,当前指派(重要),bug类型,操作系统,重现步骤(重要),验证程度(重要),优先级(重要),附件等
    6:测试报告
    测试目标,测试的范围,测试环境,测试结果分析(多少轮测试,测试多少,失败多少,成功占比),遗留缺陷,测试结论(本次测试涉及xxx个功能点,发现xx个缺陷,其中,xx个已修复,xx个遗留。)测试过程完整有效,系统测试通过。

    7:软件缺陷的种类划分
    功能不正常:简单地说就是所应提供的功能,在使用上并不符合产品设计规格说明书中规定的要求,或是根本无法使用。
    软件在使用上感觉不方便:只要是不知如何使用或难以使用的软件,在产品设计上一定是出了问题。所谓好用的软件,就是使用上尽量方便,使用户易于操作。
    软件的结构未做良好规划:这里主要指软件是以自顶向下方式开发,还是以自底向上方式开发。如果是以自顶向下的结构或方法开发的软件,在功能的规划及组织上比较完整,相反 以自底向上的组合式方法开发处的软件则功能较为分散,容易出现缺陷。
    使用性能不佳:被测软件功能正常,但使用性能不佳,这也是一个问题。此类缺陷通常是由于开发人员采用了错误的解决方案,或使用了不恰当的算法导致的
    边界错误:缓冲区溢出问题在这几年已成为网络攻击的常用方式,而这个缺陷就属于边界错误的一种。简单来说,程序本身无法处理超越边界所导致的错误。
    计算错误:只要是计算机程序,就必定包括数学计算。软件之所以会出现计算错误,大部分出错的原因是由于采用了错误的数学运算工时或未将累加器初始化为0
    8:软件缺陷的严重程度
    按照严重程度分为:系统崩溃,严重,一般,次要,建议
    按优先级分:高,中,低
    9:Bug定级示例
    1级,系统崩溃
    定义:严重阻碍测试和开发工作
    对应优先级:最高
    具体可分为:
    1.功能完全没有实现
    2.应用闪退/崩溃无法运行
    3.应用必现安全模式,无法运行
    4.其他导致功能无法测试的问题
    2级,至关重要
    定义:非阻碍用例执行的严重问题
    对应优先级:高
    具体可分为:
    1.简单操作应用闪退/崩溃,卡死
    2.数据丢失
    3.严重影响系统,自身功能无法运行
    4.严重数值计算错误
    5.数据库损坏或无法保存配置
    6.安全性问题(包括数据加密等)
    3级,主要
    定义:功能存在缺陷,但不影响应用和系统的稳定性
    对应优先级:中
    具体可分为:
    1.内存泄露(长时间不用的对象需要被回收,不被回收占内存)
    2.功能实现逻辑覆盖不全面
    3.非必现,但复现概率超过50%的闪退/崩溃和安全模式
    4级,一般
    定义:对应用熟悉度高才能感知到的问题,对应用基本功能实现无影响
    对应优先级:中
    具体可分为:
    1.轻微数值计算错误
    2.功能实现有误,与产品文档不完全贴切
    3.用户简单操作,即可明显感知的UI问题
    5级,较小
    定义:界面,性能缺陷
    对应优先级:低
    具体可分为:
    1.操作界面错误(提示显示规则,刷新规则是否与文档一致)
    2.边界条件显示错误      
    3.提示信息和界面效果展示错误(包括未给出信息、信息提示错误等)
    4.复现率低于5%的闪退/崩溃和安全模式      
    5.插件兼容和性能未优化问题      
    6.非正常操作导致UI显示异常
    6级,建议
    定义:对于产品的意见或者建议
    对应优先级:低
    具体可分为:
    1.对于产品设计方面的意见和建议
    2.对于产品界面优化方面的意见和建议
    3.对于产品需要优化增强用户体验方面的意见和建议

    四、如何搭建

    1.下载并安装一个VMware workstation, 这个是虚拟机的平台,后面要在里面搭建Linux系统。

    2.下载一个centos安装包,linux版本有多种,比如说redhat、ubuntu、deepin、BT3,个人比较习惯使用centos,这里下载一个 CentOS-6.4-i386-bin-DVD1.iso,6.4版本的。

    3.新建一个虚拟机,并把这个安装包导入进去,记住期间步骤有一步是需要建一个用户和设置密码,这里的用户是linux环境的普通账户,但是密码是根账户root和这个普通用户共用的密码

    4.安装完成后,是图形化界面,一般我们要用到的是命令行界面,所以这里可以用快捷键 CTRL+ALT+F2,就可以切换到命令界面了。

    5.用命令ifconfig查看IP 地址,然后可以考虑用Xshell来连接虚拟机,这样操作命令会比较方便,不用频繁的切换出来或者切换出去。

    测试人员应具备哪些要求

    一、系统思维能力

    无论是出软件测试方bai案,还是用例设计,测试建模,场景化分析等都需要具备一定的系统思维,环环相扣,把遗漏风险降到最低。也是个人提升的必备

    二、项目管理能力

    测试人员最终的目标是评估质量风险与风险控制,但质量并非是靠测试测出来的,而是在产品未孵化前的规划就开始了,所以了解整个项目管理流程才可以实现对各个阶段的质量把控。

    三、沟通表达能力

    以上案例中已提到过,无论是日常工作与其他跨部门团队的沟通还是晋升的竞聘环节,以及面试过程中对自我的展示,都需要良好的沟通表达,再优秀的技术也需要靠表达去实现继承和运用。

    四、领导管理技能

    测试人员的发展方向除了专家路线就是管理方向,当然技术管理还是要以技术为本的,所以领导力会显得尤其重要,但无论专家还是管理路线,拥有一定经验后需要做出决策以及测试策略如何让别人信服就需要一定的领导力了,而领导力是可以有意培养的。

  • 相关阅读:
    notification(浏览器通知)
    面试的信心来源于过硬的基础
    碰撞检测
    使用自定义的鼠标图标 --- cursor url
    js中json字符串转成js对象
    【php学习】字符串操作
    Car的旅行路线(codevs 1041)
    Find them, Catch them(poj 1703)
    Period(poj 1961)
    Power Strings(poj 2406)
  • 原文地址:https://www.cnblogs.com/mhlhaoshuai/p/14481139.html
Copyright © 2011-2022 走看看