中级软件测试工程师独立培养计划

一个朋友要去培训机构学习软件测试,学费2万,学时4个月。
认为这是在浪费钱和时间,遂及时劝阻朋友。 为避免朋友入坑,经过测算,最快需要2个半月才能教出来一个零基础起步的软件测试工程师。 设计的最终课纲如下:

一、linux操作系统使用

(1) linux历史了解:

  • 操作系统起源
  • 操作系统发展
  • unix历史
  • minix历史
  • 贝尔实验室历史

(2) 文件管理:

命令作用 命令举例
ssh 登录linux节点 ssh -P 22 root@192.168.1.31
查看文件列表 ls -l [dir]
切换目录 cd /tmp/
创建文件 touch file.txt
创建目录(文件夹) mkdir [-p] /tmp/xx/yy/zz
查看文件类型 file /tmp/file.txt
向文件写入内容 echo “你好,我在深圳” > /tmp/file.txt
向文件追加内容 echo “你好,我在深圳” >> /tmp/file.txt
打印文件内容 cat /tmp/file.txt
改变文件权限 chmod 644 /tmp/file.txt chmod u+w /tmp/file.txt chmod o+r /tmp/file.txt
文件重命名 mv /tmp/file.txt /tmp/file1.txt
本机移动文件 mv /tmp/file.txt /home/file1.txt
本机拷贝文件 cp /tmp/file1.txt /tmp/file2.txt
跨主机拷贝文件 scp /tmp/file2.txt root@1982.168.1.31:/tmp
删除文件 rm -rf /tmp/file.txt
压缩文件 tar -cjvf file.tar.bz2 file.txt tar -czvf file.tar.gz file.txt
解压缩文件 tar -xjvf file.tar.bz2 tar -xzvf file.tar.gz
磁盘分区 fdisk /dev/sdb1
磁盘格式化 mkfs.ext4 /dev/sdb1
挂载磁盘 mount /dev/sdb1 /mnt
文件链接 ln -s /tmp/file-soft.txt /tmp/link-file
文本编辑工具学习 vim学习、grep命令、awk命令集、sed命令集学习
windows上传、下载文件到Linux主机 安装工具apt install lrzsz -y 发送文件:sz file.txt 接受文件:rz

(3) 系统包管理工具:

ubuntu 发行版本:apt 包管理工具学习(安装、查看、下载、更新)
centos 发行版本:yum 包管理工具学习(安装、查看、下载、更新)

(4) 进程管理:

命令作用 命令举例
查看进程资源占用情况 top
查找进程pid ps -aux| grep “key-of-target-process”
进程转入后台启动 ./a.out &
查看后台进程 jobs
后台进程转前台执行 fg %1
前台进程转入后台执行 bg % 1
杀死进程 kill -9 pid
进程脱离终端启动 nohup ./a.out > /dev/null 2>&1 &
内核模块查看 lsmode modinfo
系统异常查看 dmesg
系统日志文件查看 ls /var/log/
systemctl系统服务管理 管理mysql进程状态:systemctl start|status|stop mysqld

(5) 内存管理:

命令作用 命令举例
查看cpu核心数 lscpu
查看磁盘剩余空间 df -h
查看内存使用情况 free -h
回收内存 echo 1|2|3 > /proc/sys/vm/drop_caches

(6) 网络管理:

命令作用 命令举例
查看ip地址 ifconfig
测试网络联通性 ping www.sina.com
配置ip地址 netplan工具

(7) vim编辑器学习:

掌握基础技能:用vim打开文件、复制、粘贴、删除、编辑行/列、查找、替换字符串、退出vim编辑器

(8) shell编程:

cli参数解析、变量定义、函数定义、函数传参、for循环、while循环、if判断、数组定义

二、网络协议概念了解

协议类型 功能说明
tcpip协议 有顺序有状态的网络数据传输协议,用于raw数据传输。 会用
udp 无顺序无状态的网络数据传输协议。 常用于游戏画面传输。 熟悉即可
http/https1.0 通讯、文件传输。 了解协议格式、会用
https3.0技术 用的不多,尚未普及,了解技术发展趋势即可。
ftp 专门用于文件通过网络传输的一种协议,用于广域网。 仅了解用途
nfs 网络文件传输协议,用于局域网。 会用即可
websocket 一种轻量级的消息传递协议,比http轻量。 仅了解用途
mailbox 邮件传输协议。 仅了解用途
mqtt 物联网传输协议。 仅了解用途

