先说下做外包软件测试的优点:
你可以接触到很多其他公司接触不到的软硬件产品。比如在IBM,所有的软件我们都是可以在内网中使用的,而AIX,IBM小型机等等,也都很容易搞到。而在微软,我的一个朋友是做Windows7测试的,在微软还没正式发布以前,这些很玄的东东他们就可以上手,这个真是让人羡慕。
可以跟同事学到很多技术。在这种大型外企中,你接触到的同时不是名校的博士就是名校的硕士,海归等等,如果想跟他们学点什么的话,没有人会对知识吝啬。
会有一些培训。先不说Team的内部同事之间的互相培训,在平时每隔一段时间,也会有很多其他Team的同事会做一些新技术的培训讲座,这些讲座只要你有时间,都是可以去听的。
虽然,外包测试有诸多优点,但如下的缺点不容忽视:
做任何事情不可能没缺点的,做外包测试,最大的缺点就是缺少所谓的归属感。因为打你入职那天起,就是在甲方公司工作的,平时根本不需要回外包公司。很多人说看着旁边不是Regular就是其他外包公司来的Contractor,会觉得没有归属感。很多外包公司在这方面做出了努力,比如在你过生日的时候,外包公司会给你订一个大蛋糕送过来;每逢过节都送一些礼品和购物券;组织春游秋游等等。至于这些事情能不能增加归属感,就是仁者见仁,智者见智的事情了。
很多开源产品在公司是不允许使用的(例如Hibernate,主要就是因为它需要遵循的开源协议),而很多外面平时很常用的软件也没机会再使用。
对IBM产品产生依赖性会比较麻烦。很多Contractor在IBM都会用Rational Application Developer或者是Rational Softeware Architect,因为它们的功能实在是太强大了。不过我一般还是选择用Eclipse,因为我怕离开IBM的时候,外面没公司买得起这些软件。
很少有白盒测试。如果你一心想来这些外企做白盒测试,我觉得希望会比较渺茫,因为China这边很少有代码,所以做白盒测试的可能性就小了很多。最多是有时会针对一些API来用JUnit来写一些代码。
做性能测试的不多,如果你以前是用LR等工具做性能测试的,那么来到这里会没用武之地(可以去HP做外包,LoadRuner是属于它的,我朋友在那里不但会常用,还会有免费培训),因为IBM的性能测试要么是自己写一些脚本,要么就是用Rational Performance Tester。
不要以为在IBM就会都用功能自动化测试,其实大部分工作都是黑盒手工测试。Rational Function Tester用的机会很少。不过每个Team发展都后期,都会自己写一点Automation Tools,来尽量简化自己的劳动,Shell,Bat脚本,Java程序等等。