为什么很努力进步却不明显
今天有个玩的不错的同事问了我一个问题:他说我今年在努力学习测试方法,自动化测试等等,也写了不少测试用例,但总体感觉好像没有什么进步啊?他想不明白这是什么原因。其实当我遇到这个问题的时候,我也想了一下,虽然可能不是问题的准确答案,可能也有部分原因。
测试开发到了一定的阶段遇到的不是技术问题,而是眼界的问题,是思考问题的角度,对整体的把握。 我就以自己的工作经验,来做一个阐述:
一, 眼界的问题
当你工作了几年后,积累了一定的经验,而这些经验是真正的财富积累还是几个经验的重复?不同的人可能有不同的看法,我们就不在此讨论,然后如何检测经验是否值钱呢?当遇到问题的时候,你能否找到问题的主要原因?这个问题可能会影响到相关的什么功能,从你以往的经验能否节省工作时间?
(1) 功能测试人员
虽然功能测试简单,可是如果你只是跟着需求走,当天和尚撞天钟的话,是肯定不会有提升的。在了解了基本的业务流程基础之上,去了解整体部门的业务流程,业务架构与相互的关系,甚至服务或是接口的相互调用。如果能做到这方面的了解,那还会担心眼界不够吗?出现任何问题都能准确定位,相互的影响了然于胸。
(2)测试开发人员
至于自动化测试,测试开发方面的考虑就更加需要眼界了。当你在测试工作中遇到了一个问题,当然会想到通过代码手段来解决它。于是乎就开始编码,调试等工作,可是你的编写代码的出发点是什么?是解决这一个问题,还是解决这一类问题?是供测试人员使用,还是供公司所有遇到同样问题的人来用?这样考虑后,你的编码肯定会有所有不同的,要尝试着从平时的一点一滴中来锻炼自己,提高眼界。
二,思考问题的角度,对整体的把握
在你拿到一个需求的时候,我们通常是怎么做的?找产品全面了解需求,编写测试用例 ,等开发写完代码提测,然后是提Bug和验证Bug,上线等流程吧?这是测试的基本流程,可是要做好一个测试人员,我们不能仅仅做到这些儿。
(1)功能测试人员
我刚刚工作的时候,一个组长告诉我:测试做的合格的话,就是一个普通的测试,做的好的话就是产品经理。这就是要求我们要从产品经理的解决来考虑问题:
(a)这个需求涉及的内容有多少,需要修改和优化的总工作量是多大?
(b)产品提出需求是时间?预期什么时候提测?什么时候上线?能容忍的最晚上线时间是什么时间?
(c)开发有没有按时提测?为什么延期,会不会影响上线?
(d)在任何阶段如果影响的整体进度,必须发出预警邮件。
(e)测试的时候,如果遇到了问题,应该准确区分等级,待产品确认如何处理后,做好备注信息并周知所有相关人员。
(2)测试开发人员
测试开发人员在开发测试工具或是测试平台的时候,会考虑哪些方面?
(a) 明确需求,涉及的功能,使用场景,然后进行详细的需求整理工作。
(b)在编写代码之前需要进行详细的设计,用什么技术来实现,并发情况,响应速度,错误处理,问题排查,结果展示与数据统计等方面有没有要求?
(c)采用什么样的架构才能实现上面的要求?有没有成熟的架构或是开源的框架可以使用?
(d)用户体验是否美好,使用成本如何,最终于能带来什么收益,收益是否达到预期?
(e)团队开发还是个人开发?代码如何维护,维护成本如何?以后增加功能是代价如何?前期是否考虑预留相应的接口或是做好准备等等。考虑完上面的问题后才是代码实现,其实代码实现并不难,开发工具也不是仅仅完成特定的功能的事情。
三,有计划的做提升
互联网时代技术更新太快,不存在一成不变的东西。虽然你掌握的某项技术足以让你称道,可是那个自豪的劲头还没有过呢,可能技术就已经过期了,保持不断的学习不仅仅是口号而已。
有不少测试的同学了解到需要学习技术才能保持不落伍,于是就着急的学习各种东西。今天学习一种,明天学习一种,到头来什么也没有学会。在我们上学的时候,有教育专家给我们安排课程,循序渐进,可是进入社会后就没有人给安排了,这种情况下很容易迷失的。所以我们还是有必要静下心来,好好规划一番的。
首先,你得有个目标:我五年或是十年后想过什么样的生活?为了达到这样的生活,我应该拥有什么?为了拥有这些儿我应该从哪得到?为了顺利得到这些儿,我应该付出什么?而需要我付出的,我现在有吗,如果没有应该怎么做才行?
当你理清了这些后,你就差不多知道自己需要怎么提升自己了。然后结合业界发展的趋势,总结出规律,技术提升之路。扪心自问,现在你处于什么位置,要向上提升应该学习什么。在学习每一项技能的时候,需要多少时间,订好计划,步步为营地执行。不能考虑了半天发现自己需要学习Java语言,然后买了本书,半年之后第一章都没有看完。或是直接更加简单,越看越感觉到复杂,直接从入门到放弃,这都是不可取的。
四,总结
工作是为了生活,在很多时候,我们忙于测试各种需求,为了按时上线加班加点。休息的时间都没有,更不用说好好规划未来了。这样不好,其实这是一条高消耗之路,我们一直在凭借着以往学习的技能而工作,在消耗着过时的技能的同时也在消耗着自己的身体。难道不应该响应国家领导的号召,走一条可持续发展道路,发展高精尖产业吗?对我们来说就是以技能提高效率,而不是在以加班加点来换取自己想要的生活。
相关文章:

