作为一个测试工程师,你选择python还是java?

news2024/9/29 9:29:50

问:“你平时工作中,用java多还是用python多”?

答:“都还可以,根据具体的场景选择不同的语言”。

问:“比如说呢”?

答:“开发自己的测试平台,肯定会选择java;在centos服务器跑一些脚本,会选择python或shell;某些压测场景,追求高并发,可能会选择go语言”。

问:“我java和python都学了一些基础知识,不知道该选择哪种语言”。

答:“可以先选择一门你相对擅长的语言,先开始用起来”。

这是前两天,一位身边的小伙伴和我的对话。

相信有这样疑问的人不在少数,就是自己到底该选择python?还是java?作为自己主要的语言,这样就能专心的将一门语言学好,因为人的精力毕竟是有限的。我先抛出我的观点和建议:“其实语言是次要的,毕竟都是为测试工作服务,不要让选择阻碍了我们前进的脚步。你要做的仅仅是行动起来!就选择python(其实语言无所谓,我的建议如果没基础,就从python开始),先用起来再说。 不要怂,就是干!

拿我自己的经历来说,我刚开始工作的头两年主要用java做研发,后来转成测试工程师后,发现有些场景,更适合用python实现,于是开始尝试写python。我从来没有系统的去学习python的基础知识,就是用到什么不会了就查查资料,慢慢的就大致知道了python咋玩的。所以,编程语言是用起来的,不是学起来的!(这句话略有些偏激,是我个人的想法)。

下面的表格,是我整理的java和python的对比:

javapython备注
语言类型编译型+解释型语言【编译型】+ 解释型语言

 java和python都是高级语言,而计算机是不能识别

高级语言的,所以当他们运行时,会有一个工具将高级语言转成机器能懂的语言,

编译型语言:如果在运行前就将程序转成机器语言,运行时刻直接运行,比如C语言。

解释型语言:在程序运行时,再去解析程序的含义,然后运行。

是否开源是 是 
难易程度相对难度大一些相对难度小一些(仅仅是上手快)python语言简洁,上手会更快一些
语言复杂度相对知识体系更复杂,但介绍资料也更多语言比较简洁,不过官方介绍多为英文
运行速度

java的jre比较强大,另外还引入了JIT编译器技术,因此执行速度更快

语言上的特点

1. 每行代码后要加; 用于表示代码语句结束。

2. 强类型的语言,使用前需要声明变量类型。

1. python语句末尾不需要分号,但是要求强制缩进。

2. 弱类型语言,使用变量时不需要声明变量

单测框架

testNg、Junit5

pytest、unittest

web开发能力

框架很多,常用的springboot+mybatis

常用的有Django、Bottle

接口自动化

一般基于单测框架+网络请求框架,比如:testng+RestAssured

跟java设计思路类似,比如:requests网络库+pytest

ui自动化

可用Appium

同样可用Appium

我的建议

  • 如果你没有编程基础,那么不妨就从python着手,开始尝试写一些python脚本,可以有针对性的解决一些工作中实际的问题。
  • python只是上手比java快一些,但对我们来说,解决问题的实现思路是关键,所以java和python难度其实一样。
  • 总之不要将时间浪费在“选择java或python”,而应该用python(建议)开始行动起来。
  • 行动永远比语言更有效果。

总结:

感谢每一个认真阅读我文章的人!!!

我个人整理了我这几年软件测试生涯整理的一些技术资料,包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。欢迎大家点击下方名片免费领取,千万不要错过哦。

                                                   

 

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

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

相关文章

Stable Diffusion - ControlNet 插件中扩展局部重绘 InpaintOnly + LaMa 的算法与应用

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/131643131 LaMa: https://github.com/advimman/lama Paper: Resolution-robust Large Mask Inpainting with Fourier Convolutions LaMa: Large…

ActiveMQ详细入门教程系列

一、什么是消息中间件 两个系统或两个客户端之间进行消息传送,利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。 消息中…

ABeam中国2023社招 | ABeam旗下德硕管理咨询(深圳)招贤纳士

岗位需求 SAP Basis顾问 岗位职责 ■ 参与公司的SAP售前项目,负责Basis相关工作的方案制定 ■ 参与公司既有SAP运维项目,负责Basis相关的课题对应,系统改善等 ■ 负责SAP系统的Basis实施,SAP产品系统安装、升级、迁移、数据归档…

spring-java面向切面拦截器

切面,就是可以在代码执行的时候,在它执行的前面添加一个东西,一般我们用来做登陆拦截器验证以及敏感词的过滤。 他就3个东西,指定切点(要执行的代码),before代码执行前面加东西。after代码后加东…

AC220V转负压5V芯片方案-220v转-5vic

