软件测试工程师指导_第1页
软件测试工程师指导_第2页
软件测试工程师指导_第3页
软件测试工程师指导_第4页
软件测试工程师指导_第5页
已阅读5页,还剩4页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件测试工程师指导一、 从事软件测试的基本要求1、 首先,要有宽泛的计算机基础知识。微机原理、数据结构、数据库、操作系统原理、编译原理、逻辑、编程语言、计算机网络等。C语言、C#语言、Java语言。2、 其次,要掌握一门编程语言。(1)只有知道怎么做一个软件产品,即编码技术,才能真正懂得这个产品,才能做好测试。不要只满足于点鼠标,而要去尝试打开我们面前的黑盒子。(2)自动化测试技术需要编程技术。自动化测试是软件测试的一个发展方向,一方面很多测试工具都需要人工干预,编写代码;另一方面在有的情况下需要自己编写测试工具。3、 再次,学好英语。二、 软件测试虚的要求1、 锻炼出一双测试的眼睛。耐心、细

2、心和经验会有助于我们达到做软件测试合格的要求。2、 平和的心态。三、 几门重要的计算机基础课程1、 C语言(1) 数据类型;(2) 运算符;(3) 数组;(4) 程序控制流:1)if-else 2)else-if 3)for 4)while 5)do-while 6)switch 7)break 和continue(5) 函数;(6) 指针;(7) 结构;(8) 头文件。2、 C+语言(1) 面向对象的编程方法;(2) 类和对象;(3) 构造函数和析构函数;(4) 公有,私有和受保护类型;(5) 继承和派生;(6) 多态;(7) 虚函数;(8) 掌握一种可视化C+编程工具,例如VC+。3、 操

3、作系统(1) 操作系统的几种类型:批量、分时和实时操作系统;(2) 进程;(3) 进程同步和互斥;(4) 进程间的通信;(5) 线程;(6) 资源分配;(7) 处理机调度;(8) 内存管理;(9) 磁盘分区和管理;(10) I/O控制;(11) 文件系统管理。4、 数据结构(1) 算法的时间复杂度和空间复杂度;(2) 线性表;(3) 栈;(4) 队列;(5) 树的基本概念;(6) 二叉树;(7) 图的基本概念;(8) 图的遍历以及图的生成树;(9) 查找,包括顺序查找、二分查找;(10) 排序,包括插入排序、选择排序和交换排序。5、 数据库(1) 数据库的发展史;(2) 关系型数据库;(3)

4、字段,关键字;(4) 表;(5) 索引;(6) 触发器;(7) 存储过程;(8) 作业;(9) 事务以及事务的提交和回滚;(10) 游标;(11) SQL语言;(12) 掌握一种关系型数据库的使用,例如SQL Server,Oracle;(13) 数据备份和灾难恢复;(14) 数据导入导出;(15) 权限控制;(16) 数据库设计初步。6、 软件工程(1) 软件工程的概念;(2) 几个知名的软件开发模型:瀑布模型、螺旋模型、增量模型等;(3) 需求分析;(4) 软件设计的基本原理:模块化、抽象、耦合、内聚;(5) 程序流程图;(6) 软件测试的基本概念;(7) 单元测试;(8) 集成测试;(9

5、) 功能测试和性能测试;(10) 白盒与黑盒测试;(11) 评审;(12) 配置管理;(13) Case(计算机辅助软件工程);(14) 了解一点ISO9000和CMM的知识;(15) 了解一点知名软件公司的软件研发流程,例如微软公司。7、 计算机网络(1) 几种常见的网络拓扑结构:总线型、环形、星型、树形、网状、混合型等;(2) OSI参考模型(七层协议);(3) TCP/IP;(4) 以太网;(5) 常见网络设备,例如路由器、网桥、中继器、网关等;(6) 广域网;(7) 熟悉一种操作系统上的网络配置和常见问题分析。四、 具有团队合作意识的表现(1) 有意识地关注项目进度和组内情况(2) 愿

6、意共享经验,也善于从他人那里学习(3) 以团队利益为思考出发点,不过多计较(4) 互助(5) 虚心,认同他人,尊重他人的工作(6) 批评的时候只对事,不对人(7) 友好、宽容地对待新同事五、 软件测试各个阶段1、 首先是参与软件需求的确定和评审。2、 接着是软件设计和编码阶段,测试人员设计测试计划和测试用例。3、 测试执行阶段。六、 记录和分析面试问题及失败原因1、 通过对记录的分析我们可以知道自己在哪一方面有竞争优势。2、 通过对记录的分析我们可以实现自我提高。3、 用人单位的反馈是宝贵的,请记录下来。七、 软件测试技术基础1、 功能测试:功能测试就是要把需求规格说明书中定义的功能与软件产品

