测试工程师

OWASP ZAP使用入门指南

隐身守侯 提交于 2019-12-01 05:37:50
安全性测试入门(一):Brute Force暴力破解攻击和防御 写在篇头: 随着国内的互联网产业日臻成熟,软件质量的要求越来越高,对测试团队和测试工程师提出了种种新的挑战。 传统的行业现象是90%的测试工程师被堆积在基本的功能、系统、黑盒测试,但是随着软件测试整体行业的技术积累和大环境,市场对于测试工程师的要求越来越全栈化,技术的突破是测试工程师的必修课。 安全测试就是测试工程师的高阶技能之一,不过安全性测试领域水非常深,对于普通测试工程师而言可能并不容易上手。 所以笔者准备写这个系列文章,做一个安全性测试入门级攻略。文章会采用DVWA项目,就其提供的几大模块,来进行安全性测试的初探和对安全性防御措施的简析。 1. DVWA - 非常脆弱的一个网页应用 DVWA- Damn voulnerable web application(直译就是:非常脆弱的网页应用-_-!!!),是UK的一家安全性研究机构发布的一套网站系统,专门用来展示网站安全性问题和防御机制。对于我们学习web安全性相关知识是一个很好的工具。 这套web项目可以在 http://www.dvwa.co.uk/ 官网由github下载。 DVWA的安装很简单,只要架设起本地的Tomcat+MySql服务器,将DVWA部署到相应目录即可。 部署完毕后,登录应用,可以在左侧的菜单中看到如下模块: 他们分别是Brute

初级测试工程师必须会的(总结)

让人想犯罪 __ 提交于 2019-11-30 14:36:09
功能测试的一些心得    一、前言    功能测试 是测试工程师的基础功,很多人功能测试还做不好,就想去做 性能测试 、 自动化测试 。很多人对功能测试的理解就是点点点,如何自己不用心去悟,去研究,那么你的职业生涯也就停留在点点点上了。在这里,我把我对功能测试的理解写下来。    二、功能测试所需要掌握的技能   2.1 熟练使用 SQL   1、常用的 sql 语句一定会写。比如说增删改查之类。   2、了解 数据库 的事务、会编写存储过程、熟练常用的系统函数。   3、了解并可以进行数据库的备份、迁移、还原、镜像等操作   4、对 sql 语句进行调优,并对可以对运行的语句监控查看性能   5、了解数据库集群等操作。   2.2 Linux   Linux是测试人员的基础功,不需要掌握太难或者很不常见的Linux命令,正常能做到查看日志,定位问题就可以了。   1、基本命令   常用的Linux基本命令,面试经常会问的,或者给出一种场景,问你用什么命令。   2、查看日志   初级测试人员在工作时经常遇到,发现 bug ,开发不承认或者不愿意解决的情况,测试人员怎么摆脱这样的问题呢?   那就是根据发现的bug根据日志级别,来查看日志,定位问题。   那这里首先要说一下日志级别了。   首先记住这一点:日志级别越高,输出的信息越少 。   具体的日志级别分为四级:   info

测试工程师真的不需要懂网络知识么?

↘锁芯ラ 提交于 2019-11-30 02:34:57
导语:随着现在互联网公司的普及,越来越多的测试工程师从事web应用测试和移动APP测试类的产品,更加偏向应用,所以导致越来越多的测试工程师对网络基础知道的甚少。我曾经做过一个小调查,大概200多个测试从业者中只有不到20人知道如IP协议和路由协议这样的基础网络知识,这样的现象一点都不夸张。那么不懂网络知识,测试工程师真的能走得很远么? 我是在2010年左右进入测试行业的,那个时候互联网行业还没有现在这么繁荣,需要测试岗位的公司很多都是一些传统公司,比如路由交换设备厂商:思科,华为,华三等;防火墙VPN的安全厂商:如Juniper,深信服,360等;还有一系列外企:如IBM,Oracle,F5等。这些公司的测试工程师,对于网络基础知识的要求相对比较高,不仅在笔试面试中会作为招聘的门槛,而且在具体测试工作开展过程中,也需要实施和使用到。 我在北京就职的其中一家公司就是SSL VPN的一家外企,所有测试工作中很重要的一个部分就是需要自己准备测试环境,也就是要根据需求自己设计出来对应的测试网络拓扑图,然后协调到资源之后,在实验室把这个网络搭建并且调通。这个过程如果没有丰富的网络知识储备,你就可能会被block在网络环境准备阶段,无法真正的开始执行测试用例,因为没有环境的承载,测试软件根本无法运行。当然,可能在你作为一个新人的时候,能够去请求别的同事的支援,协助你配置网络和准备测试环境

为什么很多公司都在招测试开发?

