软件测试和软件开发哪个好呢

2024-12-02 02:44:47
推荐回答(5个)
回答1:

题主这个问题有点广,各有各的有点吧!哪个好?

从工资上讲是软件开发:
软件开发是要看资历的。一般初级工程师,也就刚入门,基本能力过关,没经验的人工资大概4k到8k,随时间的累计工资也会上涨。工具工作年限5年以上,有丰富的团队开发经验,有一定的大型系统框架设计经验,工资大概会在30k到50k左右。
软件测试刚入行的软件测试人员,起步月薪大多才5000-7000元左右。高于同龄人1000-2000元的薪资水平,工作2-3年后月薪在9000-12000元左右,3年以后基本就在10k到20k左右。
从技术上讲是软件测试:
开发又要前端和都端,现在还有一个终端,这些开发基本要熟悉Java,H5,数据库等语言,作为一个公司的开发要想拿高工资技术肯定要到位。如今大量的人投入IT行业可为什么还是大量缺人,那是很少的人技术达到高端水平,可想技术的难度有多大。
测试是进入IT的一个低门槛职业,需要你掌握的内容不要求精,但是要求广。文案编写是最基本的还需要熟悉一下编程语言比如脚本。然后了解你自己所需要的工具,关于计算机的配置信息。相比于开发肯定是简单了不少。
职业规划上讲,肯定是软件测试:
开发是非常伤脑的职业,相信如果仔细的人会发现IT行业秃头的人多、年轻人多。第一点就是做开发费脑头发容易掉,很伤身体,所以一般40岁左右就是开发的结束年龄。第二点一个IT公司需要新鲜血液,没有新的idea,公司就会面临淘汰,所以年轻人较多。
软件测试门槛低、技术要点少,基本就是固定的结构和方法,所以对于资历越老对公司的效益越高。

回答2:

关于开发

很多人想进入IT行业,也是因为看中了它的快速发展。这两个职位并不是相互独立的,因为一名开发人员如果只知道低头写代码,而很少分析需求和业务是否存在问题,那么有可能无论代码技术有多强,也可能会由于需求本身就存在严重的问题,而导致自己辛辛苦苦写的代码被付之东流(因为需求本身是错误的,代码无论怎么写,都不会是正确的。),

或者说自己只是钻研编码技术,而忽略了自身代码质量的问题的话,那么就会陷入不断修改bug,不断产生bug的泥潭,而很难有更多技术的提升,更谈不上发展了。最要命的是有一天,公司告知我们,这个编码技术不再使用了,我们要用更新的语言去替换,所有的编码人员都会感觉世界末日已经来到了,因为要重新开始新的学习了.....

关于测试

对于测试也同样如此,如果一名软件测试人员只知道把程序安装后,模拟用户进行简单的功能测试(当然这个是必须要做的,但是不是唯一要做的),那么即使发现了问题,也可能不能得到很高的认可。因为有可能发现bug的时间太晚了,已经无法修改,或者要想修改,和返工差不多了。这就好比大楼已经快完工了,一个监理才发现地基存在严重问题一样。那么这样的测试,是很难受到公司的认可的。

还有就是,如果我们无法做到专业级的测试,那你只能是描述问题,而不懂的分析或定位问题,那么对于开发而言,这样的测试只能让他们感到很心烦,在工作的协作和配合方面就会有很多的阻力。除此而外,如果我们的测试只能停留在简单的手工功能测试方面,而不能通过自动化测试工具不断改进和提高测试工作的质量和效果,那么自己做几年后也会觉得很烦躁,因为纯粹的手工测试技术含量低,薪资待遇和发展也会有瓶颈......

回答3:

想到这个题目是有原因的。在软件测试职业培训中,听到最多的是这个话题。
现在有很多人的理解上的误区:学不会软件开发才去学软件测试的,或者是开发能力弱才去学软件测试的,或者是只能是女性学软件测试,男性不适合学软件测试。其实,这些都是认识上的误区,或根本对软件测试行业不了解,或是对软件测试工作的漠视。
通过和企业从业人员的沟通、发现现在企业对软件测试行业的从业人员的要求是越来越高,不仅仅要求他们具有深厚的软件测试理论、娴熟的测试技巧、自动化测试工具的精通,还要对他们是否曾有过软件开发经验都要很高的要求。现在外企或国内大型的软件外包公司都希望能够找到他们理想的员工,但实际上这样的人才很难找到,这是全才啊。
相对而言我建议你可以选择软件测试,他是2005年才刚开始的行业,目前人才的需求量很大的,你学完我之后应该就业和发展会更好 ,听说软件测试的可以做开发,但是软件开发只能从事简单的测试

回答4:

软件测试定义是:为了发现程序中的错误而执行程序的过程
(这个行业现在比较热门。而且好的测试员收入可观。)
它是帮助识别开发完成(中间或最终的版本)的计算机软件(整体或部分)的正确度(correctness)
、完全度(completeness)和质量(quality)的软件过程;是sqa(software
quality
assurance)的重要子域。
软件测试的目标:
(1)测试是为了发现程序中的错误而执行程序的过程;
(2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;
(3)成功的测试是发现了至今为止尚未发现的错误的测试。
软件测试的内容:
软件测试主要工作内容是验证(verification)和确认(
validation
),下面分别给出其概念:
验证(verification)是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。(do
the
right
thing)
1.确定软件生存周期中的一个给定阶段的产品是否达到前阶段确立的需求的过程;
2.程序正确性的形式证明,即采用形式理论证明程序符号设一计规约规定的过程;
3.评市、审查、测试、检查、审计等各类活动,或对某些项处理、服务或文件等是否和规定的需求相一致进行判断和提出报告。
确认(validation)是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。即保证软件以正确的方式来做了这个事件(do
it
right)
1.静态确认,不在计算机上实际执行程序,通过人工或程序分析来证明软件的正确性;
2.动态确认,通过执行程序做分析,测试程序的动态行为,以证实软件是否存在问题。
软件测试的对象不仅仅是程序测试,软件测试应该包括整个软件开发期问各个阶段所产生的文档,如需求规格说明、概要设计文档、详细设计文档,当然软件测试的主要对象还是源程序。
从不同的角度出发,软件测试可以划分为不同的分类:
从是否关心软件内部结构和具体实现的角度划分
a.白盒测试
b.黑盒测试
c.灰盒测试
从是否执行程序的角度
a.静态测试
b.动态测试。
从软件开发的过程按阶段划分有
a.单元测试
b.集成测试
c.确认测试
d.验收测试
e.系统测试

回答5:

普通来说软件开发的工资要高一些,接触的知识面相对来说要广一些
高端来说软件测试发展更为广阔一些,项目经理 产品经理 质量经理都能转
具体还要看你自己的爱好吧,喜欢开发就去干开发,不喜欢就去干测试