《测试自动化》遇到这些问题应该怎么解决?

在javaeye看到 有人问关于自动化测试方面的问题,就说了自己的一些看法,也在这里记录一下。

原文在:http://www.javaeye.com/post/320936

原帖:

假设你是一名测试工程师,现安排你去一个j2ee的电子商务平台项目上负责测试工作。
项目特征如下:
•项目会以迭代式来开发,以减少电子商务平台需求的变化带来的风险;
•项目计划3个月后发布第一个版本给用户使用,而后根据用户反馈的意见和市场变化再开发后续版本;
•项目团队除了项目经理、系统工程师和你之外,还有7个开发人员,他们都不了解测试;
•除了此平台的核心功能必须要正确实现外,客户还非常关注平台的性能和稳定;

根据上述项目特征,项目经理和你讨论一致认为采用自动化测试是非常适合这个项目的,能够解决测试工作量大且测试工程师少的问题。但还有一些问题需要你进一步的思考,
提出解决方案。问题如下:

1.自动化测试需要编写自动化脚本,而你对自动化脚本只是略知一二,由于项目成本限制
不可能在增加专门编写自动化脚本的人员,面对这样的问题你怎么解决?

2.单元测试自动化,你打算用到哪些工具或框架,为什么?

3.为了能够让单元测试自动化顺利实施,实施前的培训是非常重要,结合你选择的工具或框架谈谈培训的内容、重点以及时间安排?

4.robot和winRunner都是自动化功能测试的利器,它们之中都各自蕴含着自己独有的一套自动化测试框架和方法论,请综合评价以下这个两个工具,并最终选出其中那个更适合在这个项目上使用,
并说明理由?

5.bug跟踪管理是一个不可忽视的环节,请你为这个项目定义一个合理bug跟踪流程,将流程图绘制
如下,并附以文字说明?

6.除了上述问题,你认为还可能有哪些问题是需要考虑解决的?


我的回复:


我现在准备测试一个j2ee的项目。项目组2、30个人。内部有自己的测试,自己的QA,自己的配置管理员等。准备通过此项目过CMMI3。
但是,从我测试这里,对此项目并不了解,周会等我不参与,都是经理负责,我现在负责前期的一些准备工作,比如用例、做哪些方面的测试等。前一段帮忙测试了他们的一个jms插件,其他都没有参与。
只能说说自己对你的问题的一些看法。

1.自动化脚本我用的也不算多,原先用过robot,其他loadrunner、winrunner等都做研究使用。现在感觉selenium比较有意思,所以想学习学习。
其实自动化测试如果只有一个人,是很难做的,如果做功能这里的自动化,需要的人力很多。自己可以做的是性能方面的自动化。无论测试还是开发,都要求快速学习的能力的。边学边做,能做到什么程序就做到什么程序。测试对于此方面的压力感觉比开发要小些。
而且很多自动化测试,测试本身很难做的,因为需要开发从代码级别进行支持。所以很多情况只有遇到的才能了解、知道、解决,前期很难预测。

2.单元自动化,是开发人员的事情。和测试有什么关系??微软的开发和测试比例大概在1:2甚至1;3,所以他们有人力做单元测试。1个测试人员做 7个开发人员的单元测试工作,本来就是在开玩笑。而且如果开发人员本身不做单元测试,需要测试人员单作,那么对测试人员的要求其实很高的,国内的企业有多 少测试人员的待遇比开发人员高的呢?待遇差如何能有好的测试人员。这样的测试人员做单元测试,企业真的能放心吗?而且独立的单元测试需要了解很多的东西, 需要很多的文档支持,开发人员会提供的吗?
所以告诉他们,要不给我加很多厉害的测试人员,要不就让开发人员自己做单元测试。做不做都两码说呢。

3.为什么要测试给开发做单元测试的培训?单元测试本来就是开发应该具有的技能。至少我见过的大部分测试,都做的后期的系统测试,顶多集成测试。测试人员做单元测试的国内应该不多的吧。

4.robot和winrunner现在都在淘汰边缘了。因为此两样都没有新的版本,对大部分新的开发语言支持也不很好。感觉IBM新的主推功能测 试工具是IBM Rational Functional Tester ,MI主要资源用在了QTP上。不妨试验一下这两个工具,看看如何。甚至还可以用用selenium,个人感觉也比较好。

5.又见合理的bug跟踪。感觉bug跟踪没有合理,只有是否合适自己公司情况使用。现在大部分的缺陷管理软件都可以很容易的根据需要自定义流程。看看大家喜欢用哪种,就用哪种好了。这个不能一概而论的。

6.测试人员太少了。手工测试,最好用测试小组的方式。如果写测试用例,一个人会忙死的,还有性能测试,没人带会很痛苦。测试工程师和项目经理打交 道也不公平。我个人认为,测试和开发应该独立分离。有任何的事情,由开发项目经理和测试经理商讨,这样有一个缓冲的过程,对双方相处都有好处。还有文中说 的迭代,真的太广泛了。因为迭代感觉测试并不太好切入。开发人员并不需要了解测试,测试的工作是发现软件过程中因为各种原因产生的缺陷,开发的责任是按照 需求生产出合适的软件,目的并不相同。当然了,开发了解测试也有一定的好处,比如可以生产出更利于测试的软件,但需要很好的考虑投入和产出的问题。
顺便说说,测试并不保证软件的质量问题。问题更多又流程决定。测试更多是发现问题、拾遗补漏。呵呵,也许我消极了些。

上面仅仅是一个测试人员的一点点不成熟的看法,不要太较真。

 

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值