百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术分类 > 正文

测试工程师必备技能整理

ztj100 2024-11-22 00:13 18 浏览 0 评论

一、通用技能

1业务相关

  • 业务需求知识
  • 业务管理流程
  • 行业现状和发展方向

2管理相关

1)时间管理(四象限法则)

  • 重要且紧急
  • 重要不紧急
  • 紧急不重要
  • 不紧急不重要

2)目标管理(SMART法则)

  • S(Specific):目标明确
  • M(Measurable):目标可度量
  • A(Attainable):目标可实现性
  • R(Relevant):目标必须和其它目标具有相关性
  • T(Time-based):目标具有明确的截止期限

3)知识管理

  • 工具:xmind、有道云笔记、印象笔记、Blog、GitHub、CSDN、testerhome等

4)团队管理

team leader

  • 任务分工
  • 工作汇报
  • 部门协作
  • 员工技术成长体系建设
  • 员工身心健康发展

team worker

  • 任务职责边界
  • 敢于担当,对自己负责,对团队负责,对公司负责
  • 彼此包容、和谐相处

3思考和沟通

思考

  • 今天完成了什么内容、明天需要做什么
  • 自己哪些方面做得好,哪些做得不够好,下次需要改进
  • 近期工作计划、学习计划(制定todolist)
  • 职业规划
  • 人生规划

沟通

  • 敢于沟通:主动了解和听取对方的想法,敢于表达自己的观点
  • 勤于沟通:多和别人交流自己的意见和想法
  • 善于沟通:提升沟通技巧和效率

二、工具

1)抓包工具

  • fiddler
  • Charles
  • wireshark

2)缺陷管理工具

  • jira
  • 禅道

3)文档协作管理工具

  • wiki--协同创作超文本系统
  • Docs--在线协作编辑工具
  • Xmind--思维导图软件

4)接口测试工具

  • postman
  • HttpRequester

5)压力测试工具

  • Jmeter
  • LoadRunner
  • Gatling(推荐)

6)安全测试工具

  • AWVS--网站及服务器漏洞扫描软件
  • sqlmap--检测与利用SQL注入漏洞的免费开源工具
  • Nmap--网络扫描和嗅探工具

三、客户端测试

1)adb命令

2)系统版本兼容

3)屏幕分辨率兼容

4)屏幕类型兼容(普通屏幕、全面屏、刘海屏、挖孔屏等)

5)导航栏类型兼容(虚拟导航栏、手势导航栏、mBack导航栏等)

6)厂商兼容

四、服务端测试

五、自动化测试

1)UI自动化测试

Android自动化测试

  • UIAutomator
  • appium(基于webdriver框架)
  • uiautomator2(轻量级,仅支持Android)
  • AirTest

iOS自动化测试

  • WebDriverAgent
  • appium(基于WebDriverAgent框架)
  • AirTest

Web自动化测试

  • Selenium

微信小程序自动化测试

  • ChromeDriver

2)接口自动化

Python+request

Java+rest-assured

Robot Framework

HttpRunner

Postman+Newman

Jmeter+Ant

Vue+Flask&Django

六、性能压力测试

1)Jmeter

2)Gatling:https://gatling.io

3)LoadRunner

七、专项测试

1)app性能测试

  • PerfDog
  • adb(安卓)
  • ffmpeg(音视频)

2)H5性能测试

  • Chrome Devtool
  • W3C Performance API

3)稳定性测试

  • Monkey
  • MonkeyRunner
  • MonkeyScript
  • Appcrawler

4)弱网测试

Charles

AppCrawler

5)耗电量分析

dumpsys batterystatus

Battery-Historian

BugReport

6)流量分析

Proxy

TCPDUMP

7)性能测试

内存

  • Android Studio Profile
  • PerfDog
  • leakCanary

CPU

  • Android Studio Profile
  • Android Monitor
  • PerfDog
  • iOS Instruments

卡顿分析

  • Systrace
  • Overdraw

八、编程相关

1)IDE

PyCharm -- Python

Intellij -- Java

Sublime -- shell

2)Python

unittest

pytest

request

3)Java

Testng

Junit

4)shell

linux基本命令(find、netstat、ps等)

linux三剑客

  • grep
  • awk
  • sed

5)代码版本控制

git

svn

6)DataBase

MySQL

MongoDB

7)正则表达式

Python正则表达式

Java正则表达式

shell编程之正则表达式

九、持续集成&持续交付

1)Jenkins

2)Jenkins Pipeline

3)Git SCM

4)Docker--应用容器引擎,创建容器的工具,并不是容器

5)K8S--基于容器的集群管理平台,用于管理容器

十、平台开发

1)Vue.js

2)Nodejs