三、常用数据编码格式了解

数据编码类型 功能说明
json 高级数据编解码协议。 学习json数据的格式
html web站点常用的组件渲染编码方式。 熟悉即可
protobuf 用于对数据有是实现要求的场景。 例如im聊天工具、游戏传输
cbor 二进制的json编码协议,区别与以上三种,cbor属于专用数据编码协议,数据压缩度比protobuf高,用于区块链技术

四、开发语言类

python(重点学习):

python环境搭建、基础语法、变量类型、运算符号、条件语句、while/for循环语句、循环嵌套、break语句、continue语句、List链表、字符串、元组类型数据、字典类型数据、函数定义、(系统、第三方、本工程)模块管理、文件读写、目录操作、异常处理、正则表达式(仅做了解即可)、CGI编程、读写mysql数据库、多线程、json解析、定时器

java(仅做了解):

安装jdk、maven包管理、编译

c/c++编程(仅做了解):

gcc、g++、make、makefile、cmake、gdb概念了解

golang(仅了解):

gomod 项目管理工具了解

nodejs(了解):

了解使用场景:web前后端开发

五、数据库、消息队列、虚拟化、AI框架、源码管理工具

mysql数据库安装使用:

mysql单例搭建、创建数据表、增删改查数据表、数据表扩容、Msqyl集群搭建

redis数据库安装使用:

redis单例搭建,操作数据:字符串、哈希、列表、集合、有序集合。

redis集群搭建:cordis + redis

kafka消息队列搭建:

理解消息队列概念、学会搭建消息队列服务器

docker容器安装使用

docker安装、镜像拉取、镜像查看、容器启动、容器状态查看、容器日志查看、进入容器命令行

k8s集群管理(虚拟化技术,在当前这个阶段仅了解,下半年有空再学习):

k8s容器编排概念、deployment、pod概念、yaml配置文件启动|管理容器实例、亲手搭建k8s集群

nginx搭建一个http服务器

nginx搭建http服务器,nginx搭建正向/反向代理服务器、nginx搭建文件服务器

gluster存储集群搭建、ceph存储集群搭建、minio对象存储:

仅了解当前存储技术

raid集群搭建:

zpool 工具学习,搭建raid 阵列

pytorch、tensorflow:

学会安装AI框架、导入基本的计算单元进行运算

git源码管理工具学习:

会用git切换源码分支、下载源码、查看版本日志即可

六、测试工具

  • curl网络客户端命令使用
  • adb命令远测测试手机
工具 说明
curl 知名的网络客户端工具,用于服务器测试
adb 手机远程协助协议,用于远程连接手机。 用于手机测试
stf 知名的手机测试自动化工具,可以在web页面控制海量的智能安卓手机,对手机进行批量测试
TestComplete 开源免费的测试自动化工具,用于web测试

七、测试理论、测试方法

  • 控制变量法
  • 自上而下测试
  • 自下而上测试
  • 梯度测试
  • 边界测试
  • 破坏性测试
  • 黑盒测试
  • 白盒测试
  • 盲盒测试

八、markdown格式文档编写

学会markdown文档编写、学会编写测试报告的内容格式

九、实战项目

  • web压力测试
  • 服务器压力测试
  • app功能测试

