软件测试和软件开发的关系?
软件测试工程师:查找bug、管理bug、质量保证
软件开发工程师:系统设计、编码、修改bug
薪水收入对比:
软件开发:跨度非常大,1000-4、5万/月不等
软件测试:薪资稳定,一般为2000-6000/月
职业年限长度:
软件开发:3-5年
软件测试:有可能做到退休(如果你自己希望的话)
职业发展比较:
软件开发:做了3-5年开发后,仍未升为项目经理,考虑转行
软件测试:随着项目经验的增加及对行业背景了解的加深,越老越吃香
测试工程师与开发工程师目标一致、行为对立、并行工作,有生产就必然有质检,二者的工作相辅相成,开发人员和测试人员的主要矛盾就集中在对bug的定义上。测试人员辛辛苦苦发现软件中有问题,报了一个bug。这时就会出现两种状况。种,开发人员工作很忙,压力很大,外加心情不好,就会说出如下几类话:
a.你会不会用软件呀?
b.你使用了bt的方法发现了用户永远也不可能发现的问题
c.由于我使用了XXX技术,YYY方法和受到了ZZZ的约束,所以只能出现这样的问题,所以就不是bug
d.上次都说过了,是你们测试的问题,先保证测试用例的正确性再来测试
大家也许要问如何解决紧张的关系,我想到了几个方面,也欢迎大家补充。
先我要为测试人员说说好话,因为我们通常被认为是不重要的一群人。
1)开发人员通常把软件看成是程序,他们这种认识上的误区会排斥程序以外的其它因素,例如相关的文档。
2)开发人员通常把软件的质量等同于软件功能性方面的质量。ISO/IEC9126标准中定义了6大质量特性,我们做测试的人员不应该让开发人员钻其它五项的空子。
3)测试人员通常关注的软件的行为,也就是外在表现,是对外部质量的评价。而开发人员通常是关注软件的实现细节,也就是内部构成,即内部质量。外部质量和内部质量是不等价的,也就是说开发人员犯的错误会引入缺陷,而缺陷在特定的使用下才会产生失效。所以北大青鸟建议应该统一和测试人员关于bug的理解和认识,避免分歧的不断涌现。