3)Python Django/Flask

原作者:xiaoxiao

原出处:testerhome

原文链接:https://testerhome.com/topics/21366

相关推荐

Java网络编程(JAVA网络编程技术)

网络编程三要素1.IP地址:表示设备在网络中的地址,是网络中设备的唯一标识2.端口号:应用程序在设备中唯一的标识3.协议:连接和数据在网络中传输的规则。InetAddress类Java中也有一个...

字节Java全能手册火了!多线程/网络/性能调优/框架啥都有

前言在这个技术不断更新的年代,跟不上时代变化的速度就会被刷掉,特别是咱们程序员这一群体,技术不断更新的同时也要同时进步,不然长江后浪推前浪,前浪......一个程序员从一个什么都不懂的小白在学到有一定...

一分钟了解java网络编程(java基础网络编程)

一、OSI七层网络模型应用层:Http协议、电子邮件传输、文件服务器等;表示层:数据转换,解决不同系统的兼容问题(跨语言);会话层:建立与应用程序的会话连接;传输层:提供了端口号和传输协议(TPC/U...

Java编程-高并发情况下接口性能优化实践-提升吞吐量TPS

记得前段时间工作中接到一个任务是优化一个下单接口的性能提高接口的吞吐量TPS,前期通过arthas工具跟踪接口的具体方法调用链路及耗时,发现了影响此接口的性能瓶颈主要是加锁的方式,后来变更了锁的方式...

socket 断线重连和心跳机制如何实现?

一、socket概念1.套接字(socket)是网络通信的基石,是支持TCP/IP协议的网络通信的基本操作单元。它是网络通信过程中端点的抽象表示,包含进行网络通信必须的五种信息:连接使用的协议,...

迅速了解-Java网络编程(java基础网络编程)

Java网络编程在JavaSE阶段,我们学习了I/O流,既然I/O流如此强大,那么能否跨越不同的主机进行I/O操作呢?这就要提到Java的网络编程了。...

Java网络编程详解(java 网络编程)

网络编程基础知识最!最!最!重要网络编程基础概念网络编程不等于网站编程,网络编程即使用套接字(socket)来达到各进程间的通信,现在一般称为TCP/IP编程;网络编程分为服务端和客户端。服务端就相当...

「开源推荐」高性能网络通信框架 HP-Socket v5.7.2

简介HP-Socket是一套通用的高性能TCP/UDP/HTTP通信框架,包含服务端组件、客户端组件和Agent组件,广泛适用于各种不同应用场景的TCP/UDP/HTTP通信系统,提供C/...

Java网络编程从入门到精通:打造属于你的网络世界

Java网络编程从入门到精通:打造属于你的网络世界在当今这个信息爆炸的时代,网络编程已经成为程序员必不可少的一项技能。而Java作为一种功能强大且广泛使用的编程语言,在网络编程领域也有着举足轻重的地位...

5分钟读懂C#中TcpClient、TcpListener和Socket三个类的角色

一、核心功能与定位1.Socket类:底层通信的基石-位于System.Net.Sockets命名空间,提供对网络协议栈的直接操作,支持TCP、UDP等多种协议。-手动管理连接细节:需...

(三)谈谈 IO 模型(Socket 编程篇)

快过年啦,估计很多朋友已在摸鱼的路上。而我为了兄弟们年后的追逐,却在苦苦寻觅、规划,导致文章更新晚了些,各位猿粉谅解。上期分享,我们结合新春送祝福的场景,通过一坨坨的代码让BIO、NIO编程过程呈...

大数据编程入门:Java网络编程(大数据 编程)

如果想要编写出一个可以运行在多个设备上的程序,应该怎么做呢?答案是网络编程,今天小编将为大家带来大数据编程入门:Java网络编程。一、网络编程概念网络编程是指编写在通过网络连接的多个设备(计算机)上运...

基于JAVA的社交聊天室(java聊天设计与实现)

基于Java的社交聊天室一、前言随着互联网技术的迅速发展,实时通信和在线社交已成为人们日常生活的重要组成部分。基于Java的社交聊天室系统,凭借其跨平台、高性能和安全性等特点,为用户提供了一个集中、开...

java-socket长连接demo体验(java socket长连接)

作者:DavidDing来源:https://zhuanlan.zhihu.com/p/56135195一、前言最近公司在预研设备app端与服务端的交互方案,主要方案有:服务端和app端通过阿里i...

JAVA数据库编程(java数据库编程指南)

预计更新###第一节:什么是JAVA-JAVA的背景和历史-JAVA的特点和应用领域-如何安装和配置JAVA开发环境###第二节:JAVA基础语法-JAVA的基本数据类型和变量-运算符和...

取消回复欢迎 发表评论: