已经写好代码,领导让我重写测试代码,我要不要提桶跑路?

news2025/1/10 19:53:06
我有一个朋友,有一天问我这样的一个问题:“说现在他们公司有五个 python 测试工程师。但是有一天领导要求他把所有的自动化测试代码,全部都转化成 Java 语言。”
虽然说他们在行动上还是接受了领导的任务,但是他一直想不清楚,这个真的有必要吗?

 

这是一个非常好的问题。至少他比「哪门编程语言才是最好的测试语言?」更好,因为这个问题有具体的语境,有人员的组织结构,以及一些更具象化的场景。实际上这个世界上并不存在什么最好的语言,每一门编程语言的选择,都需要根据公司的具体使用场景、现有人员的组成结构、学习成本以及编程语言的生态等等一系列的问题来考虑。

说实话我不能笼统的说,从 python 语言转化成 Java 语言是有必要的,但是如果你遇到了类似的问题,你可以从以下一些方面来考虑。如果你已经掌握了 python 做自动化测试,在考虑要不要学 Java,也可以从这些方面考虑

首先第一点,做自动化测试是可以同时使用两门语言,甚至是多门语言的。

比如现在你们公司主要用 python 语言做测试。忽然有一天,你们公司的领导甚至是你们公司的老板,要求你们换用 Java。

那么我们首先做了第一件事情,就是当有新的测试代码需要编写的时候,我们可以直接使用 Java 语言, 而已经编写好了的老的代码,继续使用原来的 Python 语言。

这样我们可以在最短的时间下,完成老板交代的任务,也可以少做一些无用功。

第二点,我们需要考虑换编程语言,产生的成本和收益。

如果现有的测试用例本来已经运行得非常好了,这个时候如果我们贸然换编程语言的话,投资回报率是比较低的。我们花了大量的时间切换语言,但是产生的收益非常非常的微小。

但是如果我们使用现在的 python 语言编写的自动化代码运行不够好,测试比较脆弱,或者效率不高,换成 Java 语言能解决这些问题,我认为是值得的。

如果在测试的代码库中有一些运行很正常,而有些不太好,那么我们可以把那些运行不好的代码用 Java 语言重写,而那些正常的代码则继续使用 Python 语言,在合适的时候再考虑全面切换。

第三点,我们需要考虑:目前手工测试人员是否能快速适应自动化任务。

大多数的手工测试员代码水平是不高的,如果我们换成另外的一门编程语言那肯定会增加非常非常高的一些学习成本。

相对来说, python 是非常容易入门的,对初学者也非常友好,所以手工测试上手自动化的速度也会比较快,但是如果我们换成了 Java 语言,手工测试要去适应这一门语言可能需要非常长的时间。

第四点,我们需要考虑:是否能和开发人员进行很好的配合?

很多测试团队选择自动化语言的时候,考虑的是和自己公司或者是自己团队的开发语言保持一致,比如说公司里面使用 Java 语言开发,那么我们就使用 Java 进行自动化测试,这样会比较方便,在适当的时候开发人员也可以运行我们的自动化测试代码。

但是据我所知,国内很少有开发人员有运行测试用例的习惯。甚至有很多的开发团队,瞧不上测试,拒绝做单元测试和自测,对测试的态度非常恶劣。

如果你碰到的是这种情况,那么,把自动化测试的语言换成和开发一致,并不会带来任何的好处。

最后,我们需要清晰地算出,为什么要换语言?

是现在的编程语言,不能支撑已有的测试场景,还是新的语言能够带来非常直观的效益。

比如在一些对性能要求非常非常高的场景下,那使用 python 也可能不是很合适,这时候换成 go 会更合适。有时候我们需要搭建比较强力的测试平台,用 Java 的 Spring boot 可能会更合适。

总之换技术站或者是换编程语言,没有绝对正确的答案,必须要根据我们的业务场景和公司的具体情况进行分析。希望这篇文章对你以后做决策有所帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1412159.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

