华为软件测试工程师面试题

1、请你分别写出OSI的七层网络结构图和TCP/IP的五层结构

OSI的七层结构从上到下依次是应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。TCP/IP的五层结构分别是应用层、运输层、网络层、链路层、物理层。

 

2、请你详细解释一下IP的定义,在哪个层上面,主要有什么作用?TCPUDP呢?

IP在网络层,TCPUDP在传输层,TCP/IP是传输控制协议/网际协议(Transmission Control Protocol / Internet Protocol)。TCP/IP之所以流行部分原因是它可以用在各种各样的信道和底层协议之上。确切地说,TCP/IP是一组包括TCP/IPUDP(User Datagram Protocol)ICMP(Internet Control Message Protocol)和其他一些协议的协议组。TCP/IP并不完全符合OSI的七层参考模型。传统的开放式系统互连参考模型,是一种通信协议的七层抽象参考模型,其中每一层执行某一特定任务。该模型的目的是使各种硬件在相同的层次上相互通信。这7层是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层、而TCP/IP采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别为:应用层是应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程控制访问协议(Telnet)等。传输层提供了节点间的数据传送服务,如传输控制协议(TCP)、用户数据报协议(UDP)等,TCPUDP给数据包加入传输数据并把它传输到。

 

3、全局变量和局部变量有什么区别?是怎么实现的?操作系统和编译器是怎么知道的

主要区别是变量的作用范围不同、全局变量是属于在全局范围内都有效,而局部变量只在声明此变量的作用域内有效。全局变量是属于实例的,在初始化对象的时候初始化,生命周期与该实例相同,之所以叫全局变量是因为在该实例的所有方法或属性都可以引用;局部变量是在实例方法内或static块中,生命周期从调用该方法到该方法退出,并且只有该方法能够引用之。全局变量和局部变量另一个区别是在存储器中位置不同,具体说,全局变量存储在数据段中,局部变量都有可能,一般来说存储在堆栈段。

 

操作系统和编译器通过内存分配的位置来知道全局变量在全局数据段,并且在程序被运行的时候被加载。

 

编译器通过语法词法的分析,判断出是全局变量还是局部变量。若是全局变量的话,编译器在将源码翻译成二进制代码时就为全局变量分配好一个虚拟地址,所以程序在对全局变量的操作时是对一个硬编码的地址操作。

 

局部变量,编译时不分配空间,而是以相对ebpesp的偏移量来表示局部变量的地址,所以,局部变量内存是在局部变量所在的函数被调用时才真正分配。以汇编的角度来看,函数执行时,局部变量在栈中分配,函数调用完毕释放局部变量对应的内存,另外,局部变量可以直接分配在寄存器中。

操作系统通过变量的分配地址就可以判断出是局部变量和全局变量。

 

4、白盒测试和黑盒测试、回归测试是什么?

白盒测试是根据代码实现设计测试用例。黑盒测试是根据业务逻辑来设计测试用例、回归测试是在开发修复完BUG后进行测试用例回归。

 

5、单元测试、集成测试、系统测试的侧重点是什么?

单元测试的侧重点是内部逻辑的正确性。集成测试的侧重点是与外部的衔接是否正确。系统测试的侧重点是整个系统的流程是否通畅。

 

6、一个缺陷测试报告的组成有哪些

缺陷编号、操作、结果、预期结果、错误原因、如何修复

 

7、基于web信息管理系统测试时应考虑的因素有哪些?

功能、性能、安全性

 

8、简述缺陷的生命周期

缺陷提交、缺陷分配、缺陷已修改、缺陷关闭

猜你喜欢

转载自www.cnblogs.com/lyz-123456/p/11827363.html