软件测试工程师——你不单单应该会点点点

        我工做八年整,以前作过开发,如今正在作测试,发现人们对测试很是轻视,究其缘由就在于测试入门的门槛过低了,致使人们认为测试仅仅会点页面。关于测试我想说一下个人见解。
        1、页面功能测试技能:
        一、按照产品给的需求文档,原型图,UI图完成测试用例,完成测试用例你要用到:等价类划分、边界值分析法、错误推测法、因果图方法、判断表驱动法、正交试验法、功能图法;同时你要分析业务逻辑,用户操做场景,异常场景,关联业务等。
        二、执行用例:根据测试阶段,代码改动,环境等挑选相关用例执行;执行过程当中要了解:linux简单命令:ls,cat,tail,cd等,用来看后台日志,是否有前台虽然正常展现,但后台已经抛异常;要了解sql的增删改查,以便造数据、查询数据;要了解业务相关操做对数据库的操做,新增操做入了哪些表,有哪些关键数据,哪些状态数据,更改操做入了修改了哪些表的哪些字段,以及字段对之后业务的影响;bug中问题描述,步骤,抓包,日志等,sql是绝对的重点。
        三、测试报告:不是全部公司都会发测试报告,可是测试必定要了解本身测试的业务,测试过程当中是否发现风险,例如:某些操做会大量写表,某些操做会须要程序进行批量处理,有关联的定时任务执行顺序、时间长短形成的衔接问题等。
 
        2、接口功能测试技能(和功能部分重复部分就不说起了):
        一、第一步就是网络协议,认识相关协议:soup,http,https,rpc,ftp,ssh,telnet等经常使用网络协议。
        二、抓包工具:fiddler,Wireshark,burpsuite等工具。
        三、接口工具,soupUI,postMan,java语言调用(httpclient   jar 包,jmeter jar包),python语言调用(requests库)。
 
        3、自动化测试:
        一、分类:UI功能自动化,接口自动化,接口参数化。
        二、语言:是的语言,语言,永远是编程语言,不会任何一门语言请不要说本身是测试。至少会一门主流语言:python,java,c++。
        三、调试能力:其实仍是语言,前端的断点,后端断点。断点调试真的很笨,很费时间,但真的是最有效的,最基础的。
        四、分析设计:分析改动不频繁,后期维护成本不是特别高的相关业务作自动化;设计相关测试用例,注意要作到尽可能还原用户操做。
        五、部署能力:若是你已经会自动化,请尝试搭建部署测试环境。
 
        4、性能测试,你不能仅仅会操做:
        一、软件:loadrunner,jmeter等软件的熟练操做,及测试报告的解读,细节细节必定注意细节,了解细节的才能更好的发现报告中指示的问题,别非专业人士提问时,才不至于尴尬(以前我就尴尬过)。
        二、编程语言:是的又是语言,脚本的编写是用语言完成的,由于软件老是有自身的局限性,而咱们本身的系统总有本身的特殊性,好比jmeter调用dubbo接口,打印日志,特殊的断言方式,特殊的请求方式,这些是须要本身写代码完成的(抱歉我仅仅熟悉jmeter,因此就不介绍loadrunner了)。
        三、更深刻的了解linux:天哪测试要了解这个,是的,由于系统配置绝对会影响测试结果,你要监控系统的cpu,内存,磁盘读写,网络等诸多状况。
        四、各类算法,数据结构:更加的深刻,若是开发一时之间没法找出性能问题的所在,你要亲自动手,分析他的代码的算法,数据结构,甚至于修改程序。
        五、各类辅助工具:辅助工具作什么,帮你了解程序内存暂用,判断内存溢出,cpu暂用太高,读写数据库,网络长短链接等状况。
        六、中间件,数据库使用调优:包括但不限于:tomcat,nginx,node,apache,mysql,redis,oracle,memcached等等。
 
        5、关于敏捷一点理解:
        一、什么是敏捷开发:快速的开发,好像是句废话,好吧说说快速,快速体如今:团队成员互相间对彼此进度的了解,以便作出下一步判断,如何能配合着尽快完成任务。
        二、持续集成与持续交付(CI 与 CD):CI,要在完成必定任务量后当即作集成,保证代码不报错,可测试;CD,完成CI后测试后的版本可发布,好比大的版本上线,因为当天的版本并不理想,但前一天的版本可能未完成某些小的功能,可是是可交付的,因此CI后进过测试的代码,便可CD。
        三、在敏捷中测试重要的做用是保证CD,同时严格要求开发CI前作好自测,先后端不自测的代码,提交后很肯能就变成了联调测试,咱们要的应该是继承测试,咱们应该在保证质量的同时尽快进度。
        四、全部的敏捷创建在了解之上,互相之间了解彼此的能力,才能更好的合做,知道把任务分配给谁,才能快速高质量完成,这是一种默契,须要时间磨合。
相关文章
相关标签/搜索