基础测试
一、软件测试核心技术
1、操作系统及Web基础
软件测试基础的基本概念,软件缺陷的定义,计算机的层次和软件的分类,常用DOS命令,互联网概述,网络体系及网络协议,B/S结构,C/S结构,虚拟机的安装与使用,安装操作系统,网络配置。计算硬件基础。
(1)什么是软件测试
定义:在软件中查找缺陷和错误,然后提交给开发人员进行修改,最终保证高质量的软件交到用户手中。
缺陷简称为bug。工作对象是软件。
二、内容介绍
第一阶段:手工测试基础
(1)进制和进制转换
(2)软件测试基础技术:测试报告;测试用例编写。
(3)测试管理工具:QC、禅道(中文免费,在企业中使用广泛)
(4)项目实践-手工测试项目
第二阶段:编程基础和数据库
(1)编程:Java
(2)数据库:oracle数据库(硅谷第一大软件公司,收购java语言)
(3)白盒测试(对编程有要求,要求读懂代码,会写编码)
第三阶段:功能自动化测试
(1)QTP(HP是一家自动化测试工具和测试管理工具的厂家,付费产品,功能全面,脚本语言:vbs)
(2)selenium(免费,语言:java、python、C#)
(3)项目练习
第四阶段:性能自动化
(1)性能自动化测试工具:
LoadRunner(hp收费,测试指标最全)
Jemter(免费,基本的测试指标没有LR全,不过基本的都可以覆盖(企业应用jemter比较多的是接口测试)
(2)手机测试
(3)Linux操作系统(熟练掌握基本命令)
三、具体内容
3.1手工测试基础
3.1.1计算机基础
第一讲
1、什么是软件
计算机=软件+硬件
软件=程序+文档。测试对象是程序+文档
扩展:软件的开发阶段如何划分?对测试工作有什么影响?
第一阶段:需求分析阶段
由需求分析人员,产出物《需求规格说明书》,正常应该由用户提供,但是用户做不到。
第二阶段:设计阶段
由系统架构师(分析师)完成,产出物《概要设计》、《详细设计》
第三阶段:编码阶段
开发人员,产出物程序
扩展:需求分析阶段产生的bug最多,大概55%,其次是设计阶段大概25%,最少是编码阶段大概15%,最后还有5%来源于兼容性问题和配置问题。
总结:1)测试的工作不能只测程序也要测文档。
2)测试工作应尽早介入而且贯穿整个开发阶段(尽早测试原则和不断测试原则)。
扩展:名称
PC:Personal Computer,个人电脑。在学习、办公、娱乐时,单个用户使用,配置相对较低。
Server:服务器,同时提供多个用户使用,配置要求较高。
2、什么是缺陷
定义一:
缺陷:defect bug
(1)缺陷的定义(5条,与顺序无关)
1)需求要求的功能没有实现。
2)实现了需求没有要求的功能。(画蛇添足)
3)软件中出现了明确指明不应该出现的错误。
4)需求虽未明确说明,但需要实现的没有实现。(需求有可能也有漏洞,有部分未考虑到,我们测试工作不能因为需求有问题,就导致测试有问题。比如窗口变大,内容没有同比增大)
5)软件难以理解、不易使用,运行缓慢等站在用户角度上一切觉得不好的地方。
扩展:软件的两个基本要素是什么?
A、功能要能够实现。
B、要具备强大的异常处理能力。(健壮性)比如除数是0,输入错误数据,报错要合理,让程序正常运行下去。(错误操作异常情况还能继续运行下去,否则直接崩溃)。要有错误输入情况的测试。
定义二:
美国国气和电子工程协会(IEEE)对缺陷的定义:
从产品内部看,缺陷是软件产品开发和维护过程中存在的错误、毛病等各种问题;
从产品外部看,缺陷是系统需要实现的某种功能的失效或违背。
3、了解软件测试
从软件(程序+文档)中尽可能多的查找缺陷的过程。
手工测试的日常主要职责:
设计、编写测试用例-执行测试用例,记录结果--可能会发现的缺陷--将缺陷提交到《缺陷报告》给开发部门
软件测试示例:
案例1:使用windows计算器完成下列计算
3*3
预期结果:9
实际结果:9
实现结果与预期结果相同--功能正常。
案例2:
操作步骤:
新建一个文档文档
输入:联通
保存后关闭该文档
再次打开该完档
预期结果:文档正确打开,显示“联通”字样。
4、了解软件测试的历史
5、计算机的层次
(1)计算机硬件、操作系统、应该软件
(2)OS的作用:作为计算机中的中间平台,能够管理计算机的硬件和软件。
(3)在裸机中有软件吗?
在裸机中有软件,是BIOS(basic input output system基本输入输出系统),写入在主板的cmos芯片中。
BIOS的作用:计算机在通电后,将控制权首先交给BIOS程序做“上电自检”--就是通电后,bios要检查硬件设备的设置和连接是否完好,如果没有问题就将控制权转交给os,如果连接有问题,会启动蜂鸣器发出报警声,同时阻止os的启动。
补充说明:如何进入BIOS?开机后按delete键。
常用的操作系统(至少说出5种):
(1)windows缺陷:稳定性和安全性
(2)unix(贝尔实验室):稳定性强,可移植性强,可以二次开发
(3)Linux:免费的自由软件,开源,在服务器os领域用户量大。 BAT:百度、腾讯、阿里巴巴等企业的服务器os都是在linux内核基础上二次开发的独特的系统平台。
(4)mac(苹果计算机):适合进行图形、图像设计。
(5)dos(ms-dos)系统:dos--disk os 磁盘操作系统。系统(1981)。特点:单用户的,命令式的操作系统。但是现在网络应用和硬件维护人员还在使用dos命令。
查看ip地址:ipconfig命令。
6、软件的分类
(1)按应用划分:系统软件、应用软件。
1)系统软件包括:
操作系统、驱动程序(管理和驱动例如打印机工作;U盘的驱动程序已提前安装好)、补丁程序。
2)应用软件包括:
娱乐类:游戏类、播放类、阅读器、社交类。
办公类:office系列、wps(国产办公软件)、OA(办公自动化)。
图形图像类:Photoshop、美图秀秀、3Dmax、玛雅、CAD。
管理类软件:民航管理系统、医疗管理系统、招投标管理系统、客户管理系统、教育类管理系统等。
数据类软件:数据库 Oracle数据库(甲骨文)、Mysql数据库(免费)、db2、sybase、sqlserver都是数据库,共同使用的语音是标准SQL语言。
(2)按结构分类:单机软件、分布式软件。
1)单机软件:不需要连接网络(既指广域网也包含局域网)就可以使用,例如:单机小游戏(扫雷、纸牌)、word、压缩软件、计算器。
2)分布式软件:需要在网络(既指广域网也包含局域网)环境下进行使用,例如:QQ、嘀嘀打车、网站(百度、新浪、腾讯等)。
A) C/S结构(client/server 客户端/服务器)。QQ、微信、嘀嘀打车
需要安装专门对应的客户端程序,才能得到该软件服务器提供的服务。
B) B/S结构(browser/server 浏览器/服务器)。
不需要安装对应客户端程序,只需要在浏览器中输入对应的网址就可以享受相应的服务器提供的服务。
常用浏览器如下:(要考虑浏览器的兼容问题)
第二讲
1、进制和进制转换
(1)进制基础
十进制(从十进制总结规律,套用到其他进制)
1)系数:0-9
2)进位规则:逢十进一
(2)进制转化
3.1.2软件测试基础
3.1.3测试工具
3.1.4项目实践