前言

大家好,我是 Vic,今天给大家带来开始软件测试的概述,希望你们喜欢

软件测试

软件测试的基本概念、方法、常用测试工具的使用

  • 常用测试工具的使用
    性能自动化测试工具:jmeter、loadrunner
    接口自动化测试工具:SoapUI、postman
    手机自动化测试工具:appium、robotium
    Web自动化测试工具:selenium、QTP
  • 操作系统
    Windows,android, linux,macOS苹果操作系统
  • Web服务
    Apache,Tomcat
  • 数据库
    Mysql,Oracle,Sqlserver,sqlite

软件测试相关学习网站

http://www.51testing.com/html/index.html

开始软件测试

  • 测试一个软件
  • 测试的目的
  • 开发的过程
  • 软件质量的保证
  • 理解软件测试
  • 软件测试的分类

测试的目的

1.测试的目的:在于发现错误(缺陷),保证整个软件开的质量,但软件的质量不能以软件测试为依据
2.成功的测试:是发现了未曾发现的软件错误(缺陷)
3.好的测试用例:是能有效地发现别的测试用例未发现的软件错误

开发的过程

在软件开发的过程中,我们要明确软件开发的目标以及软件的需求,进行制定各种软件开发过程中的计划,并进行编写文档测试,软件测试,进行有效地测试和修复,然后提交测试完成的软件。

软件测试生存期模型

1.瀑布模型
答:对于瀑布模型,我知道有六个阶段:计划,需求分析,设计,编码,测试,运行维护。计划-->需求分析-->设计-->编码-->测试-->运行维护

2.原型模型
答:就是建立一个能反映用户需求的原型系统,如何对原型系统进行反复的改进和求精,建立一个符合用户的目标系统。

3.增量模型
答:对于增量模型,记住的是在每个阶段都会生成一个可发布的正式版本,而且每个软件版本是逐步完善的。

4.螺旋模型
答:螺旋模型是瀑布模型和原型模型结合起来的,记住这个模型是有四个阶段,这四个阶段都是主要的,一是制定计划,二是风险分析,三是实施工程,四是评审。

生存周期

定义->计划->实现->稳定化->部署->运行与维护

软件质量的定义

软件质量的定义:满足用户的需求,满足软件测试的需求,保持合理的进度和成本

软件错误的定义

软件错误的定义:没有实现其最终的软件需求(文档内的软件需求)就表示错误

错误处理测试:

软件错误等级分为:致命错误,严重错误,一般错误,轻微错误,改进建议。

描述错误分三步走,摘要,重建步骤和隔离。

错误测试:为了发现软件中不符合软件需求的事情,做了用户不满意的期望事情。在进行错误处理测试中可能发现的问题不会被修复。

重现错误:

在写文档时,记录重现错误步骤是至关重要的,只有你把步骤重现出来程序员要能足够理解,发生了什么错误,并且对程序进行修复,如果你告诉程序员这里错误了,可是不指出问题所在,程序员鸟都不鸟你!

然而重现步骤,也不是你所重现就重现的,测试人员需要进行发现错误时的所有操作,必须保证操作与原先发生错误时步骤一致和测试环境一致,有可能遇见偶发性,不一定就能马上发现出来,这就需要进行重复的步骤了。

一旦满足了确切的要求,错误才会再次浮现出来。

软件错误的状态:

软件错误的状态,软件错误的状态就是写在文档中的,状态包含,开放,已分配,被拒绝,被忽略,修复,关闭,达到关闭就ok。简单说就是描述文档的状态,这些状态可理解字面意思。

总体设计

定义设计目标,说明每项测试的目标,定义测试环境和配置,编写测试设计文档

开发测试用例

测试用例是专门为测试人员写的,根据测试用例能够很好加强测试效果,也能提高测试工作效率,但是,一个好的测试用例,并不是那么简单的,一个好的测试用例应该可以发现软件中的错误,而且测试人员能够很好的并清晰知道测试输入,执行条件和预期的结果等

在我们测试的过程中,测试用例则是测试过程中的辅助,我们在执行一系列测试用例就是我们的测试的过程,测试过程中我们需要知道预期的结果,这在测试用例中必须也明白,在测试人员测试的过程中可以方便记录bug测试文档

