一测试基础知识
1 请简述软件测试的全过程并描述冒烟测试、系统测试、集成测试、安装测试的侧重点
一般测试流程:
1.需求分析阶段:主要就是对业务的学习,分析需求点。
2.测试计划阶段:测试组长就要根据编写《测试计划》,其中包括人员,软件硬件资源,测试点,集成顺序,进度安排和风险识别等内容。
3.测试设计阶段:测试
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
要求根据每个需求点设计出包括需求点简介,测试思路和详细测试方法三部分的方案。《测试方案》编写完成需要进行评审。
4.测试方案阶段:主要是对测试用例和规程的设计。测试用例是根据《测试方案》来编写的,通过《测试方案》阶段,测试人员对整个系统需求有了详细的理解。这时开始编写用例才能保证用例的可执行和对需求的覆盖。测试用例需要包括测试项,用例级别,预置条件,操作步骤和预期结果。其中操作步骤和预期结果需要编写详细和明确。测试用例应该覆盖测试方案,而测试方案又覆盖了测试需求点,这样才能保证客户需求不遗漏。同样,测试用例也需要评审。
5.测试执行阶段:执行测试用例,及时提交有质量的Bug和测试日报,测试报告等相关文档。
冒烟测试的对象是新编译的每一个需要正式测试的软件版本,目的是确认软件基本功能正常,可以进行后续的正式测试工作。
安装测试是确保软件在正常情况和异常情况下,例如,进行首次安装、升级、完整的或自定义的安装都能进行安装的测试。异常情况包括磁盘空间不足、缺少
目录
工贸企业有限空间作业目录特种设备作业人员作业种类与目录特种设备作业人员目录1类医疗器械目录高值医用耗材参考目录
创建权限等场景。核实软件在安装后可立即正常运行。安装测试包括测试安装代码以及安装手册。安装手册提供如何进行安装,安装代码提供安装一些程序能够运行的基础数据。
集成测试是指一个应用系统的各个部件的联合测试,以决定他们能否在一起共同工作并没有冲突。部件可以是代码块、独立的应用、网络上的客户端或服务器端程序。这种类型的测试尤其与客户服务器和分布式系统有关。一般集成测试以前,单元测试需要完成。
集成测试是单元测试的逻辑扩展。它的最简单的形式是:两个已经测试过的单元组合成一个组件,并且测试它们之间的接口。从这一层意义上讲,组件是指多个单元的集成聚合。在现实方案中,许多单元组合成组件,而这些组件又聚合成程序的更大部分。方法是测试片段的组合,并最终扩展进程,将您的模块与其他组的模块一起测试。最后,将构成进程的所有模块一起测试。此外,如果程序由多个进程组成,应该成对测试它们,而不是同时测试所有进程。
集成测试识别组合单元时出现的问题。通过使用要求在组合单元前测试每个单元,并确保每个单元的生存能力的测试计划,可以知道在组合单元时所发现的任何错误很可能与单元之间的接口有关。这种方法将可能发生的情况数量减少到更简单的分析级别
系统测试是基于系统整体需求说明书的黑盒类测试,应覆盖系统所有联合的部件。系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不相符合或与之矛盾的地方。
系统测试的对象不仅仅包括需要测试的产品系统的软件,还要包含软件所依赖的硬件、外设甚至包括某些数据、某些支持软件及其接口等。因此,必须将系统中的软件与各种依赖的资源结合起来,在系统实际运行环境下来进行测试。
2 软件测试合格通过准则是什么
1、软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
2、所有测试项没有残余的一级二级三级的错误。
3、立项审批表、需求分析文档、设计文档和编码实现一致。
4、验收测试工件齐全(测试计划,测试用例,测试日志,测试通知单,测试
分析报告
成本分析报告下载顾客满意度调查结果及分析报告员工思想动态分析报告期中考试质量分析报告高一期中考试质量分析报告
)
3缺陷的等级分类
1致命性:数据被破坏、数据丢失、系统崩溃、系统无法运行。
2重大性:处理结果不正确、流程不对、性能不能满足要求
3次要性:不会影响整个系统的运行性能,
4一般性:操作不方便,界面布局不合理,难以理解
5建议性:界面重构、描述更改、流程改进。
4一个测试
工程
路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理
师应具备哪些素质和技能
测试专业技能
1黑盒测试、白盒测试、测试用例设计等基础测试技术,也包括单元测试、功能测试、集成测试、系统测试、性能测试等测试方法。
2基础的测试流程管理、缺陷管理、自动化测试技术等知识。
3软件编程技能,测试工程师至少应该掌握Java、C#、C++之类的一门语言以及相应的开发工具。
4 网络、操作系统、数据库、中间件等知识。很多应用系统都是基于Unix、linux来运行的,这就要求测试人员掌握基本的操作命令以及相关的工具软件。而WebLogic、Websphere等中间件的安装、配置很多时候也需要掌握一些。数据库知识则是更应该掌握技能,现在的应用系统几乎离不开数据库。因此不但要掌握基本的安装、配置,还要掌握SQL。测试人员至少应该掌握Mysql、MS Sqlserver、Oracle等常见数据库的使用。
素质---自己回答
二软件测试设计
1 输入三个整数a,b,c,通过程序判断是否构成三角形,要求输入a,b,c必须满足a<=200,b<=200,c<=200,请用黑盒测试方法编制测试用例。
思路:
等价分类法:
有效等价类
(1)3数均不相等,且2数之和不大于第3数,比如最大数是A
(2)3数均不相等,2数之和不大于第3数,比如最大数是B
(3)3数均不相等,2数之和不大于第3数,比如最大数是C
无效等价类:(1)含有零数据(2)含有负整数(3)少于3个整数(4)含有非整数(5)含有非数字符
边界值法:(1)2数之和等于第3数
错误推测法:(1)输入3个零(2)输入3个负数
2 一个文本框要求输入6位数字密码,且对每个账户每次只允许出现三次输入错误,对此文本框进行进行测试设计的等价区间有哪些?
参考思路:
三个划分方法:
密码位数:6位和非6位的
密码内容:数字的和非数字的
输入次数:三次以内和超过三次
再把三种划分排列组合一下
三自动化测试
1 自动化测试的目的及优缺点
自动化测试的目的:(1)提高测试执行的速度(2)避免机械式重复工作(3)避免手工易犯的错误
自动化测试的优点:
1、对程序的回归测试更方便。由于回归测试的动作和用例是完全设计好的,测试期望的结果也是完全可以预料的,将回归测试自动运行,可以极大提高测试效率,缩短回归测试时间。
2、可以运行更多更繁琐的测试。自动化的一个明显的好处是可以在较少的时间内运行更多的测试。
3、可以执行一些手工测试困难或不可能进行的测试。比如,对于大量用户的测试,不可能同时让足够多的测试人员同时进行测试,但是却可以通过自动化测试模拟同时有许多用户,从而达到测试的目的。
4、更好地利用资源。将繁琐的任务自动化,可以提高准确性和测试人员的积极性,将测试技术人员解脱出来投入更多精力设计更好的测试用例。有些测试不适合于自动测试,仅适合于手工测试,将可自动测试的测试自动化后,可以让测试人员专注于手工测试部分,提高手工测试的效率。
5、测试具有一致性和可重复性。由于测试是自动执行的,每次测试的结果和执行的内容的一致性是可以得到保障的,从而达到测试的可重复的效果。
6、测试的复用性。由于自动测试通常采用脚本技术,这样就有可能只需要做少量的甚至不做修改,实现在不同的测试过程中使用相同的用例。
自动化测试的缺点:
1、不能取代手工测试
2、手工测试比自动测试发现的缺陷更多
3、对测试质量的依赖性极大
4、测试自动化不能提高有效性
5、工具本身并无想像力
2 你所熟悉的自动化测试工具有哪些,简述其优缺点
360WebTester:
优点:
1、国内软件,简单
2、占用内存少,50M左右
3、帮助文档比较齐全,而且非常简单,全部是中文描述
缺点:
1、主要应用于Web功能测试,对Windows控件、Java控件识别有限
2、只支持IE系列应用测试,包括IE6、IE7和IE8
3、不太成熟,用户少,难以交流
QTP:
优点:
1、工具的图形化操作功能比较简单,脚本编写比较简单
2、帮助文档较详细,例子多
3、环境要求低,有512M就能比较顺畅的使用
4、使用广泛,资料很多
缺点:
1、商用,昂贵
2、VBS调试功能比较弱
3、对非
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
的Flex支持不很好
4、只能通过加插件的方式扩展,扩展性差
5、QTP在录制时会把所有出现在页面上的控件作为对象全部记录下来,如果一个对象改了,回放很
难成功
6、回放速度快,但不够稳定
RFT:
优点:
1、日志记录能力最强,可生成html/txt,还有错误截屏
2、基于Eclipse,文本编辑能力最强
3、支持Java、.Net、SAP、Ajax 、Flex和Web的自动化
4、能与其他很多工具集成,可扩展性很强
5、支持Flex标准事件和控件
缺点:
1、商用,较贵
2、帮助文档和教程少,用户群不大
3、对非标准的Flex支持不很好
4、需要有代码基础,新人上手较慢
5、环境要求较高,1G内存才比较顺畅
6、对象识别技术依赖于分辨率,显示器,字体等多种环境因素,影响脚本的回放
7、只支持IE和firefox浏览器,Dojo Toolkit
8、独占屏幕,回放时不能做其他操作
Selenium:
优点:
1、开源项目,不收费
2、Selenium 可以将测试直接在浏览器中运行,就像真实的用户在操作一样
3、Selenium 自动化测试可以在 Windows、Linux 和 Macintosh 等多平台上的 Internet Explorer、
Mozilla 和 Firefox 中运行。其他测试工具均不能覆盖如此多的平台
4、Selenium 是真正能够提供监听用户对 html 页面的操作的录制及回放工具。Selenium 完全了解
用户操作的 html 页面
5、XPath方式操作页面元素,精确
6、Selenium可以支持多种浏览器,包括Firefox 2+,IE 6+,Safari 2+,Opera 8+,Google Chrome
7、回放时不占用屏幕,可最小化执行
8、对Flex支持比较好
9、可扩展性很强
缺点:
1、需要有代码基础,新人上手较慢。
2、涉及到多种语言(JS、JAVA、HTML、客户端语言),完全精通整个架构比较困难
3、底层错误时定位困难。
4、模态对话框处理不好。
5、部分弹出窗口处理存在问题。
3 什么是集合点?设置集合点有什么意义?loadrunner中设置集合点的函数是哪个
集合点用以同步虚拟用户以便恰好在同一时刻执行任务,主要用于对关键步骤加压。意义:插入集合点是为了衡量在加重负载的情况下服务器的性能情况。它可以设置多个虚拟用户等待到一个点,同时触发一个事物,以达到模拟真实环境下同时多个用户操作,同时模拟负载,实现性能测试的最终目的。使用lr_rendezvous()函数来插入集合点
四数据库及开发语言
1 你所熟悉的编程语言有哪些?-----自己回答
有如下代码:
try{
代码2
Return 2;
}
Finally{
代码 1
Return 1;
}
问:代码2是否会被执行?若会被执行,是try里的return语句先执行还是finally里的代码先执行?最后该代码片段的返回值是1还是2?
代码2会被执行,因为finally里的代码总会被执行。
finally里的代码会在return 1;之后被执行。
既然finally里的代码会在return 1;之后被执行,所以return 2;覆盖return 1;返回2。
2 你所熟悉的数据库有哪些?假设源表A和空白表B都已存在,表A,B字段均为a,b,c,写出复制表A 字段到表B的SQL语句。
所熟悉的数据库----自己回答
SQL:Insert into B(a,b,c) select a,b,c from A