spl_autoload_register与autoload区别
spl_autoload_register(PHP 5 > 5.1.2)spl_autoload_register — 注册__autoload()函数说明bool spl_autoload_register ([ callback $autoload_function ] )将函数注册到SPL __autoload函数栈中。如果该栈中的函数尚未激活,则激活它们。如果在你的程序中已经实现…

宣传部vv从v
数组-136. 只出现一次的数字题目描述题目样例Java方法:位运算算法思路代码复杂度题目描述 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 题目样例 示例1: 输入: […

自动配置IPv4问题
对于 Windows , 配置 IP,如: 192.168.1.101, 如果这个 IP 已经在局域网内存在,那么将会提示局域网内已经存在该 IP。 而这个时候,Windows 7 将产生一个 “自动配置IPv4地址”,如:169…

营销自动化为什么能吸引企业的喜欢?它有何魅力?
在一次营销峰会上,我们听到这样一个令人惊讶的描述:“到2020年底,将会有85%的客户与企业的关系在没有人际互动的情况下进行管理。”虽然这听起来可能有点超前,但从营销的角度来看,“未来”已来。这个“未来”就是我们所…

php base64解码图片 base64加密图片还原
<?php//文件名:base64.php $data"/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2MBERISGBUYLxoaL2NCOEJjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY//AABEIADIA…

python mysql
2019独角兽企业重金招聘Python工程师标准>>> python实践3:cursor() — 数据库连接操作 (2012-05-07 11:00:40) 转载▼ 标签: itpython 操作数据库,要安装一个Python和数据库交互的包MySQL-python-1.2.2.win32-py2.5.exe࿰…

程序员效率低下的35个坏习惯
优秀程序员与平庸程序员的最终差别其实是习惯,避开那些让自己低效的坏习惯是程序员让自己变优秀的有效途径。 1.总是说“一会弄好”,但从来不兑现。(缺乏任务管理和时间管理能力)2坚持所谓的高效、优雅的“一行代码流”࿰…

PHP处理Oracle的CLOB
1. 写入数据在使用PDO的预处理方法时,如果使用bindParam()等而不指定字段的数据类型或使用execute(),PDO都会默认为string类型,并且限定一个默认长度 所以在存clob类型字段时必须使用bindParam()或bindValue()等,并指定字符…

c# 元组Tuple
Tuple类型像一个口袋,在出门前可以把所需的任何东西一股脑地放在里面。您可以将钥匙、驾驶证、便笺簿和钢笔放在口袋里,您的口袋是存放各种东西的收集箱。C# 4.0引入的一个新特性 Tuple类型与口袋类似,它可以存放不同类型的对象。CodeProject…

KVM之安装虚拟机
一、KVM安装:环境要求:1、如果是物理服务器,需要在BIOS中打开虚拟化VirtualizationTechnology一般的服务器默认是打开这个功能的。 2、如果是用VMware Workstation做实验,建立的虚拟机的CPU要勾选虚拟化功能,这样虚拟机…

使用 Strace 调试工具
strace是Linux环境下的一款程序调试工具,用来监察一个应用程序所使用的系统呼叫及它所接收的系统信息。 strace是一个有用的小工具,它可以通过跟踪系统调用来让你知道一个程序在后台所做的事情。Strace是一个基础的调试工具,在大多数Linux系 …

java——网络知识积累
1.获得局域网的所有主机ip地址 ping ip 等待每次回复的超时时间: -w 280 要发送的回显请求数:-n 1 Process processRuntime.getRuntime().exec("ping "); process.getInputStream()----InputStreamReader()----BufferReader in…

卸载v吧v字典序
数组-136. 只出现一次的数字题目描述题目样例Java方法:位运算算法思路代码复杂度题目描述 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 题目样例 示例1: 输入: […

《JavaScript高级程序设计(第3版)》教程大纲
词条 《JavaScript高级程序设计》是2006年人民邮电出版社出版的图书,作者是(美)(Nicholas C.Zakas)扎卡斯。本书适合有一定编程经验的开发人员阅读,也可作为高校相关专业课程的教材。 献给搬砖人士,求职人士很不错的基础扎实笔记 前四章 js诞…

鸡肋的PHP单例模式
单例模式的要点有三个:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。<?php /* 单例模式举例,其要点如下: * * 1. $_instance 必须声明为静态的私有变量 * 2. 构造函数和克隆函数必须声明…

彻底理解js中this
相关博文:http://blog.csdn.net/libin_1/article/details/49996815彻底理解js中this的指向,不必硬背。 首先必须要说的是,this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定this到底指向谁,实际上t…

cvsdfgdfdf
数组-136. 只出现一次的数字题目描述题目样例Java方法:位运算算法思路代码复杂度题目描述 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 题目样例 示例1: 输入: […

怎样操作vue.js使用3DES加密
如何在VUE-CLI手脚架建立的工程中使用3des加密: 1npm install crypto-js --save-dev1import CryptoJS from crypto-js123456789101112131415161718192021222324252627//DES加密 Pkcs7填充方式encryptByDES(message, key){const keyHex CryptoJS.enc.Utf8.parse(key…

PHP 函数 ignore_user_abort定时执行任务的实现
ignore_user_abort 设置与客户机断开是否会终止脚本的执行。本函数返回 user-abort 设置的之前的值(一个布尔值)。int ignore_user_abort ([ string $value ] )参数描述setting可选。如果设置为 true,则忽略与用户的断开,如果设置…

echarts树图节点垂直间距_矿棉板吊顶标准工艺节点
材料探秘materials材料版块【矿棉板吊顶标准工艺】 材料探秘关键词:#吊杆与设备#吊顶龙骨#矿棉板#1 吊杆与设备相遇增加过桥节点图 ■ 本工艺管控要点◎ 顶面的水、电、风专业强制定位、预留、预埋必须全部完成,且电气穿线、测试完成并合格…

队列 queue
STL: 队列中pop完成的不是取出最顶端的元素,而是取出最低端的元素.也就是说最初放入的元素能够最先被取出(这种行为被叫做FIFO:First In First Out,即先进先出). queue:front 是用来访问最底端数据的函数. 1 #include <queue>2 #include <cstdio>3 uisng namespace…

Android精通:View与ViewGroup,LinearLayout线性布局,RelativeLayout相对布局,ListView列表组件...
UI的描述 对于Android应用程序中,所有用户界面元素都是由View和ViewGroup对象构建的。View是绘制在屏幕上能与用户进行交互的一个对象。而对于ViewGroup来说,则是一个用于存放其他View和ViewGroup对象的布局容器! Android为我们提供了View和V…

redis删除过期key的算法_面试官别再问我Redis内存满了该怎么办了
概述Redis的文章,我之前写过一篇关于「Redis的缓存的三大问题」,累计阅读也快800了,对于还只有3k左右的粉丝量,能够达到这个阅读量,已经是比较难了。这说明那篇文章写的还过得去,收到很多人的阅读肯定&…

开源监控解决方案Nagios+Cacti+PNP4Nagios+NConf+NDOUtils+Nagvis(六)ndoutils安装
前面的文章已经说过,NDOUtils必须使用2.0的版本才支持nagios4x,比较幸运的是该版本2014年就已经发布。一.安装#tar -axf ndoutils-2.0.0.tar.gz -C /usr/local/src/#cd /usr/local/src/ndoutils-2.0.0#./configure --prefix/usr/local/nagios LDFLAGS-L/…

网络安全技术分析:DDoS的攻与防
根据墨者安全相关数据研究发现,从今年年初开始,DDoS功击的数量相比去年几乎是翻倍增长,特别是游戏、金融、政企、电商、医疗行业,更是DDoS功击的重灾区,很多企业是闻“D”色变。DDos(Distributed Denial of Service),中…

pcl求平面法向量_线性代数6——平面方程与矩阵
线性方程的几何意义二元线性方程该方程是一个二元线性方程组,包含两个方程,每个方程是一条直线,两条直线的交点就是该方程有唯一解,这就是二元线性方程的几何意义。平面方程空间内不在同一直线上的三点构成一个平面,平…

php 类中的各种拦截器
1、__get( $property ) 访问未定义的属性时调用class lanjie {function __get($name){echo $name." property not found! ";} }$ob new lanjie(); echo $ob->g; 当我们调用对象$ob未定义的属性g时,调用拦截器__get()方法,输出“g property…

[Vue CLI 3] 源码之 webpack-chain
我们看一下 webpack-chain 到底做什么? Use a chaining API to generate and simplify the modification of Webpack version 2-4 configurations.熟悉 cli-plugin-babel、cli-plugin-eslint 源码的话,你会时常看到它。 如何使用呢? 1、加载它 const Co…

openstack页面自定义插件使用详解(django、ajax、post)(zTree为例)
2019独角兽企业重金招聘Python工程师标准>>> 感谢朋友支持本博客,欢迎共同探讨交流,由于能力和时间有限,错误之处在所难免,欢迎指正! 如有转载,请保留源作者博客信息。 Better Me的博客…

lazyload.js实现图片异步延迟加载
所谓图片异步加载,意思是不用一次把图片全部加载完,你可以叫它延迟加载,缓冲加载都行。 看看你有没有这种需求:某篇文章图片很多,如果在载入文章时就载入所有图片,无疑会延缓载入速度,让用户等…