♀尐吖头ヾ 提交于 2019-11-27 20:50:40
很多人解释为什么公司都要招聘测试开发,在说效率,在说岗位职责,没有人从这个 行业发展的变化 去说的。 在开始正文之前,我先抛出一个观点, 做80%的做测试的,都称不上为测试工程师。 好的,带着这个观点,咱们从行业目前的发展来说一下。如果你没有进入这个行业,那么有些概念可能不太理解,没关系,先接触一下。 作为 DevOps 关键角色,未来的软件测试工程师和质量人员必须同时具备一定的开发和运维能力。 测试人员会更深入介入开发工作,通过“测试左移”,提前与开发人员一起制定测试计划,推动代码评审、代码审计、单元测试、自动化冒烟测试、测试精准化分析以及研发自测等来保证研发阶段的质量; 另外,测试人员会也会参与配置部署,将自动化测试用例配置到持续交付链中,并通过“测试右移”,全流程监控发布后的应用质量。 这里我所说的“测试左移”,也就是指的研发阶段的质量保证,“测试右移”也就是发布后的质量监控,搞明白这连个理念,就能很清晰的明白测试开发具体指的是什么了。 如果你是测试人员,你认为自己的公司不大,这些东西涉及不到我,我不关心。那么,上面我已经说了什么是测试开发了,下面就不用往下看了,你选择坐井观天,谁也拦不住的。 下面我就说一下整个测试行业目前,一个整体的一个现状。 这些情况不是我一个人得出的,是私下同阿里、360等行业内的测试经理交流所公认的。 第一个观点:XP、Scrum、CI/CD

怎样成为一个合格的测试工程师

旧时模样 提交于 2019-11-27 20:36:09
前段时间和几个测试朋友聊天,说到06年上半年测试界的新闻,我想最大新闻莫过于智联招聘网站的一个测试行业的调查报告吧。 该报告指出“目前测试从业人员不会超过5万,合格的测试人员不会超过3万,而工作超过5年的更不会超过1万”,姑且不说数据是否准确(据我经验,应该八九不离十)。单在这里说说怎样才算是一个合格的测试工程师,怎么才能成为一个合格的测试工程师。 首先说说怎样才算是一个合格的测试工程师。 一个测试工程师应该具备的素质我想在很多介绍软件测试的书里已经都列举过了,这里就不在重复,而一个合格的测试工程师和一个测试工程师的最大区别在哪儿?不外乎就在与测试思想。合格就在于他接受到测试任务后所做的第一件事情是想而不是做。合格就在于他将他自己的想法始终贯穿于整个测试中,包括测试设计中,测试执行中,测试分析中。 许多人都会说测试思想是一个空洞的东西,而我也曾经写过或说过太多的例子用以证明它,这里只建议想做合格测试工程师的人去看一本书吧,它的名字是<think in java>,在我眼里,它并不是一本讲技术的书,同时它也并不只适用于开发人员。 接着说说怎样才可以成为一个合格的测试工程师。 不是有一个玩笑说某某公司扫地的大妈都可以做软件测试,某某公司看门的大爷都可以做软件测试。由此可见人们对软件测试的误解和测试工程师的尴尬。其实并不是任何一个人都可以成为测试工程师的

转:《什么是敏捷软件测试》

。_饼干妹妹 提交于 2019-11-27 10:56:06
本文已经首发于 InfoQ中文站 ,版权所有,原文为《XXX》,如需转载,请务必附带本声明,谢谢。 InfoQ中文站 是一个面向中高端技术人员的在线独立社区,为Java、.NET、Ruby、SOA、敏捷、架构等领域提供及时而有深度的资讯、高端技术大会如 QCon 、线下技术交流活动 QClub 、免费迷你书下载如 《架构师》 等。​ 在与不少测试从业人员讨论到敏捷的时候,被问得最多的大约是两个问题:“到底什么是敏捷软件测试?”,“敏捷软件开发还需要测试工程师吗?”。前一个问题是对于敏捷测试本身定义的疑问,第二个问题则是对敏捷开发将测试工程师排除在外的担心。其实,在探寻这两个问题答案的过程中,我们可以更清晰的了解敏捷软件开发中测试的工作定义,测试价值观,以及敏捷开发中开发与测试工程师的配合。鉴于这两个问题的意义,在本敏捷测试专栏的第一篇文章中,本人尝试从自己的实践出发,尽可能清楚的回答这两个问题。 确实,相对于敏捷开发红遍大江南北的状况而言,对敏捷测试的讨论则低调得多。敏捷联盟定义了敏捷的4个价值声明,以及伴随的12条支持原则,这12条原则中没有一条单独提到测试。这是不是意味着测试在敏捷开发中并不重要呢?实际上,如果仔细研读敏捷的12个原则,以及各种不同的敏捷实践,就会发现,测试在敏捷开发中占有非常重要的地位。无论是原则中的“频繁交付”,还是对“可工作的软件”的度量