总之测试用例越详细越好,但是不能够添加无关的条件或者信息,测试用例的编写需要考虑到测试执行者是否对系统有足够的了解,而且要让测试人员看懂,这一步是非常关键的

明白软件测试

测试只能证明错误存在,不能说明软件错误不存在。

软件测试的难度是不知道如何进行测试,不知道如何结束,这需要慢慢地自己去理解了。

重点名句:80%的错误聚集在20%的模块中

软件测试的分类

基于软件结构与算法

  • 黑盒测试和白盒测试
    基于执行被测试软件
  • 静态测试和动态测试
    基于不同阶段
  • 单元测试,集成测试,系统测试,验收测试

白盒测试

白盒测试,我们知道是结构测试方法,是按照程序内部的结构测试程序的,白盒测试又称为结构测试,对代码结构进行测试,可属于程序员的测试~

黑盒测试

黑盒测试又叫做功能测试,适用于用户测试,可以理解为进行性能测试,表面的测试~

对于黑盒测试是不考虑程序的内部结构和特性的,只是对程序功能或程序的外部设计的测试方法

等价分类法

等价分类法:分两种为有效等价类和无效等价类

有效等价类,就是输入的数据是合理的,有意义的,并且符合程序的规格说明。

无效等价类,就是输入的数据是不合理的,没有意义的,并且不符合程序的规格说明。

边界分析法

对于边界分析法,是基于等价类划分的,选择等价类的边界值作为测试用例。

错误推测法

错误推测法,是靠经验或者直觉推测可能会出现错误的,列出可能出错的和容易出错的,来选择作为测试用例。

因果图法

因果图法,理解为把“因”看作输入条件,把“果”看作输出条件,有因就有果,因果图是一种形式化语言,可以根据这种关系选择高效的测试用例。

测试工作流程

测试计划,测试用例设计与开发,配置测试环境(软件配置,测试配置,测试工具),撰写适当的测试文档,执行测试

测试人员需要的要求

  • 熟悉软件测试和软件开发流程
  • 有较强的文档能力
  • 会编写测试用例,测试方案文档,测试总结报告等
  • 熟悉测试工具
  • 熟悉一些开发工具等
  • 学习能力,沟通能力 ,团队精神

总结

  • 本文讲了开始软件测试,如果您还有更好地理解,欢迎沟通
  • 定位:分享 Android&Java知识点,有兴趣可以继续关注

