当前位置:网站首页>[4500 word summary] a complete set of skills that a software testing engineer needs to master
[4500 word summary] a complete set of skills that a software testing engineer needs to master
2022-07-07 17:53:00 【Two black】
There is no nonsense throughout this article , Only dry goods dry goods ! Software test engineer , What capabilities are required ? This article will go through three test engineer stages , What technical capabilities should be possessed and mastered respectively , What salary range can you get at each stage . The article is relatively long , Please be patient with reading .
One 、 The skill system that test engineers at different stages need to master
1、 Junior test engineer
The test engineer here , It's mainly software “ test ” field . That is, professional docking and responsible for software BUG lookup 、 Test the execution of the business 、 Test case design 、 Test plan writing 、 Test report generation and so on .
The skills that such test engineers need to master are as follows :
- ① Sorting out of software testing, testing process and concept , Proficient in software test case design and writing ;
- ② Master several common defect removal management tools ( ZenTao 、SVN、Testhub、Jira etc. ), Familiar with defect definition, standard and systematic test plan preparation, etc ;
- ③ master Web automated testing 、App Test environment construction and test method of automatic test ;
- ④ Master the of interface automation test Postman、Jmeter Tool use , At the same time, have a deep understanding of HTTP/HTTPS The principle and function of the protocol .
wages :6-12K about
Testers at this stage , Generally, it is just the degree of employment measured by the learning software . Most of them have mastered the theoretical concepts of software testing 、 Common test processes and test types ; Proficient in test case design and writing ; On the life cycle of software 、 Have a general understanding of the workflow . Know how to analyze the user needs of the software ; Master some common defect definitions and the generation of defect reports . Some practical project experience may be on Zen 、SVN、git And other testing related tools have a certain understanding and experience .
Slightly better automation test engineer , Also mastered Linux、Sql database 、 front end HTML And other basic computer skills . And understand the concept and of interface testing WEB+selenium Test environment construction and preliminary test ,APP Mobile terminal testing also needs to master some .
2、 Intermediate test engineer
For most Internet companies today , Intermediate automated test engineering needs talents they are very eager for . Most of these talents have mastered one or more programming languages (Python、Java、C++ etc. ). The intermediate test engineer can support the complete test system construction of the whole enterprise test department , Including automated test scripts for enterprise product development , For software performance 、 Pressure measurement 、UI、 Interface 、 Do all-round test design and management for front-end and back-end services .
The skills that intermediate test engineers need to master are as follows :
- ① Master at least one programming language ,Python、Java、C++ Fine . If there is no programming foundation, we suggest choosing Python, because Python The entry difficulty and learning cycle are easier than other development languages , It's more friendly to novices , and Python It is widely used in the field of testing ;
- ② Familiar with the environment construction of common automatic test framework (testNG+selenium+appium+requests etc. );
- ③ Have a good command of APP Complete flow and test method of mobile automation test , Especially master Monkey Use ;
- ④ Have a good command of Python+requests Development of test framework ;
- ⑤ Able to complete independently based on selenium Integrity web Framework development for automated testing ;
- ⑥ In depth grasp of performance testing Jmeter and Loadrunner The extended usage of , Be able to do it independently APP/WEB Performance testing .
wages :15-25K about
Testers at this stage , Generally, it is just the degree of employment measured by the learning software . Most of them have mastered the theoretical concepts of software testing 、 Common test processes and test types ; Proficient in test case design and writing ; On the life cycle of software 、 Have a general understanding of the workflow . Know how to analyze the user needs of the software ; Master some common defect definitions and the generation of defect reports .
Some practical project experience may be on Zen 、SVN、git And other testing related tools have a certain understanding and experience . Slightly better automation test engineer , Also mastered Linux、Sql database 、 front end HTML And other basic computer skills .
And understand the concept and of interface testing WEB+selenium Test environment construction and preliminary test ,APP Mobile terminal testing also needs to master some .
3、 Senior Test Development Engineer + Architects
Senior test development engineer can basically be called the whole enterprise product + Head of the testing department . Such positions are generally dominated by managers . Be responsible for the operation of the team 、 The overall software testing process is under control 、 White box test system construction , Development and management of enterprise large-scale automatic test platform , And the quality management and monitoring of the whole test system .
- ① Be familiar with the overall process and details of software testing , This kind of experience must be generated through countless tests and actual combat ;
- ② Proficient in various types of software testing (APP、 Applet 、 Front and rear ends 、WEB、sever wait ) Methods and solid experience , And it can be used freely for various types of test tools on the market ;
- ③ Yes CD/CI Have more skilled practical experience , Can use skillfully DevOps, Have perfect test architecture ability ;
- ④ Skilled programming and development ability , Familiar with the underlying code logic and structure of software , Able to develop independently 、 Manage and improve the automated testing framework ;
- ⑤ Have excellent team leadership , Reasonably arrange the personnel of the test team, organize and arrange .
wages :30-50W About the annual salary
Because of the particularity of their work , Need to master the user needs of the product 、 Design requirements and the underlying structure of the product , Testers will start from the user's point of view , Look at the possible adverse experiences and accurate demands in all aspects of software products .
So experienced testers , Be able to control all dimensions of the product as a whole . For example, analyze the user needs and experience of the product , Grasp the product positioning and function iteration from the perspective of users . It can be said that people who change from testing to product manager , It must be a very global 、 Forward looking excellent product manager or test manager .
Two 、 Learning software testing needs attention 5 A little bit
1、 We must lay a good foundation in the early stage
Learning software testing , Generally speaking, it can be divided into three stages .
The first stage is to master the basic knowledge of software testing , such as : Software testing concepts 、 Software test classification 、 Testing process 、 Test review 、 Test cases and test plans, etc . The basic conceptual knowledge of this group , It is the cornerstone of automatic testing of later learning . Master the foundation of soft measurement , The later study will be much smoother ;
The second stage is to master the basic knowledge of computer . such as : The concept of computer 、Linux Systematic learning 、MySql Database learning 、HTTP/HTTPS(TCP/IP) agreement 、 Front end knowledge ( a key :web+selenium Automation and App+Appium We need to use ). Although these points have nothing to do with automation in the early stage , But in the later stage, it is applied to the interface 、 performance 、Web、App This kind of basic computer knowledge will be involved in Automation ;
The third stage is the actual teaching of various types of tests . Whether software test engineers can get a high salary , It depends on how many test types you have mastered . At present, the mainstream interface automation 、App automation 、WebUI Automation and performance testing , They are all high paid employment technical points that are more popular in the market . Learning process , We must pay attention to mastery , And do more practical projects , In this way, when you are employed , We can deal with our work calmly .
2、 Learn at least one programming language
I won't say much about the importance of programming language to software testing . Anyone who knows a little about automated software testing must know . The interface automation we learned later 、App automation 、Web Automation and so on are all around automation . And automation is an automatic running script and framework developed based on Programming . When we use automation technology to test projects , You must know how to write a script that can debug the interface .
Of course, we may not need to write the script ourselves in the early stage , There are many ready-made automated test scripts and frameworks on the market . But we must also know how to use , If you don't learn programming languages , Then your testing technology must be online . When you master one or more programming languages , If you want to test again , Your advantage will become infinite .
This programming language , I suggest you choose this :Python > Java. Those without programming foundation can choose like this , Give priority to Python, Second study Java . because Python Getting started is relatively simple , and Python It is more widely used in automated testing in major enterprises , It can be said that almost 90 The automated testing languages chosen by enterprises are Python.
3、 Pay attention to the learning focus of different test types Improve learning efficiency
Interface automation : Need familiarity Python Language , And then in Python Learning on the basis of language Python Networking library Requests, Need to be encapsulated into a test script . It's time to Pytest Unit test library or use Unittst+HtmltestRunner To control the script to generate test reports , If you need continuous integration, you can learn again Jenkins
web automation : Also need to master Python Language , Then learn Python Control the browser's Library Selenium, Relative to the browser Webdriver
APP automation : Need to be familiar with Python Language , And then again Python On the basis of language , Study Python Control of cell phone App The library of Appium, Mobile phone related knowledge, such as Adb,Activity, Need to be encapsulated into a test script
The above points are mainstream test schemes , It is also a few important learning knowledge points that junior test engineers must master . There are more contents that can be based on their own employment direction and goal , Expand in depth .
4、 Whether in actual combat or in learning , Do more
Many kids have the same problem in learning . That is, the way and efficiency of learning are not very high .
One method recommended here is to take notes , You must remember , Better a good memory than a bad pen ! The quickest way to learn and absorb knowledge is to do it yourself !
Never take the source code I share directly and put it in your own environment after learning , hey , Found to work , perfect ! No matter the , This is the memory process that the brain is missing , Will let you in the follow-up study , More and more confused points are accumulated !
5、 Don't rely too much on existing tools Try to write your own tools
The software testing industry is special , There are many good testing tools on the market . Many newcomers to the software testing industry , Often get used to relying on off the shelf testing tools , Personally, I feel that these tools are enough to cope with work . But this is actually a very dangerous “ Inert thinking ”.
In fact, there are many excellent open source tools in the software testing industry , However, many large Internet companies prefer an automated test platform for secondary development based on such open source tools . Test engineers must also try to use such open source tools , One can expand their thinking and horizons , Second, you can be familiar with the underlying logic and development practice of the automated test framework as soon as possible . This can be in future interviews , Put a very good color on your resume .
Learning resource sharing
This wave of software testing data , Enough time for you to study for two years , All kinds of super complete rare test video tutorials and documents , Save it first :
These materials , For those who want to advance 【 automated testing 】 For our friends, it should be the most comprehensive and complete war preparation warehouse , This warehouse also accompanied me through the most difficult journey , I hope it can help you ! Everything should be done as soon as possible , Especially in the technology industry , We must improve our technical skills . I hope that's helpful …….
Join my communication group below for free !
边栏推荐
- 自动化测试:Robot FrameWork框架大家都想知道的实用技巧
- Run Yolo v5-5.0 and report an error. If the sppf error cannot be found, solve it
- 【可信计算】第十三次课:TPM扩展授权与密钥管理
- 【TPM2.0原理及应用指南】 5、7、8章
- 企业即时通讯软件是什么?它有哪些优势呢?
- Pro2:修改div块的颜色
- [distributed theory] (II) distributed storage
- Vscode three configuration files about C language
- ViewSwitcher的功能和用法
- 运行yolo v5-5.0版本报错找不到SPPF错误,进行解决
猜你喜欢
Simple loading animation
Deep learning - make your own dataset
[re understand the communication model] the application of reactor mode in redis and Kafka
目标检测1——YOLO数据标注以及xml转为txt文件脚本实战
swiper左右切换滑块插件
【可信计算】第十三次课:TPM扩展授权与密钥管理
In depth understanding of USB communication protocol
99%的人都不知道|私有化部署还永久免费的即时通讯软件!
本周小贴士#136:无序容器
zdog.js火箭转向动画js特效
随机推荐
Target detection 1 -- actual operation of Yolo data annotation and script for converting XML to TXT file
Import requirements in batches during Yolo training Txt
Vscode three configuration files about C language
【可信计算】第十一次课:TPM密码资源管理(三) NV索引与PCR
本周小贴士#140:常量:安全习语
Yarn capacity scheduler (ultra detailed interpretation)
textSwitch文本切换器的功能和用法
Pytorch中自制数据集进行Dataset重写
到底有多二(Lua)
第2章搭建CRM项目开发环境(搭建开发环境)
漫画 | 宇宙第一 IDE 到底是谁?
第2章搭建CRM项目开发环境(数据库设计)
mui侧边导航锚点定位js特效
Function and usage of calendar view component
【TPM2.0原理及应用指南】 1-3章
基于百度飞浆平台(EasyDL)设计的人脸识别考勤系统
线上比赛相关规则补充说明
Alertdialog create dialog
【网络攻防原理与技术】第6章:特洛伊木马
原生js验证码