弹幕之软测乱弹及面试

    今天我来分享一些软性而非技术的东西。刚刚在看一本书,里面有个很有意思的描述:学日语是“笑着进去,哭着出来”,为什么呀?日语中存在着一些汉字,一个完全不懂日语的人走到日本的一个城市的街道上,看着招牌大概能猜出来那些商店卖什么,这样一些人认为日语很好学。几年后才发现,不是那么回事,比想象中要难得多。 软件测试也是这样。软件测试的门槛相对来说的确低一点,比较好切入,但是,要成为一个优秀的软件测试工程师需要付出艰辛的努力。

    测试不是我们有些人想的那么简单,而且测试员会分不同的水平的。确实如此,测试员为什么会有不同的水平,分为“菜鸟”测试员和“大神”测试员。而一个测试员有多优秀,就得看他写的代码!测试员自己的代码才是自己工作状态的真实体现。下面就是这两者的区别,但对于我来说还没有进入职场,是不可能得出这些结论的,所以下面所写的内容只能算编著,既不是著,也不是编。

 “菜鸟”测试员的代码是什么样子,自己想一下。“菜鸟”测试员的代码往往会会写的比较冗余,而且这些代码不是从书上找来的就是从网上找来的还有可能就是自己会这一部分代码(仅存记忆的提取,真正的原理似懂非懂,好像雾里看花)。

  “大神”的代码会写成什么?“大神”测试员的代码,当你看的第一眼:简洁;第二眼:真“N”。用最少的代码,把这个程序写的非常精辟了,体现的自己的思维思路。

  真正的原因是:“菜鸟”测试员没有将自己的思维融入代码,代码是测试员思维智慧的结晶。 当我们拿到这一个小功能的时候,我们首先一看,这方面的知识自己准备不足,于是就上网找去了。假如我们去想一下如何去解决,我们解决的方法一般会有两种,第一种是自己会从网上或者是书中找到类似的代码,第二种就是请教别人指点,这种方法感觉不太可能,因为在工作中,大家都很忙,相互讨论帮忙很少的。上网搜的时候我们会经常出现这样的现象:看到这个要编写的程序,感觉自己没什么思路,自己从网上找,找了半天我们收获不大,看了很多实现的方法,但是我们花很长的时间去理解,这样虽然把问题搞出来了,然后就去玩去了。有些时候运气好,想找的问题正好有这类问题的解决方法,那我们就直接把代码搬过来,搞定!所以我们就一直这样循环下去,到最后我们什么也没有留下。“大神”测试员首先拿到这个程序,自己做的第一件事情,就是思考!自己先思考如何实现这个问题,与原来相关知识可以借鉴,列出解决问题的可能性,考虑解决问题的最难点,所以上网搜的时候,直接搜问题的解决问题点,将其转换成自己的思想,用自己的思维写出自己想要的代码来,这就是代码是思维的结晶的精华。

  这段时期,我们中有很多参加各种面试的同学,尝尝果子是啥味道,我这有份软件测试面试题的文档,可以在这分享下,不全。有想要的同学可以私下联系我。

1.白箱测试和黑箱测试是什么?什么是回归测试?
( 1)白盒测试是测试人员要了解程序结构和处理过程,按照程序内部逻辑测试程序,检查程序
中的每条通路是否按照预定要求正确工作.它主要的针对被测程序的源代码,测试着可以完全
不考虑程序的功能.
白盒测试流程:源程序-->分析程序内部逻辑结构-->流程图-->制定测试用例-->被测程序
-->执行路径-->覆盖情况分析
( 2) 黑盒测试:主要是根据功能需求来测试程序是否按照预期工作,是要从用户的角度分析.
尽量发现代码所表现的外部行为的错误.黑盒测试应该是由测试团队来完成的.根据某个给定
的输入,应该能够理解并详细说明程序的预期输出.
黑盒测试流程:功能需求-->产生测试用例-->被测程序-->输出实际结果-->与预期结果比
较-->分析功能是否实现.
( 3)回归测试:在对软件进行修正后进行的有选择的重新测试过程.一般要重复已用的测试用
例.目的是检验软件在更改后所引起的错误,验证软件在修改后未引起不希望的有害效果.
2.单元测试、集成测试、系统测试的侧重点是什么?
( 1) 单元测试针对的是软件设计的最小单元--程序模块,进行正确性检验的测试工作,在于发
现每个程序模块内部可能存在的差错.一般有两个步骤:人工静态检查\动态执行跟踪
( 2) 集成测试针对的是通过了单元测试的各个模块所集成起来的组件,集成测试又叫功能测
试,其主要内容是各个单元模块之间的接口 ,以及各个模块集成后所实现的功能.
( 3) 系统测试针对的是集成好的软件系统,作为整个计算机系统的一个元素,与计算机硬件
\外设\某些支持软件\数据和人员等其他系统元素结合在一起,要在实际的运行环境中,对计算
机系统进行一系列的集成测试和确认测试.(顺便提到确认测试--又称有效性,用来验证软件的
功能和性能及其他特性是否与用户的要求一致.)
3.设计用例的方法、依据有那些?
在测试的不同阶段运用不用的测试方法设计用例的方法依据不同:
( 1) 白盒测试用例设计有如下方法:基本路径测试\等价类划分\边界值分析\覆盖测试\循环测
试\数据流测试\程序插桩测试\变异测试.这时候依据就是详细设计说明书及其代码结构

 4.一个测试工程师应具备那些素质和技能?
( 1) 掌握基本的测试基础理论
( 2) 本着找出软件存在的问题的态度进行测试,即客观吧,不要以挑刺形象出现
( 3) 可熟练阅读需求规格说明书等文档
( 4) 以用户的观点看待问题
( 5) 有着强烈的质量意识
( 6) 细心和责任心
( 7) 良好的有效的沟通方式(与开发人员及客户 )
( 8) 具有以往的测试经验
( 9) 能够及时准确地判断出高危险区在何处.
5.集成测试通常都有那些策略?
基于分解的集成:大爆炸集成\自顶向下集成\自底向上集成\
三明治集成\基于调用图的集成\基于路径的集成\分层集成\基于功能的集成\高频集成\
基于进度的集成\基于风险集成\基于事件集成\基于使用的集成\C/S 集成
6.一个缺陷测试报告的组成
组成为:缺陷报告的唯一 ID,总结简明扼要的事实陈述总结软件缺陷.事件的描述(日期和
时间\测试员的姓名 \使用的硬件和软件配置\输入\过程步骤\预期结果\实际结果\试图再现及
尝试的描述\定位信息)



转载于:https://www.cnblogs.com/dulun/p/4419700.html

  • 0
    点赞
  • 0
    评论
  • 1
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
©️2021 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值