软件测试基础

软件测试基础

1.软件测试的定义
软件测试:一个用来促进鉴定软件的正确性、完整性、完全性和质量的过程。是一种实际输出和预期输出之间的审核或者比较过程。

应用场景

游戏型测试,电商型测试,金融型测试,嵌入式测试等。

软件架构分类

B/S架构软件:WEB端,客户端为浏览器,比如百度,hao123,
C/S架构软件:APP端,客户端需要安装专门软件,比如QQ,微信等。

软件测试的定义和原则

软件测试的定义:
通过人工或者自动化的方式来验证软件的实际结果与用户需求是否一致的过程。

软件测试的原则:
1.尽早进入软件测试
2.穷尽测试是不可行的
3.程序员应避免检查自己的程序
​4.严格执行测试计划,排除测试的随意性
​5.应当对每一个测试结果做全面的检查
​6.妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便
​7.设计测试用例时,应当包括合理的输入数据和不合理的输入数据

测试模型的介绍

软件生命周期模型:
螺旋模型(了解)
瀑布型生命周期(了解)
迭代模型(了解)
快速原型模型(了解)
V模型
W模型
V模型的特点是先开发后测试。
V模型的流程:用户需求-需求分析-概要设计-详细设计-软件编码-单元测试-集成测试-系统测试-验收测试。
V模型的优点就是每一个阶段都清晰明了,便于控制开发的每一个过程,缺点的话就是测试介入的比较晚,对于前期的一些缺陷无从发现和修改。
W模型的特点是开发和测试同步进行,从而有利于尽早的发现问题。
W模型的流程:W模型是双V结构,左V是开发,右V是测试。用户需求-需求分析-概要设计-详细设计-编码-集成-实施-交付,验收测试设计-确认与系统测试设计-集成测试设计-单元测试设计-单元测试-集成测试-系统测试-验收测试。

软件测试的流程

公司流程,首先项目立项–产品会出一个产品说明书–需求人员编写需求文档–需求评审–开发编写详细设计–测试编写测试用例–测试用例进行评审–开发进行编码–测试部署环境进行测试–首先进行冒烟测试–然后进行功能测试–出现bug通过禅道进行记录跟踪–给开发进行修改–测试进行验证–然后进行回归测试–接下来验收测试–验收测试通过–上线。

软件测试的分类

1.按技术划分
黑盒测试:不需要了解内部逻辑,通过软件来验证是否满足用户需求的测试方式。
白盒测试:按照内部逻辑结构和编码结构设计测试并完成测试的方式。
灰盒测试:一种基于程序运行时的外部表现同时又结合程序内部结构来设计测试数据的测试方法。
2.按阶段划分
单元测试:对一个模块、一个方法(函数)或者一个类来进行正确性检验的测试方法
​集成测试:单元测试后,将单独的模块按照设计要求组装成为子系统或系统,作为整体进行测试的测试方法
​系统测试:集成测试后,将硬件、软件看作一个整体,对系统的功能及性能的总体测试
​验收测试:系统测试后以用户测试为主,或有测试人员共同参与检验软件质量的测试方法
3.按内容划分
功能测试:
​功能测试:根据产品操作描述和需求文档,测试一个产品的特性和可操作行为是否满足用户需求的测试方法
​界面测试:测试用户界面的功能模块的布局是否符合客户使用习惯,界面操作便捷性、导航简单易懂性的测试
​冒烟测试:验证系统的核心功能是否能够正常运行的测试方法
​回归测试:指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误的测试方法
​业务逻辑测试:在基本的功能点都已合格的基础上,准备多种测试数据,来驱动各种约束条件下业务流程,确定最终输出的结果是否符合预期的测试
​易用性测试:指用户使用软件时是否感觉方便的测试
性能测试:
性能测试:通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行校验的测试方法
​压力测试:通过逐步增加系统负载,测试系统性能的变化,并确定在什么条件下系统性能处于失效状态
​负载测试:通过逐步增加系统负载,测试系统性能的变化,在满足性能指标的情况下,系统所能承受的最大负载量的测试
​并发测试:是一个负载测试和压力测试的过程,即逐渐增加并发用户数负载直到系统的瓶颈,通过分析资源监控指标等来确定系统并发性能
兼容性测试:
游览器的,不同版本,分辨率
​手机型号,不同版本,分辨率
4.按其他划分
Alpha测试:俗称内测,α测试。内部环境下的测试;开发人员或测试人员在现场
​Beta测试:俗称外测、公测,β测试。生产环境下的测试;开发人员和测试人员都不在现场

常识知识

PRD 产品需求文档 Product Requirement Document
PM产品经理 RD:研究和开发人员 FE前端开发人员 QA测试 OP运维 UE用户体验 case 测试用例

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
C语言是一种广泛使用的编程语言,它具有高效、灵活、可移植性强等特点,被广泛应用于操作系统、嵌入式系统、数据库、编译器等领域的开发。C语言的基本语法包括变量、数据类型、运算符、控制结构(如if语句、循环语句等)、函数、指针等。在编写C程序时,需要注意变量的声明和定义、指针的使用、内存的分配与释放等问题。C语言中常用的数据结构包括: 1. 数组:一种存储同类型数据的结构,可以进行索引访问和修改。 2. 链表:一种存储不同类型数据的结构,每个节点包含数据和指向下一个节点的指针。 3. 栈:一种后进先出(LIFO)的数据结构,可以通过压入(push)和弹出(pop)操作进行数据的存储和取出。 4. 队列:一种先进先出(FIFO)的数据结构,可以通过入队(enqueue)和出队(dequeue)操作进行数据的存储和取出。 5. 树:一种存储具有父子关系的数据结构,可以通过中序遍历、前序遍历和后序遍历等方式进行数据的访问和修改。 6. 图:一种存储具有节点和边关系的数据结构,可以通过广度优先搜索、深度优先搜索等方式进行数据的访问和修改。 这些数据结构在C语言中都有相应的实现方式,可以应用于各种不同的场景。C语言中的各种数据结构都有其优缺点,下面列举一些常见的数据结构的优缺点: 数组: 优点:访问和修改元素的速度非常快,适用于需要频繁读取和修改数据的场合。 缺点:数组的长度是固定的,不适合存储大小不固定的动态数据,另外数组在内存中是连续分配的,当数组较大时可能会导致内存碎片化。 链表: 优点:可以方便地插入和删除元素,适用于需要频繁插入和删除数据的场合。 缺点:访问和修改元素的速度相对较慢,因为需要遍历链表找到指定的节点。 栈: 优点:后进先出(LIFO)的特性使得栈在处理递归和括号匹配等问题时非常方便。 缺点:栈的空间有限,当数据量较大时可能会导致栈溢出。 队列: 优点:先进先出(FIFO)的特性使得

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值