如何设计测试用例?
1.分析测试需求
2.设计测试用例
3.测试用例评审
4.测试环境搭建=软件+硬件+网络+数据+测试工具
5.执行测试并记录缺陷
6.测试总结及操作手册的生成
软件工程的简要步骤
1.可行性分析
2.需求分析
3.概要设计
4.详细设计
5.编码测试
6.运行维护
线程与进程
主要区别:同一进程中,线程在共享的内存空间中进行。而进程在不同的内存空间中进行。
进程:正在运行的应用程序称为进程。每个进程有自己独立的内存空间。
线程:线程是一个轻量级的子进程,是最小的处理单元,是一个单独的执行路径。
线程是进程的子集。
线程是独立的,若一个线程异常,不会影响其他线程。
1)多线程编程中,当一个线程崩溃,则此线程所在的进程也会崩溃。
2)多线程于多进程相比,IO多路复用的最大优势是开销小,系统不需要建立新的进程或线程。也不必维护这些线程或进程。
3)多线程擅长处理并发长连接,但不适用于连接频繁产生关闭的情况。
路由器与交换机
1)外形上:交换机端口较多,路由器端口较少,体积较小。
路由器一般集成了交换机的功能,LAN口作为交换机的端口使用,WAM口用于连接外网的端口。
2)工作层次不同:交换机在数据链路层,实现数据帧的转发;路由器在网络层,起到了网络互联的作用。
3)数据的转发对象不同:交换机根据MAC地址转发数据帧,路由器根据IP地址转发数据帧。
IP地址决定最终数据要到达某一台主机,而MAC地址决定下一跳要交给哪一台设备(一般是路由器或交换机)。
4)分工不同:交换机主要用于组建局域网,而路由器负责让主机连接外网。
多台主机可以通过网线连接到交换机,组成局域网,就可以将数据发送给局域网中其他主机,但不能访问外网。
通过路由器转换为公网之后可以访问外网。
5)交换机分割冲突域,但不分割广播域;路由器分割广播域。
TCP与UDP
1、TCP面向连接,UDP面向无连接
TCP提供可靠的服务,即通过TCP传输的数据不会丢失,没有重复,并且按顺序到达,UDP没有可靠性。
2、TCP面向字节流,UDP面向报文。
TCP是全双工的可靠信道,UDP是不可靠信道。
为确保可靠性,TCP为每个分组提供序列号,并且还确保顺序接收发送到接收端实体的分组。然后,接收实体向成功接收的字节发回确认(ACK);若发送实体在合理的往返延迟(RTT)内未收到确认,则重传。
面向连接意味着两个使用TCP的应用(客户,服务器)在彼此交换数据包之前必须先建立一个TCP连接,类似打电话。
什么是兼容性测试?
兼容测试主要检查软件在不同的软硬件平台是否可以正常的运行,即通常说的可移植性。
类型细分包括平台兼容,网络兼容,数据库兼容,以及数据格式的兼容。
兼容测试的重点是对兼容环境的分析。通常是在运行软件的环境不是很确定的情况下,需要做兼容测试。根据软件运行的需要,或者根据需求文档,可以得出做兼容测试的兼容环境。
兼容于配置测试的区别在于,做配置测试通常不是clean OS下的测试,而兼容测试多是在clean OS下做的。
请描述使用bugzilla缺陷管理工具对软件缺陷(bug)跟踪的管理流程。
1、发现问题时,新建一个bug,将bug的信息填写完整。
2、当bug被改好后将状态改为已修改,或标记为不确定状态。
3、当bug再次出现时可以将状态改为再次打开。
请描述测试用例设计的完整过程。
1、需求分析;
2、根据需求得出测试需求;
3、设计测试方案并评审测试方案;
4、方案评审通过后设计测试用例,并对测试用例进行评审。
单元测试的策略有哪些?
逻辑覆盖、循环覆盖、同行评审、代码走查、代码评审、程序数据流分析
什么是并发?如何在loadrunner中进行并发测试?
在同一时间内,支持多个不同的操作。
loadrunner提供IP伪装,集合点,配合虚拟用户的设计,以及在多台电脑上的配置,可以比较好的进行并发模拟。
性能测试(performance testing)
性能测试是指通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。
主要包括以下三个方面:应用在客户端性能的测试、应用在网络上性能的测试、应用在服务器端性能的测试。
Alpha测试与beta测试?
alpha测试是有一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。
beta测试即公测。
做好测试计划工作的关键?
软件测试计划就是在软件测试工作正式实施之前明确测试的对象,并且通过对资源、时间、风险、测试范围和预算等方面的综合分析和规划,保证有效的测试进行。
关键:目的、管理、规范
一套完整的测试应该由哪些阶段组成?
测试计划、侧式设计与开发、测试实施、测试评审、测试结果。
单元测试的主要内容?
模块接口测试、局部数据结构测试、路经测试、错误处理测试、边界测试。
集成测试与系统测试关系?
1、集成测试的主要依据是概要设计说明书;系统测试主要依据是需求设计说明书
2、集成测试是系统模块的测试;系统测试是对整个系统测试,包括相关的软硬件平台、网络以及相关外设的测试。
如何理解压力、负载、性能测试?
性能测试是一个较大的范围,其本身包含了性能、强度、压力、负载等多方面的测试内容。
1、压力测试是对服务器的稳定性以及负载能力等方面的测试,是一种很平常的测试。增大访问系统的用户数量,或者几个用户进行大数据量操作都是压力测试。压力测试的主要任务
2、负载测试是压力相对较大的测试。主要是测试系统在一种或者集中极限条件下的应对能力。100个用户对系统进行连续半个小时的访问可以看作压力测试,那么连续访问八个小时就是负载测试,1000个用户连续访问一小时也可以看作负载测试。