软件测试面试题(3)
1、打开一个web网站主页,发现网页无法访问,该如何去排查和定位这个问题?
答:1)查看服务是否启动。2)ping一下看是否ping得通。3)查看端口是否被监听。
2、如何降低和开发人员的bug沟通成本?
答:1)每一个bug描述要清楚,bug标题指明是什么bug,bug内容的步骤清晰可操作,根据步骤可以重现bug,bug的实际结果和预期结果要明确,尽量截图说明,或者录制视频说明,或者附上错误日志,降低修改bug时需要询问测试的频率。
2)尽量使用bug管理工具,这样不管是开发修改bug,测试提交跟踪bug都非常方便,减少沟通成本。
3)指定一份bug流程手册,手册中说明各种情况下,bug流程操作的说明。
3、没有发现bug的测试是否是有价值的?为什么?
分析:这个问题要分两种情况讨论。
答:1)测试用例质量较高,覆盖了需求中的测试点,并且测试人员认真负责,没发现bug,说明程序质量很好,这种测试的价值就很大,能够去评判软件的质量。
2)测试的质量不高,测试人员的责任心不强,没发现bug,这种测试的价值就比较低,不能用这个测试结果去评判软件的质量。
ps:在实际工作中,大部分情况测试都是能发现bug的,如果没有发现bug,思考你还有哪些测试场景没有测试到位,对需求理解是否到位。
4、对一个web系统进行评估,考虑哪些因素?
答:吞吐量和响应时间。
5、http协议中post和get的区别?数据分别放于哪儿?
答:二者实现的功能相同,都是客户端提交数据给服务器端,只是实现的机制不一样。get方法是通过网页的URL地址实现数据的传送,而服务器端实现从URL地址中解析数据;而post方法则是通过表单的方式提交,数据采取加密的方式传送,服务器接到请求后解析数据。从安全角度看,get安全性应该不如post,get方法可以从浏览器直接提交数据,而post必须从网页提交表单。post置于消息体,get置于消息头。
6、http协议与HTTPS协议的区别?
HTTPS和HTTP的区别主要如下:
1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
7、缓存与cookies的区别?
C/S 指的是客户端与服务器模式。B/S指的是浏览器与服务器的模式
B/S系统更多需要关注浏览器兼容性方面的问题,C/S测试更多需要关注客户端软件安装,卸载方面的问题。其他功能点方面,都可以采用界面测试方法进行测。