为了账号安全,请及时绑定邮箱和手机立即绑定

软件测试基础-概念篇

城下秋草 软件测试工程师
难度入门
时长 3小时 2分
学习人数
综合评分9.57
110人评价 查看评价
9.8 内容实用
9.5 简洁易懂
9.4 逻辑清晰
  • 1-1 软件测试概要
    软测定义:使用人工或自动的手段来运行或测量软件系统的过程,以检测软件系统是否满足规定的要求,并找出与预期定义之间的差异。

    软测对象:软件需求,概要设计,详细设计,源代码,可运行程序,可运行环境。

    软测的五大要素及两大目标: 质量(最为核心),人员(决定因素),技术(实现手段)【测试技术,方法,测试工具】,资源【测试所需的硬件,网络环境,测试生命周期,测试时间】,流程(测试标准)【测试计划,测试执行,报告】
    目标:提升测试覆盖率及测试效率

    查看全部
    2 采集 收起 来源:软件测试概要

    2018-04-25

  • 软测的遵循原则:
    1.测试是为了发现错误而不是证明没错误
    2.穷尽测试是不可能的,应设定终止条件(无穷无尽的测试是不可能的,需很大代价;无论怎样测试,我们不可能发现软件的所有缺陷)
    3.测试尽早进行
    4.缺陷具有群集性(发现好多缺陷的模块,说明该模块存在没有被发现的缺陷)
    5.测试的杀虫剂悖论(应对测试用例,测试方法不定期的评审,添加新的测试用例或测试方法发现新的缺陷)
    6.测试的二八原则(80%的时间测试20%的重要模块)
    7.测试活动依赖于测试背景(如电信这块主要性能测试,银行啥的主要安全测试)

    查看全部
    2 采集 收起 来源:软件测试概要

    2018-04-25

  • 局部探索式测试:输入;状态;代码路径;用户数据;执行环境 全局探索式测试:漫游测试法。 让测试人员像游客游览一样来测试,而且软件按照不同属性划分为各个区域。 商业区是指软件启动到关闭之间用户会使用的功能。 旅馆区是指软件休息没有实际运行时候的功能,例如后台进程和定时任务。 历史区是指版本遗留代码或者说以前版本经常出现bug的功能模块。 旅游区是指新手引导之类的功能。 娱乐区是指主要功能之外的一些辅助特性。 破旧区是指废弃或者已经隐藏的功能。 探索式测试测试流程(基于session) konw you mession 了解测试重点,系统环境,有一个测试的总体思路 learning session 详细的学习探索被测系统了解系统的业务逻辑,具体功能,深入学习被测系统 coverage session 探索式测试的实施阶段,完成主要功能点的测试验收,完成测试点的覆盖 deep session 在上一个功能点的基础上,更深入的发散式的测试,挖掘深层次的问题,深入测试 close session 总结测试,整理测试信息,根据整理数据,分析有没有测试的遗漏 缺陷大扫除。
    查看全部
  • 基于脚本的测试-SBT 强调先做出测试设计,然后再测试 Script-based Testing Scripted Testing(ST) 探索式测试ET: Exploratory Testing(ET) 完全抛开测试脚本的测试; 它是一种测试风格,思维不单单是一种测试技术 按照ST和ET的互补程度,有各种不同的测试种类(见下图) ST:系统性强;容易管理,控制;设计在先,执行在后;主要是验证自己的思路;可预见性 ET:自由灵活;与ST是互补的,执行和设计并行;不断和系统交互,带着问题测试;学习的过程(重在测试人员) 探索式测试的优点: 更能激发测试人员的创造性和工作乐趣; 增加了发现新的或较深入的bug的可能性; 在较短时间内找到更多的bug以及对SUT(software under test 被测程序)作一个快速的评估; 有利于更加有效的实施自动化; 更加适用于敏捷项目; 减少了在简单,繁复上用例的无谓编写时间 缺点: 测试管理上有局限性,较难协调和控制; 对于bug的重复利用和重现上作用有限; 对测试人员的测试技能和业务知识深度要求高; 只有在SUT一完全可用的前提下才更有作用; ET的生产率很难定义; ET本身较难进行自动化
    查看全部
  • 白盒测试的主要测试方法: 代码检测法:多面检查、代码审查、走查等。主要检查代码和设计的一致性。 静态结构分析法:使用测试工具,内部结构分析进行设计测试用例 静态质量度量法:标准的度量模型(ISO标准等) 逻辑覆盖法:6种逻辑,语句 ,分支,条件,条件判定组合,路径,判定 基本路径测试法:通过分析复杂度,选出基本可执行路径的集合。程序控制流图,描述程序控制流 灰盒测试 介于黑、白盒测试之间的,关注输出对于输入的正确性,同时也关注内部表现 静态测试 定义:静态测试是指无须执行被测程序,而是通过评审软件文档或代码,度量程序静态复杂度,检查软件是否符合编程标准,借以发现编写的程序的不足之处,减少错误出现的概率; 方式:互审、走查、会议 动态测试 定义:动态测试是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率、正确性和健壮性等。 手工测试 由专门的测试人员从用户视角来验证软件是否满足设计要求的行为。更适用针对深度的测试和强调主观判断的测试。 众包测试,探索式测试 自动化测试 使用单独的测试工具软件控制测试的自动化执行以及对预期和结果进行自动检查。 单元测试、接口测试、性能测试等 手工测试VS自动化测试 手工测试: 优点:易发现缺陷,容易实施,创造性、灵活性; 缺点:覆盖量化难,重复测试效率低,不一致性、可靠性低,人力资源依赖 自动化测试: 优点:高效率、速度快,高复用性,覆盖率容易度量,准确、可靠,不知疲劳; 缺点:机械、发现缺陷率低,一次性投入较大
    查看全部
    2 采集 收起 来源:软件测试手段

    2018-03-16

  • 2-2 软件测试手段 根据测试对象的可见度:黑盒测试、 白盒测试 根据状态:静态测试、动态测试 执行方式:手工测试、自动化测试 黑盒测试: 不考虑程序内部结构和内部特性下,通过相关暴露出的接口,对程序进行测试。 只检查程序的功能是否按照需求规定,正常使用; 程序是否能适当的输入输出数据,并产生正确的输出信息; 一般针对软件外面的界面,可见的功能; 从用户的视角,通过不同数据事件,通过输出结果进行判断; 优点: 1.容易实施,不需要关注内部的实现 2.更贴近用户的使用角度 缺点: 1.测试覆盖率较低,一般只能覆盖到代码量的不到40% 2.针对黑盒的自动化测试,复用率较低,维护成本较高。因:产品活动增/删(更新) 黑盒测试主要测试什么 1.是否有不正确或遗漏的功能? 2.在接口上,输入是否能正确的接受?能否输出正确的结果? 3.是否有数据结构错误或外部信息(例如数据文件)访问错误? 4.性能上是否能够满足要求? 黑盒测试的主要设计方法 等价类划分法:针对程序的输入条件进行分类,输入典型的数据 边界值分析法:特殊的边界数据,测试代码的边界状态 错误推测法:基于经验,直觉,判断错误的地方;特殊字符,文件不存在,文件超大等 因果图法:根据输入输出看做原因和结果,形成因果图。(因果图法是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。) 正交试验分析法:选出代表性的数据,作为输入数据 状态迁移图法:软件审批的过程,各种状态迁移 流程分析法:处理程序逻辑执行的路径 白盒测试:逻辑覆盖率 主要的逻辑单位: 语句覆盖:保证每条语句执行一次 分支(判定):保证每条分支至少执行一次 条件:条件表达式,至少计算一次 条件组合:所以不同条件下的组合情况 路径:程序中,每个可能的路径至少执行一次 优点 1.迫使测试人员去仔细思考软件的实现,理解原理 2.可以检测代码中的每条分支和路径 3.揭示隐藏在代码中的错误 4.对代码的测试比较彻底 缺点 1.昂贵。 2.无法检测代码中遗漏的路径和数据敏感性错误 3.不能直接验证需求的正确性
    查看全部
    2 采集 收起 来源:软件测试手段

    2018-03-16

  • 软件测试的分类 一、测试分类方法: 2.测试时所采用的手段进行测试区分 3. 测试所遵循的模式进行分类 1. 按测试阶段来分类(根据测试所在不同阶段进行测试分类) 单元测试:对软件中的最小可测试单元进行检查和验证。 二、单元测试的原则: 1. 尽可能保证各个测试用例是互相独立的。(单元测试尽量避免使用这种依赖的方法,应该编写一个模拟的方法,来取代使用web的依赖) 2. 一般由代码的开发人员来实施,用以检验所开发的代码功能符合自己的设计要求。(实施单元测试的人员需要对被测试的代码有相当程度的了解) 三、单元测试的益处 1. 能尽早发现缺陷(测试需尽早进行,在测试前期能发现更多的曲线,收益是最高的。单元测试在研发中是属于前期阶段) 2. 有利于重构(进行了完善的单元测试,能够最大限度的保证后面的重构,重构后的软件正确性。有了完善的单元测试,在重构时可以快速识别出重构时,出现问题的地方。) 3. 简化集成(进行充分的单元测试、集成测试,才能更快的聚焦到模块之间的关系上) 4. 文档(单元测试包含对功能代码的基本理解和特性,单元测试比较规范,通过单元测试代码的阅读可以基本理解功能模块的特性) 5. 用于设计(单元测试的设计本身可以用来验证设计) 四、单元测试的限制 1. 不可能覆盖所有的执行路径,所以不可能保证捕捉到所有路径的错误。 2. 每一行代码,一般需要3~5行测试代码才能完成单元测试。所以存在投入和产出的一个平衡。 五、单元测试框架 Junit针对java,Nunit针对.NET ,PHPUnit针对php,CPPUnit针对C++语言
    查看全部
    1 采集 收起 来源:软件测试阶段

    2018-03-03

  • 下面是我收集的学友们的笔记: 软测定义:(经典定义)测试是为发现错误而执行程序的过程。(IEEE(ISO/IEC/IEEE 29119)(国际电子电器公司协会)规范定义)使用人工或自动的手段来运行或测量软件系统的过程,以检测软件系统是否满足规定的要求,并找出与预期结果之间的差异。 软件测试的内容: 软件需求,软件源代码,软件运行环境,概要设计,详细设计,可运行程序 软测的遵循原则: 1.测试是为了发现错误而不是证明没错误; 2.穷尽测试是不可能的,应设定终止条件(无穷无尽的测试是不可能的,需很大代价;无论怎样测试,我们不可能发现软件 的所有缺陷); 3.测试尽早进行; 4.缺陷具有群集性(发现好多缺陷的模块,说明该模块存在没有被发现的缺陷); 5.测试的杀虫剂悖论(应对测试用例,测试方法不定期的评审,添加新的测试用例或测试方法发现新的缺陷); 6.测试的二八原则(80%的时间测试20%的重要模块); 7.测试活动依赖于测试背景(如电信这块主要性能测试,银行啥的主要安全测试)。 软测的五大要素及两大目标: 质量(最为核心),人员(决定因素),技术(实现手段)【测试技术,方法,测试工具】,资源【测试所需的硬件,网络环境 ,测试生命周期,测试时间】,流程(测试标准)【测试计划,测试执行,报告】 目标:提升测试覆盖率及测试效率
    查看全部
    1 采集 收起 来源:软件测试概要

    2018-02-17

  • 瀑布模型 项目设计(生成项目需求文档)、需求分析、软件设计、程序开发、软件测试、集成维护 优点:强调需求,只需关注后续阶段,提供按阶段划分的检查点,文档规范 缺点:开发后期才可看到成果,较关注时间节点,文档工作量较大
    查看全部
    1 采集 收起 来源:软件测试模式

    2018-02-02

  • 单元测试是依据详细设计来测试,集成测试是依据概要设计来测试的。
    查看全部
    1 采集 收起 来源:软件测试阶段

    2017-12-15

  • 系统测试---将集成测试的软件与其他结合起来,进行测试(真实的运行环境) 功能测试、稳定性测试、性能测试 关注点:系统本身的使用、系统与其他系统的联系、系统在不同压力下的表现、系统在真实使用环境的情况
    查看全部
    1 采集 收起 来源:软件测试阶段

    2017-12-14

  • 静态测试
    查看全部
    1 采集 收起 来源:软件测试手段

    2017-12-07

  • appscan,webinspect,w3af:web应用 nessus:服务器,主机 nmap:端口开放 metasploit:攻击软件,渗透测试 webscarab:代理劫持 fortify:针对白盒,源码中的安全问题
    查看全部
  • 其他的一些测试类型概念:回归测试、冒烟测试、Monkey测试、AB测试 回归测试:软件功能修改后,对软件进行重新测试已确认修改没有引入新的错误或导致其他部分产生错误。 回归测试的中心在关键模块和重点功能组件。 软件研发周期中会进行多次回归测试,且尽量实现自动化。 Monkey测试:也称搞怪测试。就是用一些随机、稀奇古怪的方式来操作软件,以测试系统的健壮性和稳定性。 冒烟测试:来自于硬件板卡验证术语。软件上则用于确认代码中的更改会按预期运行,且不会破坏整个版本的稳定性。 A/B测试:多用于互联网行业,通过为页面提供2个版本给用户使用并记录相关的用户行为数据,来确定更优化设计的一种测试方案。 A/B测试实施要点: 1、多个方案并行 2、每次测试仅改动一个变量 3、按照某种规律进行优胜劣汰
    查看全部
    1 采集 收起 来源:其他测试分类

    2017-10-08

  • 基于风险测试——(RBT risk-based testing) 风险:质量风险(软件功能,性能,软件代码缺失);管理风险(人员能力不足,环境风险) 识别风险:可能性:复杂性;时间压力;高变更率;技能水平;地理分散度 严重程度:使用频率;失效可视性;商业损失;组织负面影响和损害;社会损失和法律责任 RBT的优点:
    查看全部

举报

0/150
提交
取消
课程须知
本门课程适合有志于从事软件测试或在校软件专业的同学学习, 最好了解一些软件工程的基本概念,对软件测试这个职业有一些最基本的认识。(随堂资料:http://img1.sycdn.imooc.com//down/57bd4d2f0001474e00000000.rar)
老师告诉你能学到什么?
通过学习本门课程,能够理清我们接触到得各种不同的软件测试概念以及它们的主要作用和适用场景,可以更加理解软件测试这个职业的作用和对软件产品的意义。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!