软件测试常考面试题及参考答案(待更新)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/moakey/article/details/78808696

笔试题

1、HTTP协议有什么特点?有哪几类状态码,分别表示什么意思?

特点:
* 无连接:限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。
* 媒体独立:只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。
* 无状态:无状态是指协议对于事务处理没有记忆能力。

状态码分类和含义:
1xx: 指示信息:表示请求已接收, 继续处理。
2xx: 成功:表示请求已被成功接收、 理解、 接受。
3xx: 重定向:要完成请求必须进行更进一步的操作。
4xx: 客户端错误:请求有语法错误或请求无法实现。
5xx: 服务器端错误:服务器未能实现合法的请求。

2、列举出10个你常用的shell命令,并说明其作用。
ls 显示当前目录下的所有文件及文件夹
ll 以详细方式显示所有文件与文件夹。(相当于 ls -l 命令)
cd /test 打开test文件夹(按tab键盘自动补齐)
cd .. 返回上一级目录
pwd 显示当前目录路径
vi test.properties 编辑test.properties文件(按i编辑,esc+q!不保存退出,esc+wq保存退出)
mkdir test 创建文件夹test
touch test.txt 创建文件
cp test.txt test2.txt 把test.txt文件当前文件夹下复制出个test2.txt
rm test.txt 删除test.txt文件
mv test.txt test2.txt 将test.txt改名为test2.txt
…….

3、你认为测试工程师应该掌握哪些技术,其中有哪些是你已经掌握的?

根据自己所掌握的测试技术自由发挥,参考:
- 软件测试基本知识,包括测试方法(边界值,等价类,因果图),对项目周期(测试流程)的理解,还有文档能力(计划,用例,报告)
- 测试辅助能力(Linux,SQL)
- 自动化测试(UI)–前端技术,编码能力,工具,自动化框架
- 性能测试–工具或编程,系统架构的认识,性能测试流程

4、简述cookies和session是怎么工作的?

Cookie机制: 正统的Cookie分发是通过扩展HTTP协议来实现的,服务器通过在 HTTP 的响应头中加上一行特殊的指示以提示浏览器按照指示生成相应的Cookie。然而纯粹的客户端脚本如JavaScript 或者 VBScript也可以生成 Cookie。而Cookie的使用是由浏览器按照一定的原则在后台自动发送给服务器的。浏览器检查所有存储的Cookie,如果某个Cookie所声明的作用范围大于等于将要请求的资源所在的位置, 则把该cookie附在请求资源的HTTP请求头上发送给服务器。

Session 机制: Session 机制是一种服务器端的机制,服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息。

5、你认为WEB测试和APP测试有什么不同?

工作平台不同:Web主要运行在浏览器上面,APP的运行基于移动操作系统(手机机型)。
界面开发技术不同:Web主要通过前端技术(HTML/JS/CSS)来设计页面,APP(Android)主要通过布局文件来设计界面。
测试手法不同:性能测试中,WEB测试只需要测试响应时间这个要素,App测试中还需要考虑流量测试和耗电量测试。
另外由于App测试基于手机设备,还有一些手机设备的专项测试。如交叉事件测试,操作类型测试,网络测试(弱网测试,网络切换)

6、用你熟悉的一种编程语言,写出计算以下结果的代码。1+2+3+…+100=?

Python

j = 0

for i in range(1,101):
    j =j + i

print("计算结果为:%d" %j)

7、简单解释以下专业术语:

LAMP:Linux + Apache + MySQL + PHP (PHP开发经典架构)
Nginx:是一个高性能的HTTP和反向代理服务器。
Firebug:firefox下的一个扩展插件,能够调试所有网站语言。
Bluetooth:蓝牙,是一种无线技术标准。
WiFi:Wi-Fi是一种允许电子设备连接到一个无线局域网(WLAN)的技术。
NFC:近场通信(Near Field Communication,NFC)是一种短距高频的无线电技术。
LVS:是Linux Virtual Server的简写,Linux虚拟服务器。
VPN:是Virtual Private Network的简写,虚拟专用网络

面试题

1、为什么要在一个团队中开展软件测试工作?
因为没有经过测试的软件很难在发布之前知道该软件的质量,就好比ISO质量认证一样,测试同样也需要质量的保证,这个时候就需要在团队中开展软件测试的工作。在测试的过程发现软件中存在的问题,及时让开发人员得知并修改问题,在即将发布时,从测试报告中得出软件的质量情况。

2、您在以往的测试工作中都曾经具体从事过哪些工作?其中最擅长哪部分工作?
我曾经做过web测试,后台测试,客户端软件,其中包括功能测试,性能测试,用户体验测试。最擅长的是功能测试

展开阅读全文

没有更多推荐了,返回首页