----------------------------------------- 变和不变的分割线 ------------------------------------
以上列举了一些相比传统软件行业的不同的地方吧,但是对测试人员来说,也有很多相同或者类似的地方。
1. 一样的需要非常了解产品和业务
对于测试人员来说,如果不了解产品和业务,测试工作很难开展,因为连最基本的对错(是不是bug)都很难判断,当然除了一些明显的错误,比如js出错这样的信息,这种缺陷产品体验的时候就能够发现或者等到被用户发现了。所以我们还是需要花很多的时间和精力来熟悉产品业务。从这个角度看,没有很大的变化,只是换了一个不同的领域而已,这个差别是不同的产品带来的,而不是因为传统软件或者互联网的差别带来的。
2. 一样的需要了解产品的技术
这个其实和上面有点类似,测试人员需要去了解产品开发用到的技术,这对深度的测试,甚至和很多测试技术和工具的应用有很大的关于,比如性能分析,内存泄露的发现,覆盖率的分析等等。不去学习和了解这些,很多工作没有办法开展。从方向上来看没有变化,我们也要去学习和实践这些东西才能更好的了解。但是具体的技术可能有所不同,比如互联网web的产品可能会常用到JS,PHP, Java, C++等语言,还有各种web服务器,cache,代理等等。
3. 具体的测试技术
上面说到了一些产品开发的技术,其实还有一块是测试方面的技术,其实这一块细化来看和传统的软件开发有很多相似甚至相同的地方。比如如果来做静态代码的扫描、局部的性能测试方法和工具、覆盖率的工具、自动化的一些工具和框架、一些监控的工具等等。
从这个角度来看,技术的差异并没有很大,当然互联网有一些特别,比如很多基于web的系统、分布式的、多层的,会对工具提出一些要求,这个差别其实倒不是很大,因为很多传统的服务器软件也是这样。
4. 测试设计的方法
上面提到,因为产品发布节奏的差异,使得整个流程必须更轻更快,但是针对于一个具体功能的测试的时候,用例的设计和执行上需要考虑的问题其实和传统的没有太大的差别。因为这个时候大家面临的问题是一样的,如何测这个软件的这个功能。所以一些思路和方法还是能用得上。
综合以上来看,局部的差异反而比较小,但是涉及到大的形态和流程方面的差异就会比较大。
也可能正是因为这样的原因,很多从传统软件到互联网的人也很快就能够融入并开始发挥作用,而且退回几年来看,现在各大互联网公司里面的人大部分也都是来自于所谓的传统软件企业。
---------------------------------- 其他的废话 ---------------------------------------------
我相信不同的领域的发展速度和机会是不一样的,这也是这几年很多人投身到互联网行业的原因之一,这个就好比经济学上所谓的市场对于资源配置的驱动力一样,很正常。但是另一个方面,会让人有一种错觉,以为换到一个快速发展的行业,自己立马变强了。其实冷静的来看,并不会如此,只是赶了个浪潮,真正的技术和能力不会因为你换了一个领域或者行业就变得强大或者高深了,要获得这样的提高一定是因为更多的学习,实践和思考,以及和别人的交流而慢慢得到的。
上面提到了互联网产品,其实有些时候,这是一个伪命题,因为在各大互联网公司都有传统软件,比如腾讯百度阿里都有客户端的产品,而且数量还不少,有些还有C/S架构的产品,国外的google也有chrome,picasa这种桌面的产品,facebook也出了IM客户端。所以在很大程度上,还是非常的需要比如Windows GUI产品的开发和测试技术,服务器类似企业级产品的方法和能力。当然,这些产品背后是连到互联网的,所以也有差异的部分,但是没有想象的那么大。
另外一个问题,有些时候大家在借互联网软件这个名字来逃避一些东西,比如一些不严谨,或者混乱的地方,就全部归结到这是互联网的特性,这个是一个“度”的问题,要自己去分辨。
另一个问题,对于初入互联网测试的人有什么建议呢?下面这些也是自勉。
1. 正视这种差异带来的改变,上面说的一些东西真的也是很大的不同,所以要积极的学习和了解。
2. 努力的去学习产品相关的知识,包括相关的开发技术,这样才能更好的开展工作。
原文转自:http://blog.csdn.net/superqa/article/details/7430619