Vic-软件测试-开始软件测试的更多相关文章

  1. 第1章 软件测试基本概念(Week1,3月3日)

    一.对软件的认识 1. 什么是软件 2. 软件的分类 3. 软件开发的生命周期模型 (1)瀑布模型 (2)Scrum 其实对用瀑布模型这种臃肿不堪.要求严格.而无法适应软件开发周期变化的开发模型,渐渐 ...

  2. Testing - 软件测试知识梳理 - 测试模型

    珠玉在前,不再赘言. 软件测试模型 软件测试模型汇总

  3. Testing - 软件测试知识梳理 - 基础概念

    测试是为了度量和提高被测试软件的质量,对测试软件进行工程设计.实施.维护的的整个生命周期过程. 仅仅发现Bug是测试的初步,而分析出根本原因推动问题的解决,却要有很深的功底. 不同的测试岗位从事不同的 ...

  4. 软件测试职业规划的思考(转)(作者Findyou

    前言 入软件测试行至今已经8年多,承领导们的信任与重用,同事的支持与信任,我的职业发展算是相对较好,从入行到各类测试技术岗位,再到测试总监,每一步都刚刚好.最近在自身职业发展瓶颈,人生十字路口,静坐反 ...

  5. <软件测试>软件测试

    1.软件测试基础 软件测试工程师:查找错误和缺陷,然后要求开发人员进行修改,保证软件质量. 漏洞(360安全漏洞):硬件,软件,协议的具体实现或系统安全策略存在缺陷,从而可以使攻击者在未授权的情况下破 ...

  6. 2020软件测试自学全套教程-基于python自动化软件测试-2020新版软件测试中级程序员学习路线

    不知不觉间,在软件测试行业野蛮的折腾了七年之久.七年之痒也即将过去,但我还是热爱着软件测试这一份工作,一路坚持,走到现在.经历过各种难题,有过迷茫,有过焦虑失眠.也踩过无数的坑,深知行业的不易.自从9 ...

  7. 【软件测试】Python自动化软件测试算是程序员吗?

    今天早上一觉醒来,突然萌生一个念头,[软件测试]软件测试算是程序员吗?左思右想,总感觉哪里不对.做了这么久的软件测试,还真没深究过这个问题.     基于,内事问百度的准则: 结果……     我刚发 ...

  8. 软件测试面试题,十年HR面试经验分享

    WeChat[代码小姐],快和我们一起进大厂,挑战高薪吧. 问:你在测试中发现了一个  bug ,但是开发经理认为这不是一个  bug ,你应该怎样解决. 1.将问题提交到缺陷管理库里面进行备案.2. ...

  9. 软件测试----xml文件介绍

    软件测试 目录 软件测试 一.什么是XML?: 二.XML和HTML的差异: 三.XML的特点 1.XML可以自定义标签 2.XML必须包含根元素 如上所示, 3.XML标签对大小写敏感 4.XML ...

  10. 2020软件测试工程师面试题汇总(内含答案)-看完BATJ面试官对你竖起大拇指!

    测试技术面试题 1.什么是兼容性测试?兼容性测试侧重哪些方面? 参考答案: 兼容测试主要是检查软件在不同的硬件平台.软件平台上是否可以正常的运行,即是通常说的软件的可移植性. 兼容的类型,如果细分的话 ...

随机推荐

  1. Synchronized 与Lock的不同之处

    Synchronized 与Lock的不同之处 用法不一样.synchronized既可以加在方法上,也可以加载特定的代码块上,括号中表示需要锁的对象.而Lock需要显示地指定起始位置和终止位置.sy ...

  2. Java 处理异常

    Java中 ,catch块和 finally块中都有可能发生异常,这时候就需要 用throw 抛出异常       类似于 C#里方法体中的 throw:

  3. openssl jia adress

    ???????????????????????????????????????????openssl证IP 首先创建openssl.cnf, 内容如下. 其中organizationalUnitNam ...

  4. WCF与Web API在应用上的选择

    在最近发布的Visual  Studio 2012及.NET 4.5中, 微软正式推出新的网络服务框架ASP.NET Web API.作为ASP.NET MVC  4的一部分,ASP.NET Web ...

  5. C# Microsoft.Office 操作Excel总结

     1.导入命名空间:  using Microsoft.Office.Interop.Excel; 2.如何打开已有excel文档,或者创建一个新的excel文档  Application app = ...

  6. Winmanager,NERDTree和MiniBufExplorer

    NERDTree树形浏览文件 MiniBufExplorer多文件同时编辑 Winmanager将NERDTree和MiniBufExplorer界面整合 下载 http://www.vim.org/ ...

  7. python实现进制转换(二、八、十六进制;十进制)

    python实现进制转换(二.八.十六进制:十进制) (一)十进制整数转为二.八.十六进制 1.format实现转换>>> format(2,"b") # (10 ...

  8. 听说你知道什么是锁 --JAVA

    I.java中的锁 1.1 什么是锁 ​ 在计算机科学中,锁(lock)与互斥(mutex)是一种同步机制,用于在许多线程执行时对资源的限制. ​ 锁通常需要硬件支持才可以有效实施.这种支持通常采用一 ...

  9. django获取数据queryset中的filter选项

    2.条件选取querySet的时候,filter表示=,exclude表示!=. querySet.distinct() 去重复__exact 精确等于 like 'aaa' __iexact 精确等 ...

  10. C++(四十三) — 函数模板机制

     1.普通函数与模板函数调用原则 函数模板可以像普通函数一样被重载: 当函数模板和普通函数都符合条件时,编译器优先考虑普通函数: 但如果函数模板产生一个更好的匹配,则选择函数模板: 可以通过空模板实参 ...