前言

我有一个朋友,有一天问我这样的一个问题:说现在他们公司有五个python测试工程师。但是有一天领导要求他把所有的自动化测试代码,全部都转化成java语言。
虽然说他们在行动上还是接受了领导的任务,但是他一直没想清楚,这个真的有必要吗?
这是一个非常好的问题。至少他比「哪门编程语言才是最好的测试语言?」更好,因为这个问题有具体的语境,有人员的组织结构,以及一些更具象化的场景。实际上这个世界上并不存在什么最好的语言,每一门编程语言的选择,都需要根据公司的具体使用场景、现有人员的组成结构、学习成本以及编程语言的生态等等一系列的问题来考虑。
说实话我不能笼统的说,从python语言转化成java语言是有必要的,但是如果你遇到了类似的问题,你可以从以下一些方面来考虑。 如果你已经掌握了python做自动化测试,在考虑要不要学Java,也可以从这些方面考虑

第一点

自动化测试是可以同时使用两门语言,甚至是多门语言的。
比如现在你们公司主要用python语言做测试。忽然有一天,你们公司的领导甚至是你们公司的老板,要求你们换用Java。
那么我们首先做了第一件事情,就是当有新的测试代码需要编写的时候,我们可以直接使用Java语言, 而已经编写好了的老的代码,继续使用原来的Python语言。
这样我们可以在最短的时间下,完成老板交代的任务,也可以少做一些无用功。

第二点

我们需要考虑换编程语言,产生的成本和收益。
如果现有的测试用例本来已经运行得非常好了,这个时候如果我们贸然换编程语言的话,投资回报率是比较低的。我们花了大量的时间切换语言,但是产生的收益非常非常的微小。
但是如果我们使用现在的python语言编写的自动化代码运行不够好,测试比较脆弱,或者效率不高,换成Java语言能解决这些问题,我认为时值得的。
如果在测试的代码库中有一些运行很正常,而有些不太好,那么我们可以把那些运行不好的代码用 Java 语言重写,而那些正常的代码则继续使用 Python 语言,在合适的时候再考虑全面切换。

第三点

我们需要考虑:目前手工测试人员是否能快速适应自动化任务。
大多数的手工测试员代码水平是不高的,如果我们换成另外的一门编程语言那肯定会增加非常非常高的一些学习成本。
相对来说, python是非常容易入门的,对初学者也非常友好,所以手工测试上手自动化的速度也会比较快,但是如果我们换成了java语言,手工测试要去适应这一门语言可能需要非常长的时间。

第四点

我们需要考虑:是否能和开发人员进行很好的配合?
很多测试团队选择自动化语言的时候,考虑的是和自己公司或者是自己团队的开发语言保持一致,比如说公司里面使用java语言开发,那么我们就使用Java进行自动化测试,这样会比较方便,在适当的时候开发人员也可以运行我们的自动化测试代码。
但是据我所知,国内很少有开发人员有运行测试用例的习惯。甚至有很多的开发团队,瞧不上测试,拒绝做单元测试和自测,对测试的态度非常恶劣。
如果你碰到的是这种情况,那么,把自动化测试的语言换成和开发一致,并不会带来任何的好处。

第五点

我们需要清晰的算出,为什么要换语言?
是现在的编程语言,不能支撑已有的测试场景,还是新的语言能够带来非常直观的效益。
比如在一些对性能要求非常非常高的场景下,那使用python也可能不是很合适,这时候换成 go 会更合适。 有时候我们需要搭建比较强力的测试平台,用 Java 的 spring boot 可能会更合适。
总之换技术站或者是换编程语言,没有绝对正确的答案,必须要根据我们的业务场景和公司的具体情况进行分析。希望这篇文章对你以后做决策有所帮助。
下面是测试资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!
这是一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。
学习不要孤军奋战,最好是能抱团取暖,相互成就一起成长,群众效应的效果是非常强大的,大家一起学习,一起打卡,会更有学习动力,也更能坚持下去。相信你们有人也加了不少的技术交流群,我这里就不分享了,如果没有群的也可以扣我。

结语

1、进入任何行业都需要不断地学习和努力,软件测试工作也不例外,后期的你如果能学习计算机、数据库、开发等知识,将对你的个人提升有极大帮助。
2、时刻保持对行业的热情,既然想在这个行业混,那就就得多去了解行业的新动态,更新自己的技术。你得知道想要站得更高,就需要学习更高水平的技术。
希望有勇气改变的你,能发展得更好,持续学习必不可少,不要让自己很容易被替代!!!
努力的人有的是机会,但不努力的人是一定没机会的!!!
喜欢软件测试的小伙伴们,如果我的文章对你有帮助的话,那请你帮忙 “点赞” “评论” “收藏” 一键三连哦!