论如何快速的培养一个软件测试工程师出来相关推荐

  1. 一个软件测试工程师的岗位职责

    其实软件测试入门并不难 我们自己生活中就有接触过很多跟软件测试相关的操作.而要是从事软件测试的工作,就是需要对软件进行更加系统的测试,并把你所测试的东西进行归纳总结,对软件整个使用和运行情况做一个系统 ...

  2. 一个软件测试工程师的学习体验

    [摘要] 软件质量越来越受到人们的关注,软件测试作为新兴行业有很多不完善的地方.很多从事软件测试工作的同行处于迷茫之中,如何提高,如何解决测试工作中的实际问题,困惑着每一个人.本文总结了一下个人经验, ...

  3. 【转载】一个软件测试工程师的学习体验 (受用)

    我最初参加测试工作的时候,不知道什么是软件测试,集成测试和系统测试的概念经常混淆, CMM 是什么就更加不知道了.那时候最简单的开关机也是通过直接拔插电源完成,安装系统对我来说简直是有史以来人类的最高 ...

  4. 一个软件测试工程师面试结束后想说的

    昨晚正式收到支付宝的Offer,提交完离职申请,我的求职过程也就告于段落了.写下这篇文章,希望我的这些经历可以对正在求职的你能有点启发. 首先,交代下我的背景,这样大家看的时候,就可以有个对比参照.我 ...

  5. 软件测试工程师真实经历,一个软件测试工程师的加班经历

    _ vvnoN2|S#tPt0背景:RYWr~*xFS0 1C+@c C}6V7`F:C!Y0        我们的软件产品需要在A.B.C三种硬件平台(理论上对我们的软件影响是不大的)上51Test ...

  6. 如何快速成为一名软件测试工程师?0基础到月薪15k需要什么技术?

    前言 测试的基础阶段就是功能测试,功能测试最多能拿15k左右,而自动化测试入行就能拿15k.但这两个需要掌握的技术完全不同,就拿薪资而论.如果刚入门学习完,功能测试7.5k左右,这个薪资不高的原因主要 ...

  7. 一个“软件测试工程师”的《读书单》

    书单简介 这是最近一年来读的书单,比我之前10年读的专业书加起来都多.记得之前看某培训视频,讲师说"测试工程师"是最不喜欢给自己投资的人,意思是测试工程师一般不喜欢研究最前沿的知识 ...

  8. 软件测试工程师真实经历,一个软件测试工程师的加班经历(转)

    写下这段流水帐似的周末加班经历,并不是因为无聊.只是老婆要我交待,一个"臭"(这个字眼只有很少机会享用)做软件的,老是这么晚回来,究竟在外面做些什么.如果哪天你也被要求写这样的材料 ...

  9. 龙笔记软件测试工程师,一个软件测试工程师的加班经历

    背景: 我们的软件产品需要在A.B.C三种硬件平台(理论上对我们的软件影响是不大的)上工作,早些时候已经成功在A上工作了,但在B.C上还有些问题,加班的那天是一个deadline,需要保证在B.C上也 ...

  10. 一个汽车软件测试工程师的三年工作总结

    入行汽车电子行业已经要三年了,闲下来的时间爱总结总结,感受一下现在自己的行业水平,技术水平和发展想法. 首先,工作三年了,除了业务知识积累之外,我觉得增长更多的是沟通与做事方式的长进.经常挂在嘴边的一 ...

最新文章

  1. 用Eclipse开发PHP项目
  2. python 创建目录_Python虚拟环境的搭建与使用
  3. 太阳花浏览器_一道浏览器面试题,就能看出你的前端功底
  4. 前端学习笔记之DOM(一)
  5. 某大厂外包员工在工作群抢新年红包,却被要求退回...
  6. azure机器学习_我如何打造一款赢得2016 Azure机器学习奖的游戏
  7. c语言输入输出重定向到串口,关于printf重定向到串口的问题分析 - 全文
  8. Python的一些用法分享
  9. python 全局解释器锁_python全局解释器锁(GIL)
  10. Go 性能优化技巧 7/10
  11. 手把手教你Excel数据处理!
  12. Jeff Dean执笔:一文看尽2018谷歌AI重大成果
  13. 2019华为软件精英挑战赛总结篇
  14. vs支持java吗_为什么vs不支持java
  15. 第一次写正规论文的同学务必分享,排版自动排版,加注释。。。。。。等等!!!!!!!!(copy也得整出档次来啊,这就是门面啊)
  16. 第5节 服务器系统简介及用户和组管理
  17. 【MM小贴士】定义采购申请类型
  18. 二进制在计算机内是如何运作的
  19. 使用gdebi去解决安装deb包的时候软件依赖问题
  20. 乔治·霍兹(George Hotz):特斯拉、谷歌最可怕的对手!

热门文章

  1. 计算平均成绩,科目数未知
  2. opencv特效编辑之雕刻效果
  3. VS2017的内存分析
  4. win32汇编 invoke 和 call区别
  5. mapinfo在线地图插件_官方插件“战争游戏”使用指南 公测同步开启
  6. 一步步写 CMOS 驱动模块 ELDD 学习笔记
  7. vim中:x和:wq的区别
  8. Java代码模拟实现购物车
  9. c语言程序设计 考试报名管理系统,C语言程序设计考试题库
  10. 写一个模拟彩票中奖的程序及彩票分析