AC220V到负压5V的电路转换 问题描述 --------- 如何将AC220V电压转换为负压5V输出,并且在输入电压范围为45V至265V的情况下工作?还要求该电路能够提供可调的电流范围,从100mA至2A。同时,所需的芯片为AH8699(在700mA以…

BaGet做了一个Nuget私有服务器,Nginx代理之后还是会请求被代理得地址

Nuget搭建和使用可以参考官网得文档 https://loic-sharma.github.io/BaGet/installation/docker/ 这是我用Nginx代理之后出现得问题,观察请求url和响应回来得配置。配置中得ip地址得url是我被代理得下游地址,所以是无法访问的。 我原本以为是要去server…

怎么扫描二维码看视频?视频转成二维码的技巧

通过扫码来查看视频,是现在很多人都会选择一种视频展现方式,那么怎么制作视频二维码呢?下面给大家分享一个在线二维码生成器,支持多种二维码制作(免费在线二维码生成器-二维码在线制作-音视频二维码在线生成工具-机智熊…

手机上有好用的时间管理工具吗?

在日常工作中,时间管理是非常重要的一项技能。这样做不仅可以更好地安排工作计划,还能有效减轻工作压力,减少时间的浪费,从而达到提高工作效率的目的。那么,随着手机的普及和智能化移动应用的不断涌现,我们…

【ARM Coresight 系列文章 4 - ARM Coresight APB-AP 介绍】

文章目录 APB-AP 介绍及使用APB-MuxROM TableROM Table entries bit 分配 APB-AP 介绍及使用 下图是一个 常见的DAP 结构图,其AP使用的是APB-AP。 图 1-1 SWJ-DP 通过监控电路选择外部串行总线SWD或者 外部JTAG;通过 DPACC中的select register 选着AP(…

润和软件HopeStage与易捷行云EasyStack ECF×86云基础设施平台完成产品兼容性互认证

近日,润和软件HopeStage操作系统与北京易捷思达科技发展有限公司(以下简称“易捷行云EasyStack”)ECF86云基础设施平台完成产品兼容性测试。 测试结果表明,企业级通用操作系统HopeStage V1.0产品与ECF86云基础设施平台可以顺利适…

MF31:VBA_在Excel中加入页码

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。我的教程一共九套,分为初级、中级、高级三大部分。是对VBA的系统讲解,从简单的入门,到…

电路分析基础学习(上)第5章

李瀚荪版电分第二版 目录 电容的定义 电容为什么能阻断直流 电容的储能计算公式 电感的定义 电阻与阻抗的区别 电感为什么在直流通路中起着短路的作用 电感的储能计算公式 ----------------------------------------------------------------------------------------…

SSMP整合案例(16) vue java联合实现分页条件查询 终结篇

那么 之后 我们就要处理按条件查询了 简单说 就是我们在分页时 条件也要一起带过去 其实 我们之前写的App组件中 他们已经被定义上了 我们看到App.vue的这个位置 我们用了 formData 其中对应了三个条件 然后 我们在 src的App组件下 找到 getPages 中定义data的部分 然后改成…

idea显示左下角service

展示效果: 解决方案: 1.点击左下角 这个按钮 2.点击蓝色英文,add services 3.找到众多模板中的springboot,点击即可

【C++】手把手教你模拟实现vector

vector模拟实现 前言正式开始三个成员变量无参构造析构push_back[ ]重载pop_backinserterase迭代器失效问题insert迭代器失效erase迭代器失效 深浅拷贝拷贝构造函数赋值运算符重载 n个val构造resizefront和backfrontback 前言 这篇写的是vector的模拟实现。 如果对于vector不…

TI系列——CC2340B1 Uniflash烧录指南

一、物料准备 1.1 硬件准备 1、XDS110-PLUS2.0或者TI LaunchPad: 图 1 XDS110-PLUS2.0中包含: XDS110调试器、USB-A to Type-C-B电缆、具有2x5 2.54mm连接器的10引脚扁平电缆、具有2x5 1.27mm连接器的10引脚扁平电缆、具体请看说明指南文档。 图 2 上…

【MyBatis-Plus】DML编程控制 代码生成器(文末赠书)

1,DML编程控制 查询相关的操作我们已经介绍完了,紧接着我们需要对另外三个,增删改进行内容的讲解。挨个来说明下,首先是新增(insert)中的内容。 1. id生成策略控制 前面我们在新增的时候留了一个问题,就是新增成功后…

ArcGIS问题解决——CAD中的字体加载到ArcMap显示乱码

ArcGIS问题解决——CAD中的字体加载到ArcMap显示乱码 CAD中的字体加载到ArcMap显示乱码,是因为字符集的问题,解决办法即修改注册表中默认字符集为简体中文字符集即可。 ①winR,输入regedit,回车 ②找到计算机\HKEY_CURRENT_USER\SOFTWARE\…

网络变压器的工作原理

网络变压器又称“数据汞”,或网络绝缘变压器。在网络接口中起到两个主要作用: 一是通过将差模耦合和线圈耦合相结合的过滤器,增强PHY传输的差分信号的数据传输,并将电磁场转换为不同电平连接线的另一端; 二是隔离线连…

有人相爱,有人夜里开车看海,有人leetcode第一题都做不出来​​

LEETCODE 1. 两数之和 题解地址 https://leetcode.cn/problems/two-sum/solution/liang-shu-zhi-he-by-leetcode-solution/ 有人相爱,有人夜里开车看海,有人leetcode第一题都做不出来。 题目 给定一个整数数组 nums 和一个整数目标值 target&#xff0…