7、一一比对,力争发现其中的错误。2、 性能测试(段念的软件性能测试过程与案例剖析(清华大学出版社):响应速度、吞吐量、CPU占用率、占用内存数和内存占用率。(使用测试工具)3、 界面测试(UI测试):所谓界面测试就是在功能和性能测试以外,对界面设计、不同分辨率、默认焦点等做测试。(1)界面元素要符合通用的标准;(2)界面尺寸的改变(缩放);(3)操作系统层次上的不同外观设置;(4)不同分辨率;(5)焦点问题;(6)对静态文本、图片和动画的检查;(7)快捷键;(8)界面风格、界面颜色搭配等。4、 本地化测试(就是对于一个软件原先为英语后来翻译成汉语,然后进行的测试):(1)要验证主要的功能是否正确

8、;(2)要看界面:要验证所有的界面和窗口,不能遗漏;(3)翻译不完整是本地化常见的问题,就会有一些信息没有被翻译;(4)翻译出错。5、 自动化测试:它能够提高测试效率,降低测试成本,是软件测试的一个趋势。代码覆盖(1) 语句覆盖:就是说测试人员要通过测试用例把代码中所有可执行的代码都执行过。(2) 分支覆盖:就是要通过测试用例把分支语句中的不同分支都要测试到。(3) 条件覆盖:对于每一个在分支判断中出现的条件,我们都要测试它的为真和为假的情况。软件测试笔试题:1、 一个Bug的描述中通常包括了哪些内容?答:一个bug通常包含以下内容:(1)概要;(2)重现步骤,这是最重要的;(3)产品版本号;

9、(4)重要环境参数(例如操作系统);(5)优先级;(6)严重性;(7)状态;(8)发现者和接受者(发现者一般都是测试人员,接受者一般都是开发人员);(9)原因分析;(10)如果有图片的话,附上图片。2、 Bug有几种状态?答:(1)打开;(2)修正(即已经被开发人员修正了,等待验证);(3)关闭;(4)不必修正(没有必要做修正);(5)重复的bug(已经有描述同一问题的bug);(6)以后再修正(例如,不重要,或者时间已经来不及了);(7)外部的bug(例如,在应用程序中发现一个bug,却发现是操作系统的一个bug引起的,因为无法去修正操作系统的bug,所以可以把这个bug标识为外部的bug,

10、意思是说不是本项目所能解决的);(8)假问题(测试人员的工作失误);(9)其他(无法归类的)。3、 Bug的优先级和严重性之间的区别是什么?答:Bug的优先级是指一个bug需要及时解决的程度,而严重性是指一个bug对产品的影响程度。一般来说,优先级与严重性是成比例的,即严重性越高的bug,优先级也越高。但是,它们并不总是一一对应的,例如,一个界面上bug,对于产品的功能来说并没有什么大的影响,严重性不高,但是因为这个bug很容易被客户发现,所以优先级很高。4、 你认为做好软件测试用例设计的关键是什么?答:我个人认为做好测试用例设计的关键是实现高的测试覆盖率。如何实现高的测试覆盖率呢?可以从一下

11、几个方面去着手:(1) 熟悉需求规格说明书;(2)熟悉使用多种测试方法;(3)多和同事讨论;(4)从类似项目中做借鉴;(5)做好评审。5、 软件测试结束的标准是什么?答:软件测试结束的标准有两个方面:(1) 软件产品是否符合需求规格说明书的要求。(2) 市场的因素。这也是测试人员很容易忽略的一个地方。测试工程师都有一种“完美”的倾向,总是希望软件尽善尽美,希望所有的bug都能被修正。然而,商场如战场,产品需要在预定的最佳时机上市,否则,如果错过了好的时机,让对手抢了先机,就是一个大的失策。我们需要在软件产品的质量和市场要求之间取一个平衡,来确定什么时候结束测试。另外,还有一种特殊情况,如果在软件研发过程中,软件质量出现重大问题,以至于没有必要再继续研发下去,测试也可以在与各个协商后提前退出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论