admin 管理员组文章数量: 887021
1.B/S架构和C/S架构区别
b---browser 浏览器
c---clent 客户端
s---server 服务端
比较:
标准:相对于cs架构来说bs架构的两端都是在使用现成的成熟产品。所以bs会显示的标准一些
效率:相对bs架构来说cs中的客户端可以分担一些数据的处理,因此执行效率会高一些
安全:bs架构当中得到的数据传输都是以HTTP协议进行的输出,而HTTP协议又是明文传输。可以被抓包,所以相对于cs架构来说bs就显得不那么安全(相对的)
升级:bs架构只需要在服务器端将数据进地更新,前台只需要刷新页面就可以完成升级,而cs架构当中必须要将两端都进行更新
开发成本:相对于bs架构来说cs当中的客户端需要自己开发,所以相对于来说成本会高一些
cs又有一些特殊的测试:热启动,消息推送,中断测试。。。。
2.HTTP协议
http协议又叫超文本传输协议,在网络请求的时候,我们基本上是使用http协议
http协议包括请求和响应
请求中包括:请求地址,请求方式,请求方式包括get请求和post请求,get和post的区别是get请求是在地址栏后边
跟随请求参数,但是请求参数大小是有限制,不同浏览器是不同的。一般是4KB。post请求主要用于
向服务器提交请求参数。post请求的参数是放到请求实体内容中的,相对get请求较为安全一些
另外请求中会有各种请求头信息,比如支持的申诉局类型,请求的来源位置,以及Cookie头等相关头信息
响应,主要包含响应的状态码,像200(),404(),500(),304(),307()
还有各种响应头信息,比如设置缓存的响应头,Content-Type内容类型,设置cookie头信息
3.POST与GET区别
1.get使用url或cookie传参,而post将数据放在body中
2.get的url会有长度上的限制,则post的数据则可以非常大
3.post比get安全,因为数据在地址栏上不可见
4.一般ge请求用来获取数据,post请求用来发送数据
4.Cookie和Session的区别与联系
客户端技术 Cookie
服务端技术 Session
Cookie是把数据保存在浏览器端的内存中
Session把数据保存在服务器端的内存中
cookie与session的联系:
当服务器端生成一个session时就会向客户端发送一个cookie保存在客户端,这个cookie保存的是session的sessionld。这样才能保证客户端发起请求后客户端已经登录
的用户能够与服务器端成千上万的session中准确匹配到已经保存了该用户信息的session,同时也能够确保不同页面之间传值时的正确匹配。
5.测试的目的
1.发现并修复软件当中存在的缺陷,从而提高用户对产品的使用信心
2.记录软件运行过程中产生的一些数据,从而为决策提供数据支持
3.降低同类产品开发遇到问题的风险
6.软件测试原则
1.测试证明软件存在缺陷:无论执行什么样的测试操作都能证明当前软件是有缺陷的
2.不能执行穷尽测试:有些功能是没有办法将所有的测试情况都逻辑出来,所以任何的测试操作都有结束的时间
3.缺陷存在群集现象:对于软件功能说,核心功能占20%,非核心80%。在实际工作中我们会集中测试20%的核心功能,所以这个部分发现缺陷的几率就会高于80%
因此我们就会遇到缺陷都集中在20%功能模块里的现象
4.某些测试需要依赖特殊的环境
5.测试应尽早介入:为了更多的发现和更好的解决软件中的缺陷。我们追求测试工作尽早
6.杀虫剂现象:同样的一个测试用例不能重的执行多次,因此软件会对它产生免疫
不存在缺陷谬论:任何软件不可能是完美的
7.软件测试分为哪几个阶段?
单元测试:是指对软件中最小可测试单元进行检查和验证
单元测试当一段代码完成后,是由白盒测试工程师或者开发人员自行测试,比如java中执行单元测试叫做junit测试
目前大部分公司单元测试由开发人员简单编译和调试一下自己的程序,没有相应的单元测试计划
单元测试方式:先静态地观察代码是否符合规范,然后动态地运行一下代码,检查运行结果
集成测试:是单元测试的下一个阶段,是指将通过测试单元模块组装成系统或者子系统,再进行测试,重点测试不同模块的接口部分
集成测试也是由白盒测试或者开发人员来完成
系统测试:(黑盒测试)在经过集成测试的单元模块,按照整体需求规格说明书,进行一套有效严格的测试,保证软件的正常运行。(集成测试偏重于技术角度,系统测试偏重于业务角度)
回归测试:(回归测试在测试生命周期中是很重要的一部分,会进行多次回归测试),是指在发生修改之后,再重新回去测试一下,避免修改的内容导致了其他的错误。验证之前出现过但已修复好的缺陷不再重新出现。
冒烟测试:(是自由测试的一种)是指开发者功能完成后的完整性功能测试,发现问题后反馈给开发者进行修改,然后看这次修改是否真的修复解决了这bug,或者对其他模块造成了影响,这个时候就需要冒烟测试来进行验证,缺点就是覆盖率低。
验收测试:也叫交付测试,是针对用户需求、业务流程进行的整体测试,确认是否满足验收标准,由用户、客户看是否接受系统,可以部署上线。
Alpha测试:用户在开发者的场所进行测试,是一个可控的环境中测试的。
Beta测试:是用户在对软件产品进行测试,开发者不在现场,用户对测试过程中遇到的bug进行记录,开发并对它进行修改,再测试,直到用户觉得可以了,就部署上线
8.单元测试与集成测试的侧重点
单元测试是对程序最小可测的模块进行测试
集成测试是把各个模块连接起来时,穿越模块接口的数据是否会丢失
9.系统测试范围
功能测试,用户体验测试,性能测试,ui测试兼容性测试,安装测试,文档测试,稳定性测试等
10.a测试与ß测试的区别
a测试:公司组织的内部人员进行的测试
ß测试:公司组织的典型客户在实际生活中使用。
11.验收测试怎么做?
在UAT测试之前,我们会制定测试方案,选择基线用例,即级别高的用例,在UAT测试环境上进行测试,如果测试通过,验收测试就通过了。
12.白盒、黑盒和灰盒测试区别
白盒测试:对程序的内部结构与算法进行的测试
黑盒测试:不考虑程序的内部结果,只检查程序是否实现了需求的功能
灰盒测试:关注系统接口所实现的功能,是否和需求一致。
13.冒烟测试的目的
检查程序的基本功能是否正常
14.回归测试怎么做?
首先,把bug单对应的用例执行一遍,还要检查有数据交互的模块会不会受影响,有没有引入新的问题;项目上线前,还要把当前版本的重要功能以及冒烟测试的用例都回归一遍,确保重要功能上线后不出问题。
15.全部回归与部分回归的区别?
全量回归:对软件的新版本测试时,重复执行上一个版本测试时使用的测试用例,防止以前没有的问题现在出问题了
部分回归:当开发修复某个bug时,我们需要去检查该bug是否被修复,还需要检查与之相关联的模块是否受到影响。
16.需求分析的目的
澄清需求,提取测试点
17.测试计划的目的
借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,
保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更
18.什么时候开始写测试计划
需求分析之后
19.由谁来编写测试计划
一般都是由测试经理或者测试组长来编写
20.测试计划的内容
1.简介 项目的介绍 测试负责人和开发负责人 项目的起始日期。。。。
2.参考文档和提交文件
3.进度安排 模块安排 对应负责人 时间安排。。。。
4.测试资源
5.严重程度和优先级
6.风险分析 比如说项目优先级不高 开发人员数量不足或者开发技术不到家 节假日。。。。
7.测试策略 功能测试 性能测试 接口测试。。。。
21.结束条件(项目上线的条件)
需求德覆盖率、用例的执行率和缺陷的遗留率达到质量目标。
通常来说:需求覆盖率和用例执行率需要达到100%
致命/严重的缺陷需要当天解决,轻微/一般遗留率不得超过30
本文标签: 面试题
版权声明:本文标题:面试题(二) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1729143726h1323282.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论