后端
1、CS架构和BS架构
CS:(client/Server)客户端-服务端架构
BS:(browser/Server)浏览器-服务端架构
两种区别总结:
CS即客户端-服务器架构与BS即浏览器-服务器架构,区别总结:
效率:c/s效率高,某些内容已经安装在系统中了,b/s每次都要加载最新的数据
升级:b/s无缝升级;c/s删除老版本再安装新版本
安全:c/s更安全,需要安装、注册、登录;b/s有浏览器即可使用,安全程度低
开发成本:b/s成本低;c/s需要不同的系统要不同的开发人员,成本高
2、语言发展史
机器语言:机器码(0和1)计算机底层能识别
汇编语言:最接近机器码的语言
高级语言:c php java python
测试理论
3、按阶段分类
单元测试:也为模块测试,测试最小的程序模块
集成测试:也叫组装测试,在单元测试的基础之上,把单独的模块合在一起
系统测试:指的是把整个系统软件看成一个整体进行测试
验收测试:(1)测试:Alpha是内测版本,通常只在软件开发者内部交流,或忠实的粉丝之间发布,该版本软件的bug较多
(2)测试:Beta是公测版本,是对所有用户开放的测试版本,免费发布
(3) 测试:Gamma版本就是正式版本的候选版本
4、按是否查看源代码分类
黑盒测试:关注业务逻辑,输入内容与输出结果之间
白盒测试:研究里面的源代码和程序结构
灰盒测试:黑白之间的状态
5、按是否运行分类
静态测试:不实际运行被测软件,只是静态地检查程序代码、界面或文档中可能存在的错误过程
动态测试:实际运行被测软件,输入相应的测试数据,检查实际输出结果和预期结果是否相符合的过程
6、按是否自动化份分类
人工测试:测试人员手工进行的测试
自动化测试:利用代码或者工具帮助人工进行测试
7、测试策略
冒烟测试:对系统进行最基本功能的测试,保证基本的功能和流程能走通
回归测试:当修复一个bug之后,把之前的测试用例在新的代码下进行再次测试
随机测试:对被测软件的一些重要功能进行复测,包括那些当前的测试用例没有覆盖到的部分
探索性测试:同时设计测试和执行测试,测试人员通过测试来不断学习测试
软件缺陷
软件缺陷:指软件或程序中存在的各种问题及错误;会导致软件产品在某种程度上不能满足用户需求
8、软件缺陷的判定标准
(1)软件未达到需求规格说明书中标明的功能
(2) 软件出现了需求规格说明书指明不会出现错误的地方
(3) 软件的功能超出了需求规格说明书指明的范围
(4) 软件未达到需求规格说明书虽未指明但应该达到的目标
(5)软件测试人员认为软件难以理解,不易使用,运行速度慢,或者最终用户体验不好。
9、软件缺陷产生的原因
(1)需求解释、记录或定义错误
(2)设计文档说明存在错误或者拼写错误
(3)编码说明、程序代码有误
(4)硬件或软件系统上存在错误
10、软件缺陷的类型
功能错误、界面错误、兼容性错误、易用性错误、改进建议
软件测试用例
软件测试定义:人工和自动化测试,找到预期结果和实际结果之间的差异
软件测试目的:找到软件中的问题并修复
11、测试原则
(1)只能证明软件存在问题,不能证明不存在问题
(2)不能进行穷尽测试,应该分类别测试
(3)测试工作要尽早介入,降低修复成本
(4)缺陷存在集群现象,二八原则:20%的模块中存在80%的缺陷
(5)测试依赖于环境(系统、浏览器)
(6)杀虫剂现象
(7)不存在缺陷谬论
12、测试用例
Test Case为特定的目的而设计的一组测试输入、执行条件和预期结果的文档。测什么?怎么测?
13、测试用例的八大要素
软件测试用例的基本要素包括用例编号、用例标题、测试项目、用例级别、预置条件、测试输入、执行步骤、预期结果