免费小程序商城搭建之b2b2c o2o 多商家入驻商城 直播带货商城 电子商务b2b2c o2o 多商家入驻商城 直播带货商城 电子商务bbc

1. 涉及平台 平台管理、商家端(PC端、手机端)、买家平台(H5/公众号、小程序、APP端(IOS/Android)、微服务平台(业务服务) 2. 核心架构 Spring Cloud、Spring Boot、Mybatis、Redis 3. 前端框架…

2024亚马逊开店教程:开店准备与注册流程指南

随着新一年的到来,亚马逊开启了新一轮的卖家入驻,并且针对新卖家优化了入驻流程,下面为大家简单整理一下最新亚马逊入驻教程,有想要入驻开店的小伙伴速速看过来! 一、开店前准备 1、账号环境准备 为了防止账号由于网…

【华为 ICT HCIA eNSP 习题汇总】——题目集8

1、在VRP平台下,关于各个协议的外部优先级的描述,正确的是()。 A、OSPF路由的外部优先级是15 B、IS-IS路由的外部优先级是10 C、静态路由的外部优先级是60 D、BGP路由的外部优先级是20 考点:路由技术原理 解析&#xf…

OpenCV图像的基本操作

图像的基本操作(Python) 素材图 P1:die.jpg P2:cool.jpg V:rabbit.mp4, 下载地址 读取展示-图像 import cv2img_1 cv2.imread(./die.jpg) # default cv2.IMREAD_COLOR print("die.jpg shape(imre…

26.各品类中商品价格的中位数(ceil与floor函数)

题目: 题解: --这道题主要考察中位数的取法 SELECT category_id,cast(sum(price)/count(1) as DECIMAL(16,2)) medprice from( SELECTcategory_id,price,rn,max(rn)over(partition by category_id) max_rn from(SELECTcategory_id,price,row_number() …

音频格式之AAC:(3)AAC编解码原理详解

系列文章目录 音频格式的介绍文章系列: 音频编解码格式介绍(1) ADPCM:adpcm编解码原理及其代码实现 音频编解码格式介绍(2) MP3 :音频格式之MP3:(1)MP3封装格式简介 音频编解码格式介绍(2) MP3 :音频格式之MP3&#x…

工业交换机的OAM功能有哪些?

OAM(Operations, Administration, and Maintenance)是工业交换机中的一种功能,用于管理和维护网络的操作、管理和维护任务。它提供了以下功能: 1. 连通性检测:OAM可以监测和检测交换机与其他网络设备之间的连通性&…

如何在外远程访问家中本地威联通QNAP NAS

文章目录 前言1. 威联通安装cpolar内网穿透2. 内网穿透2.1 创建隧道2.2 测试公网远程访问 3. 配置固定二级子域名3.1 保留二级子域名3.2 配置二级子域名 4. 使用固定二级子域名远程访问 前言 购入威联通NAS后,很多用户对于如何在外在公网环境下的远程访问威联通NAS…

python环境安装sklearn及报错解决

安装 如刚开始安装&#xff0c;还未遇到问题请直接从重新安装库开始看&#xff0c;如果遇到报错&#xff0c;从问题开始看 问题 python安装sklearn报错 &#xff0c;报错信息如下 File "<stdin>", line 1pip install scikit-learn^ SyntaxError: invalid s…

OSS上传下载乱码问题

配置headers&#xff1a; "Content-Disposition": attachment; filename*UTF-8${encodeURIComponent(file.file.name)},

QT5.14.2开发的Mysql8.0系统安装部署过程

最近在Windows 11 64位系统下使用QT5.14.2开发了套系统、使用了MYSQL8.0数据库&#xff0c;项目使用mingw-64编译器进行编译&#xff0c;编译完成后使用windeployqt进行发布&#xff0c;并制作安装包&#xff0c;拷贝到工控机Windows10 64位系统上进行安装运行。本文记录下安装…

【VBA代码解决方案】md文档转Word后,全自动转换为标准的Word公式格式

【VBA解决方案】全自动将Word中的文本公式转换为标准公式 写在最前面VBA代码全自动方法将md文档导出为word代码如何运行VBA代码注意事项 一些如何实现的回忆记录步骤解析手动将文本转换为Word公式代码逻辑步骤设想代码解析代码解释总结 其他背景介绍应用场景VBA脚本介绍如何使用…

LLM之RAG实战(二十一)| 使用LlamaIndex的Text2SQL和RAG的功能分析产品评论

亚马逊和沃尔玛等电子商务平台上每天都有大量的产品评论&#xff0c;这些评论是反映消费者对产品情绪的关键接触点。但是&#xff0c;企业如何从庞大的数据库获得有意义的见解&#xff1f; 我们可以使用LlamaIndex将SQL与RAG&#xff08;Retrieval Augmented Generation&#x…

Linux--基础开发工具篇(1)(yum)

1.Linux 软件包管理器 yum 1.1yum是什么&#xff1f;什么是软件包&#xff1f; yum是什么&#xff1f; yum是一个软件下载安装管理的一个客户端&#xff0c;就如小米应用商店&#xff0c;华为应用商城。 Linux中软件包可能有依赖关系--yum会帮助我们解决依赖关系的问题。 什么是…

eNSP学习——利用单臂路由实现VLAN间路由

目录 原理概述 实验内容 实验目的 实验步骤 实验拓扑 实验编址 配置步骤 创建VLAN并配置Access、Trunk接口 配置路由器子接口和IP地址 配置路由器子接口封装VLAN 测试结果 原理概述 在以太网中&#xff0c;通常会使用VLAN技术隔离二层广播域来减少广播的影响&#…

MacOS平台翻译OCR软件,双管齐下,还可自定义插件,为其添砖加瓦!

小编昨天为大家分享了Windows系统下的一款功能强大且免费的 OCR 开源工具 Umi-OCR。 今天则为大家推荐一款 MacOS系统下的一款 翻译 OCR 多功能双管齐下的桌面应用软件 Bob。这款软件虽然也上线了GitHub&#xff0c;但它不是一款开源软件&#xff0c;仓库只是作者为了用户反馈…

【C/C++】C/C++编程——第一个 C++ 程序:HelloWorld

第一个 C 程序&#xff1a;HelloWorld 大家好&#xff0c;我是 shopeeai&#xff0c;也可以叫我虾皮&#xff0c;中科大菜鸟研究生。昨天我们成功搭建好了 C 的开发环境&#xff0c;今天我们来介绍一下第一个 C 程序,打印一个"hello world"。首先我们先贴一下示例代…

从零实现一套低代码(保姆级教程)【后端服务】 --- 【21】实现数据库的动态建表等接口

摘要 在前面的两篇文章&#xff0c;我们主要是通过Upload组件和Image组件&#xff0c;真正的做到了设计器和后端服务之间的数据传递。 有了这个例子&#xff0c;应该比较清楚&#xff0c;对于低代码项目的服务端&#xff0c;它主要做的是一个抽象的数据存储。 因为正常做开发…

Tomcat运维

目录 一、Tomcat简介 二、系统环境说明 1、关闭防火墙&#xff0c;selinux 2、安装JDK 3、安装Tomcat 三、Tomcat目录介绍 1、tomcat主目录介绍 2、webapps目录介绍 3、Tomcat配置介绍&#xff08;conf&#xff09; 4、Tomcat的管理 四、Tomcat 配置管理页面(了解) …

分享 7 个最佳短信恢复应用程序,帮助恢复已删除短信

对于 Android 用户来说&#xff0c;丢失重要短信可能是一种令人沮丧的经历。幸运的是&#xff0c;有许多短信恢复应用程序可以帮助恢复丢失或删除的短信。在本文中&#xff0c;我们将与您分享 7 个最佳短信恢复应用程序&#xff0c;并帮助您找到可用于恢复已删除消息的最佳应用…