软件测试知识

1.TCP和UDP的区别:

TCP是面向连接的传输控制协议,

UDP提供了无连接的数据报服务;

TCP具有高可靠性,确保传输数据的正确性,不出现丢失或乱序;

UDP在传输数据前不建立连接,不对数据报进行检查与修改,无须等待对方的应答,所以会出现分组丢失、重复、乱序,应用程序需要负责传输可靠性方面的所有工作;

UDP具有较好的实时性,工作效率较TCP协议高。

TCP—传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能顺序地从一端传到另一端。

UDP—用户数据报协议,是一个简单的面向数据报的运输层协议。UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,不保证数据按顺序传递,故而传输速度很快。

2.和线程的区别:

1、进程是资源分配的最小单位,线程是程序执行的最小单位(资源调度的最小单位)

2、进程有自己的独立地址空间,每启动一个进程,系统就会为它分配地址空间,建立数据表来维护代码段、堆栈段和数据段,这种操作非常昂贵。

而线程是共享进程中的数据的,使用相同的地址空间,因此CPU切换一个线程的花费远比进程要小很多,同时创建一个线程的开销也比进程要小很多。

3、线程之间的通信更方便,同一进程下的线程共享全局变量、静态变量等数据,而进程之间的通信需要以通信的方式(IPC)进行。

4、但是多进程程序更健壮,多线程程序只要有一个线程死掉,整个进程也死掉了,而一个进程死掉并不会对另外一个进程造成影响,因为进程有自己独立的地址空间

3.cookie和session

cookie:访问某些网站后在本地存储的一些网络相关信息,下次访问时减少一些步骤。主要内容包括:名字、值、过期时间、路径和域。

session:存在服务器的一种用来存放用户数据的类HashTable结构。浏览器第一次发送请求时,服务器自动生成了一HashTable和一Session ID来唯一标识这个HashTable,并将其通过响应发送到浏览器。

cookie数据存放在客户的浏览器上,session数据放在服务器上;

cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session;session会在一定时间内保存在服务器上,当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应该使用cookie;单个cookie保存的数据不能超过4k,很多浏览器都限制一个站点最多保存20个cookie。

  1. 关系型数据库和非关系型数据库的优缺点?

关系型数据库的优点:

1、 易于维护:都是使用表结构,格式一致;

2、 使用方便:sql语言通用,可用于复杂查询;

3、 复杂操作:支持sql,可用于一个表以及多个表之间非常复杂的查询。

缺点:

1、 读写性能比较差,尤其是海量数据的高效率读写;

2、 固定的表结构,灵活度稍欠;

3、 高并发读写需求,传统关系数据库来说,硬盘I/O是一个很大的瓶颈。

非关系型数据库的优点:

1、 格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,使用灵活,应用场景广泛,而关系数据库则只支持基础类型。

2、 速度快:nosql可以使用硬盘活着随机存储器作为载体,而关系型数据库只能使用硬盘;

3、 高扩展性;

4、 成本低:nosql数据库部署简单,基本都是开元软件。

缺点:

1、 不提供sql支持,学习和使用成本较高;

2、 无事物处理;

3、 数据结构相对复杂,复杂查询方面稍欠。

4.软件测试流程:

1、需求:阅读需求,理解需求,与客户、开z发、架构多方交流,深入了解需求

2、测试计划: 根据需求估算测试所需资源(人力、设备等)、所需时间、功能点划分、如何合理分配安排资源等。

3、用例设计:根据测试计划、任务分配、功能点划分,设计合理的测试用例。

4、执行测试:根据测试用例的详细步骤,执行测试用例。–every tester(主要是初级测试人员)

5、执行结果记录和bug记录:对每个case记录测试的结果,有bug的在测试管理工具中编写bug记录。

6、defect tracking:追踪leader分配给你追踪的bug.直到
bug 修复。

7、测试报告:通过不断测试、追踪,直到被测软件达到测试需求要求,并没有重大bug.8、用户体验、软件发布等

5.软件缺陷的定义是什么?

1.软件未实现需求规格说明书中的要求;

2.出现需求规格说明书中指明不应该出现的错误;

3.软件未实现需求文档中虽未明确提及但应该实现的功能;

4.软件出现难以理解、不易使用或者运行速度慢等问题都可以认为是软件缺陷;

6.如果在测试过程中发现了bug,可是开发不承认这是bug,你会怎么办?

回答:首先还是应该回归到客户需求上面,确认这个问题到底属不属于一个缺陷,如果确实是则要和开发同事解释清楚;如果开发还是坚持自己的想法,则询问同事或者测试组长的意见,讨论这个问题到底属不属于缺陷问题,如果大家都觉得是则需要和开发解释清楚。

7.给你一个杯子如何测试?

界面测试:查看杯子的外观是否得体。(外形,图案)

易用性:杯子是否烫手,是否有防滑措施,是否方便饮水,是否易用手端着或手拿。

安全性:使用过程中杯口是否容易给身体造成伤害,杯子有没有毒和细菌、

可靠性:杯子从不同高度掉下的损坏程度。

稳定性:杯子一直盛着水,时间长了是否会漏水

兼容性:是否可容纳高温度水、果汁、酒精、汽油等。

用户文档:用户使用手册上是否有对杯子的使用方法进行限制,是否出现使用过程中友好的提示、该注意的问题、使用环境等有详细的描述。

8.性能测试流程

1.性能需求的分析:测试人员需要与需求人员(客户)、领导及项目相关人员进行沟通,同时收集各种项目资料,对系统进行分析,确认测试的意图;另外,还需要客户对性能的态度;重点关注指标。

2.性能测试计划:测试环境的准备;软硬件配置、网络状况等;测试数据的准备;

(1)测试的策略:设计符合需求的测试场景,需要对系统的哪些业务模块进行测试。

(2)明确人员配备:除测试人员,还包括开发,DBA、运维等人员的参与协助,性能测试的时间安排。

3、测试环境的搭建

(1)测试用例:期望结果—由用户/客户决定,写清步骤

(2)用例评审

(3)编写脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值