更多课程 选择中心

软件测试培训
美国上市教育机构

400-111-8989

软件测试培训

软件测试一定要有专业测试人员吗?

  • 发布:软件测试培训
  • 来源:软件工程之思
  • 时间:2019-05-31 14:20

现在很多想学软件测试的朋友都会问这样的问题:软件测试由谁来做?是不是必须得有专业的测试人员?

我个人的观点是:必须的。

首先,让我们看看专业测试人员与普通的开发人员进行测试会有什么不同。

假设要测试一个用户登录的功能,一个普通的程序员通常只会简单测试一下以下用例:

输入正确的用户名、密码,能登录;

输入错误的用户名密码,提示错误,不能登录。

而一个有经验的程序员还会测试一下其他情况,例如:

用户名或者密码为空,是否提示错误;

没有注册的用户名和密码,是否会提示错误。

但对于专业测试人员来说,上面这些肯定是不够的,还需要有以下这些情况的功能性测试:

用户名密码是否大小写敏感;

用户名或密码如果是用特殊字符,会不会导致程序异常;

用户名或密码如果特别长,是不是会有异常;

是不是所有主流浏览器和终端设备都能使用。

除了功能性的测试,还需要进行非功能性的测试,也就是像性能、安全性和用户体验等方面的测试。比如以下测试用例:

是否可以通过发送数据包反复登录,暴力破解密码;

会不会有Sql注入的风险;

大量用户同时登录,页面会不会崩溃;

用键盘Tab、回车键是否可以操作。

这就是专业和非专业的区别。

我在某军工单位也了解到这样的一个案例:

由于开发人员少,每个人都承担了多个软件的开发任务,没有专职的测试团队,软件测试都是由开发人员兼职的,只是将测试的软件和开发的软件交叉分开。这样的安排,使得测试效果非常不好。具体的表现是测试发现的Bug数非常之少,有价值的Bug基本没有,而且在由开发人员完成内部测试之后再进行的第三方测评仍然会发现大量的Bug。

为什么开发人员做测试会比专业测试人员的效果差这么多?可能有以下几个原因:

1、职责视角问题

开发人员的职责是完成用户期望的功能,这种思维方式会严重影响开发人员的测试行为,使得开发人员进行测试也只在注重功能的实现上,很少会考虑异常的测试用例和非功能性的测试用例。

而对于测试人员来说,他的职责是发现软件存在的缺陷,是挑错、找问题,所以,他的测试用例不仅仅是功能性的,而是会考虑所有可能的用户使用场景,正常的、异常的,甚至各种极端情况。

2、投入度问题

开发人员做测试只是兼职,他同时要负责繁重的开发任务,所以他的重心是在开发上,他在测试上投入的时间和精力肯定会比开发上少。这种投入度,测试的效果又怎会好?

3、测试能力问题

开发人员在测试能力上也会比专业测试人员差很多。对于测试方法的熟悉程度、对于测试工具的使用等方面,开发人员都是没有办法和专业的测试人员比。

所以,软件测试一定要有专业的测试人员来做才行。

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:需求测试注意事项有哪些?
下一篇:测试需要什么样素质的测试工程师?

如何编写测试计划和测试报告

软件测试中什么是缺陷管理?

测试需要什么样素质的测试工程师?

软件测试一定要有专业测试人员吗?

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省