声明(重要的事情说3遍:我也是上班做测试的,不是搞培训的)
--我不是做培训的哈,但是大家可以给我推荐个周末可以做兼职的线下机构,定红包感谢;
--做了10年+测试(8+性能测试),笔记很多,但是很凌乱,久了不用容易忘,查找也不方便,为了逼迫自己梳理,所以写博客分享,抛砖引玉,也希望能积累人脉,期望以后有测试朋友能给我推荐个线下机构周末做兼职;
--后续新文均首发微信公众号『全栈测试笔记』,记得关注公众号哦;
--学习交流测试技术,左侧加Q群,或者进测试提升圈:https://www.cnblogs.com/uncleyong/p/11751389.html
给自己充电:测试提升圈
职业发展瓶颈?待遇低?工作不好找、技术差、年龄大?
青春正盛,未来可期。低成本投资自己:测试提升圈,https://www.cnblogs.com/uncleyong/p/11751389.html
书籍&课程推荐
“系统+专业”书籍推荐:https://www.cnblogs.com/uncleyong/p/11978650.html
自学测试:提升路线建议
0、测试技术提升建议:https://www.cnblogs.com/uncleyong/p/10836607.html
1、测试入门:测试理论基础→常用测试工具→linux命令→数据库sql基础
2、python接口自动化:python基础→python接口自动化框架;(实战:https://www.cnblogs.com/uncleyong/p/12016690.html)
java接口自动化:java基础→java接口自动化框架;
ui自动化:前端基础(html、css、js)→ui自动化框架
3、性能:性能概念→loadrunner入门→jmeter及beanshell(需要java基础)→架构知识→linux分析调优→各种中间件服务器等定位调优
从0到实战:https://www.cnblogs.com/uncleyong/p/12311432.html
4、测试开发:python→web开发框架(django或者flask)→前端
java→web开发框架(springboot)→前端
5、各种自动化测试框架汇总:https://www.cnblogs.com/uncleyong/p/10850791.html
一、基础:测试理论
其它【第一篇】兼容性测试
其它【第二篇】敏捷测试
二、基础:常用测试工具(postman,fiddler、git等)
常用工具【第二篇】接口测试2:jmeter,(已迁移至公众号『全栈测试笔记』)
charles
三、基础:linux常用命令、shell、环境搭建
linux
Linux【第二篇】awk:文本处理工具
Linux【第三篇】sed:行编辑器
Linux【第四篇】grep:查找
Linux【第五篇】sort
Linux【第六篇】find
Linux【第七篇】cut
shell
环境搭建
虚拟机【第一篇】VirtualBox下安装linux虚拟机:含centos6、centos7
基础软件安装【第二篇】nginx在linux下安装(源码编译)
基础软件安装【第三篇】jdk8在windows及linux环境下安装
基础软件安装【第四篇】tomcat在windows及linux环境下安装
基础软件安装【第五篇】jenkins在windows及linux环境下安装
基础软件安装【第六篇】maven在windows及linux环境下安装及基本使用
基础软件安装【第七篇】ant在windows及linux环境下安装
基础软件安装【第八篇】zookeeper在windows及linux(含多节点)环境下安装及其命令使用
基础软件安装【第九篇】python在windows(双版本)及linux(源码编译)环境下安装
基础软件安装【第十一篇】mysql在windows(含客户端工具Navicat安装及配置)及linux(yum)环境下安装
基础软件安装【第十二篇】oracle在windows(含客户端工具pl/sql安装)下安装
基础软件安装【第十三篇】redis在linux下(源码编译)安装及客户端RedisDesktopManager安装使用
基础软件安装【第十四篇】mongodb在linux下安装及客户端安装使用
基础软件安装【第十五篇】memcache在linux下安装及客户端安装使用
基础软件安装【第十六篇】git在windows及linux(源码编译)环境下安装
基础软件安装【第十七篇】kafka在linux下安装
基础软件安装【第十八篇】RocketMQ在linux下安装
环境搭建【第一篇】linux下负载均衡:nginx + 2tomcat
环境搭建【第三篇】linux下搭建商城
apache + tomcat
四、基础:数据库基础(mysql、redis等)
关系型数据库
关系型数据库【第二篇】Oracle常用操作
非关系型数据库
redis【第二篇】主从配置
redis【第三篇】java、python及jmeter操作redis
mongodb【第一篇】mongodb常用操作
memcache【第一篇】memcache常用操作
五、自动化测试:框架及实战
自动化实战:https://www.cnblogs.com/uncleyong/p/12016690.html
编码基础
python基础:
java基础:https://www.cnblogs.com/uncleyong/p/12594279.html
接口自动化框架
接口自动化测试【第一篇】JMeter + Maven + Jenkins
接口自动化测试【第二篇A】JMeter + Ant + Jenkins(windows版)
接口自动化测试【第二篇B】JMeter + Ant + Jenkins(linux版)
接口自动化测试【第三篇】SpringBoot版mockserver开发及生成swagger接口文档
接口自动化测试【第四篇】Java版接口自动化测试框架开发(含httpclient使用)
接口自动化测试【第五篇】Flask版mockserver开发
接口自动化测试【第六篇】Python版接口自动化测试框架开发(requests + unittest)
接口自动化测试【第七篇】Python版接口自动化测试框架开发(pytest)
接口自动化测试【第八篇】moco工具使用(各种json配置:form-data,json,上传,鉴权,cookie_token,以及flask、springboot开发类似功能)
UI自动化测试框架(web、app)
源码解读:webdriver client的原理,https://www.cnblogs.com/uncleyong/p/11898297.html
https://www.cnblogs.com/uncleyong/p/11668037.html(老)
UI自动化测试【第一篇】Python版WEB UI自动化测试框架开发(selenium)
UI自动化测试【第二篇】Python版APP UI自动化测试框架开发(appium)
UI自动化测试【第三篇】Python版APP UI自动化测试框架开发(airtest)
六、性能测试:从0到实战
https://www.cnblogs.com/uncleyong/p/12311432.html
服务端性能
性能测试术语
性能测试基础【第一篇】概念:参数化、关联、事务、思考时间、检查点、集合点、tps、art、常用函数、场景、分析
性能测试基础【第五篇】性能测试报告(模板放Q群了)
loadrunner系列
LoadRunner基础【第六篇】事务、检查点、集合点、思考时间、其余设置等
LoadRunner脚本开发【第一篇】LoadRunner开发http协议接口之form-data脚本
LoadRunner脚本开发【第二篇】LoadRunner开发http协议接口之json脚本
LoadRunner脚本开发【第三篇】LoadRunner开发ftp协议接口之上传文件脚本
jmeter系列
JMeter【第一篇】JMeter5.1在windows(含插件安装)及linux下安装
JMeter基础【第三篇】JMeter5.1元件作用域及执行顺序
JMeter基础【第五篇】JMeter5.1关联:正则关联一个及多个值
JMeter基础【第五篇】JMeter5.1关联:5种关联方法
JMeter基础【第六篇】JMeter5.1事务、检查点、集合点、思考时间、其余设置等
jmeter引用jar包的3种方式 (已迁移至公众号『全栈测试笔记』)
Jmeter+Influxdb+Grafana监控平台搭建:https://www.cnblogs.com/uncleyong/p/11885192.html
性能测试:jmeter中通过beanshell把关联转变成参数化,(已迁移至公众号『全栈测试笔记』)
JMeter开发http协议接口脚本汇总: https://www.cnblogs.com/uncleyong/p/11668665.html,(已迁移至公众号『全栈测试笔记』)
JMeter脚本开发【第一篇】JMeter5.1开发http协议接口之form-data脚本
JMeter脚本开发【第二篇】JMeter5.1开发http协议接口之json
JMeter脚本开发【第三篇】JMeter5.1开发http协议接口之上传文件脚本
JMeter脚本开发【第四篇】JMeter5.1开发Java协议接口脚本
JMeter脚本开发【第五篇】JMeter5.1开发Dubbo协议接口脚本
JMeter脚本开发【第六篇】JMeter5.1开发WebSocket协议接口脚本
JMeter脚本开发【第七篇】JMeter5.1开发WebService接口脚本
JMeter脚本开发【第八篇】JMeter5.1开发SMTP协议接口脚本
JMeter脚本开发【第九篇】JMeter5.1开发TCP协议接口脚本
JMeter脚本开发【第十篇】JMeter5.1开发JDBC协议接口脚本
JMeter脚本开发【第十一篇】JMeter5.1开发FTP协议接口脚本(有道云笔记)
其它工具【第二篇】locust安装及使用
其它工具【第三篇】siege性能测试
性能自动化测试框架
性能自动化测试【第一篇】JMeter + Maven + Jenkins
架构中常见服务器的监控及调优
【第一篇】企业级性能测试问题分析流程(基于一个最简单的架构)
【第二篇】linux服务器性能监控及调优
https://www.cnblogs.com/uncleyong/p/7258049.html
【第三篇】nginx性能监控及调优
【第四篇】apache性能监控及调优
【第五篇】tomcat性能监控及调优
【第六篇】mysql性能监控及调优
【第七篇】redis性能监控及调优
JVM性能监控及调优
【第一篇】jvm模型
【第二篇】jvm日志分析
全链路压测
全链路压测【第一篇】基于springcloud微服务
网络监控及分析
tcpdump & wireshark
性能测试案例(监控、分析、定位、调优)
获取不到redis连接池:Could not get a resource from the pool,(已迁移至公众号『全栈测试笔记』)
redis获取不到连接池:Timeout waiting for idle object,(已迁移至公众号『全栈测试笔记』)
响应时间长分析定位,(已迁移至公众号『全栈测试笔记』)
tps波动频繁,(已迁移至公众号『全栈测试笔记』)
一个频繁fgc问题,(已迁移至公众号『全栈测试笔记』)
带宽占用高 ,(已迁移至公众号『全栈测试笔记』)
磁盘IO繁忙,(已迁移至公众号『全栈测试笔记』)
通过查看对应的线程栈信息分析定位cpu消耗高的原因(异步打印日志)
等待锁超时:https://www.cnblogs.com/uncleyong/p/11613722.html
后续会逐步加上下面问题的例子
常见的性能问题主要包含:
a.服务器问题
cpu:us & sy
内存:使用率及交换率
磁盘io:读写慢
磁盘容量
b.网络带宽:看当前收、发速度及有没有丢包、端口使用情况
c.cpu高:看线程信息;是否fgc等
d.队列问题(负载高):磁盘io队列(物理读高);线程队列(线程阻塞、锁竞争)
e.各种连接池问题:不足、未释放(以及半释放)
f.死锁问题:线程死锁、数据库死锁
g.sql问题:索引(未加、使用不当)、慢sql(全表扫描、查询结果未分页展示、sql逻辑)、长事务
h.应用log级别:设置不正确
i.缓存设置问题
j.业务不合理
前端性能测试
前端性能测试【第一篇】web前端性能
前端性能测试【第二篇】app前端性能
七、测试开发:java、python、前端、框架
推荐:
后端:java + spring + springboot + mybatis
前端:html + css + js + vue
java
开发工具【第一篇】idea在windows下安装、配置及基本使用
Java【第一篇】基本语法之--关键字、标识符、变量分类、数据类型及转换
Java【第十一篇】泛型
Java【第十二篇】枚举
Java【第十三篇】注解
Java【第十四篇】多线程
Java【第十五篇】网络编程
框架
*spring
springmvc
*springboot
*mybatis
springcloud
zookeeper
dubbo
python
开发工具【第一篇】pycharm安装、配置及基本使用
Python【第一篇】python安装、pip基本用法、变量、输入输出、流程控制、循环
Python【第二篇】运算符及优先级、数据类型及常用操作、深浅拷贝
Python【第四篇】函数、内置函数、递归、装饰器、生成器和迭代器
Python【第六篇】面向对象
Python【第七篇】网络编程
Python【第八篇】并发编程(进程、线程、协程)
前端
*【第二篇】css
css(一)语法、引入方式、选择器分类、选择器优先级
css(二)字体、颜色、文本、背景(堆叠、切图等)
css(三)盒模型、margin、padding、display、float、position、z-index、overflow
*【第四篇】vue
【第六篇】ajax
x【第七篇】jquery
x【第八篇】bootstrap
八、安全测试(从入门到入狱)
安全测试【第一篇】企业级安全测试
九、简历、笔试、面试(机会只留给有准备的人)
你可以任性的裸辞,但是切忌毫无准备的裸面,裸面就是浪费时间、浪费机会。
简历
【第一篇】如何编写吸引人的高质量简历
笔试及面试
【第一篇】笔试题及答案汇总,包含:linux及shell、数据结构、算法、编程(python、java)、数据库操作
性能测试面试题:如何找到并发数、平均响应时间、tps的最佳点
面试自动化:如果你认为知道18种定位方式就算会自动化,那就太low了(webdriver client的原理):https://www.cnblogs.com/uncleyong/p/11898297.html
https://www.cnblogs.com/uncleyong/p/11668037.html(含参考)
十、测试管理
水平有限,难免有错,欢迎斧正;
能力不足,深度不够,欢迎指导。