测试工程师成长路径

99封情书 提交于 2019-11-27 05:49:18
测试工程师成长路径 测试工程师的简介 初级测试工程师 中级测试工程师 高级测试工程师 测试工程师的简介 如果要成为一枚测试工程师,门槛很低,如果想在这个岗位上做的出色,很难。 初级测试工程师 也可以叫做测试工程师的 初级阶段 。成长时长一般是1-3年。初级测试工程师很容易犯错或者说是测漏东西,导致或大或小的问题。此刻,需要一个宽松、包容的成长环境。不推荐直接进行小型私企,建议进一个大公司,能够学习到更加规范的测试流程和更远的视野。这个阶段,学习知识和技能比追求高工资更加重要。(2019年二线城市薪资:3.5-6k) 1 任务 1.1 初级测试工程师的工作任务基本是点点点; 1.2 测试用例的编写; 1.3 本行业业务知识的学习和积累; 1.4 熟悉测试流程; 1.5 开拓视野 2 工具 2.1 XMind (整理业务逻辑,测试工程师的路能走多远,全看他) 2.2 Excel (绕不开的) 2.3 Word (一份姣好的测试报告能让你的工作更加鲜亮) 2.4 Tapd (缺陷管理) 3 晋级方向 3.1 从页面层的测试,深入到接口层的测试。主流工具:F12、postman、fiddler 2.2 需求分解。对于确认的需求,有拆分打散的能力 3.3 **沟通**(核心技能) 3.4 接触性能测试 3.5 接触安全测试 3.6 学习HTTP协议(少部门行业需要学习更多的协议) 3.7

测试工程师学习代码感想(一)

喜欢而已 提交于 2019-11-26 16:57:33
1.作为一名测试工程师,很多时候是要需要使用到代码相关的,尤其是脚本类语言,就算是看不懂开发相关的代码也应该要熟练的使用脚本语言,对自动化测试和性能测试时有很大帮助的,自动化测试编写自动化用例,如果是关键字驱动的话,关键字的编写等等,性能测试中,编写监控系统cpu、内存、进程是否存在,是否卡死,监控log日志等等的监控脚本,可靠性测试和稳定性也是使用到相关的脚本代码 2.脚本代码中最常用的有python,shell,go,js等等,其中python和shell最好学,也最常用。 3.目标是学习和熟练使用python和shell语言,在这个基础上复习下js(最近遇到了要测试mongodb数据库,有点跌跌撞撞,又跑回去学习之前的语言) 4.在工作上遇到了环境难以搭建的问题,公司的测试业务是需要搭建不同的网络部署场景,需要比如DNS服务器,二层接口,www,mysql等环境,但是公司的资源有限,不可能保留环境太久,导致每次重新搭建环境的时间过长,如果有一个脚本既可以搭建dns,又可以搭建好二层接口等环境就好了,考虑了下,决定用shell+python的方式实现,实现方式应该比较简单 5.在做性能测试的过程中,为了监控进程和cpu、内存、core使用的是公司的监控平台,感觉实现起来比较简单,而且也可以拿来练练手,搞一个更简单使用的监控平台,方便新人更好的入手,更好的图表话

提升自动化效率,一起玩转Selenium框架

别来无恙 提交于 2019-11-25 23:00:52
以往项目组的聊天 测试工程师:已经把新的模块测试完毕了,bug提交到bug库(jira、TFS、禅道)中了。请根据bug描述修改bug,然后我在回归。 开发工程师:好的。 测试工程师:你写的这个模块bug好多哦...,而且前面修复过的bug,有出现了 开发工程师:一会再修改,你先测别的,我开发完这些功能再说。 开发工程师【内心】:测试不就是点点吗,一天天的好烦,有本事你来写程序,看看会不会比我强,代码都不会,还一天天的催。【ps:以上内心独白存在杜撰哦!】 现在项目组的独白 测试工程师:【内部通讯聊天群】测试报告发到邮箱了,请及时查收,修复bug 开发工程师:速度打开邮箱查看自动化测试报告,确认是否有指向自己的bug。一篇内心忐忑,如果测试报告里又有自己的缺陷,那太low了哦,万一老大发现了,轻则批评,重责可能扣奖金哦。 测试工程师【内心】:现在真爽,每天的BVT与回归测试,再也不用手工了。 - - 每天定时跑用例; - - 自动发送测试报告给项目成员; - - 大大减轻了工作压力,在也不用跟开发因为bug的反复频繁沟通了 - - 更加专注于测试新功能及维护自动化测试脚本 现在测试团队都需要什么? 现在测试工程师都在聊什么? python学了吗最近? selenium自动化你们团队搞的怎么样? 你们自动化框架应用的如何? 一直搞手工职业发展回有瓶颈啊。测试真心要往测试开发走啊