当前位置:网站首页>Can automate - 10k, can automate - 20K, do you understand automated testing?
Can automate - 10k, can automate - 20K, do you understand automated testing?
2022-06-25 02:15:00 【Xiaowu knock code】

Some time ago, the company wanted to recruit 2 Automated tests , Colleagues met dozens of candidates , I found a very strange phenomenon , During the interview , If you're asking about the framework api、 Script these questions , Basically everyone can answer fluently , When asked about the actual project , similar “ How can I 0 Start building automation system ”“ Let you promote automation , How would you design the plan ” This kind of problem , Many people begin to avoid the important and take the light 、 equivocation .
I discussed this with my colleagues , It is agreed that the main problem is , Now there are too many channels to learn Automation , A lot of basic knowledge of automation can be learned through open channels , Many novices in automation move these technical terms and terms they have learned into their resumes , I feel as if I have completely mastered Automation .
But in fact ,“ Will be automated ” ≠ “ Can do Automation ”
If there is no enterprise level project practice , You can't know , How to disassemble project requirements ? How can I 0 To 1 Build an automation system ? And how to avoid the pit in the process of automation implementation ?
He said it , I still lack experience in automation practice , At the same time, there is no automatic test process specification that can be referred to .
Did automated testing for several years , I suddenly thought about this problem , Summarize your previous learning experience , The pit of tread , Do some in-depth discussion .
Put aside questions , Only academic discussion
This time we put aside all our doubts , For example, what is the use of automated testing ? Can automation really improve efficiency ? How much salary can I get after learning automation , The above topics , I won't discuss... This time , These issues are also the ones that are often discussed .
For the above problems , Let me make a summary , Can raise wages , Technology that can make more money , It's worth learning ! Since automation is developing so well now , Nature has its value .
Most of the manual tests just think about the following problems :
1. Is automated testing easy to learn ?
2. Don't learn / Can you do automated testing without writing code ?
3. How to learn automated testing ?
4. Which direction do you want to study before you learn automated testing ? learn ui automation ? Or interface automation ? As if App Automation is also popular ? Or another applet Automation ?
5. I have no code base , Work is a little bit , Do you want to apply for a training class ?
6. What language do I need to learn ?java still python?
… wait
Let me address the above questions , Say something about yourself :
First , automated testing , It's easy to learn ! But remember , Be sure to clarify the direction of learning , Don't let the sword go sideways , In vain .
First of all , Of course, you can do automated testing without writing code , But personal advice is to learn a language , As for what language to learn , It's simple , Don't have to struggle , First, see if you have a programming foundation , No choice py, If so, choose java py All right
second , It depends on what language you use for development , Using the same language as development can learn automated testing at the same time , Lower the barriers to communication between you and developers , Enhance your voice in the company .
** Third , Learn which direction ?** I suggest :web ui automation =》 Interface automation =》App automation / Applet Automation , Of course , Focus on interface automation ,ui Automation needs to learn , But there is not much need to delve into .
** Fourth , Do you want to sign up for the training course ?** It depends on you , If you think you have a strong ability to learn and understand , I am very self disciplined , At the same time, the direction of learning is very clear , Then of course you can not sign up for training , It's not good to save more money ?
If you don't understand automated testing or some programming language , There is no one around who can take you to learn , So signing up for training is definitely a way to improve quickly .
Lay the foundation before building , First, you need to learn a language 
We also mentioned above , If automation is to do well , Must learn at least one language . Of course, as for the degree of language learning ? I can't keep learning ? The answer is , Will use it !
Master most of the basic grammar , Has been able to meet your daily needs of Automation , Because writing scripts is not as difficult as developing !
Language you need to learn ,for loop ,if Judge , data type , Operator , Object oriented programming and so on , Whether it's java still python, These are all needed , In fact, it's almost , Know a language , Everything else is similar to .
After getting started with the language , Officially embarked on the road of automation into God , Introduction Selenium
selenium As the ancestor of Automation , It's been played badly , Basically, as long as it is automated , No one knows, no one knows . Why study first selenium?
It can help you quickly understand , What exactly is automation , And can intuitively feed back to you on the page . We were , Look at selenium Of api, Bit by bit , Almost every method has been tried .
selenium Yes 1.0 2.0 3.0, I suggest you study before , Let's first understand its history ,u And how it works , This will arouse your interest in learning . You learn selenium, Need to install the browser , Strongly recommended Chrome instead of FireFox, The former is more compatible .
Install well Chrome, You need to install the driver , congratulations , Then you will step on the first pit of Automation ! Most of the reason is that your driver version and browser version don't match . When you can visit Baidu , I'm impressed here su and kw( What exactly is it? You'll know when you learn )
You will try all kinds of selenium Methods , To operate the browser , At this time, it seems to open the door of the new world , Mr. ! It turns out that automated testing is such a thing ! It's magic !
Tired of playing Selenium
When you play for a few days , Or a few weeks later , You seem to be right about Selenium I'm not interested anymore , Scripts are written more and more 6, Can write some linear automation scripts , This is the time , A little complacent , Automation is just that , Is this ?
What I want to say is , Don't be happy too early , You just stepped into the door of automated testing , Just a small step . here , You can start trying , Put some repetitive operations in the project , Write a script to run , Full of a sense of accomplishment, there are trees and ! The effect of automation has initially taken shape , It seems that you are beginning to know how to improve efficiency with automation .
Start touching the automation framework unittest/testNG
When you learn the unit test framework unittest/testNG, When you learn selenium after , You will find that most linear scripts , It's hard to manage , And each script needs to go one by one run, And it's impossible to count the test results , This is the time , You need a unit test framework on the scene !
You'll start learning , Usage of unit test framework , How to create a test class , How to write test methods , How to write your script into test cases , How to verify whether the test passes , How to control the execution sequence of use cases , How to write assertions , These are what you want to explore and learn .
Not satisfied with the function of unit test framework
When your script is very 6, Use cases will also be organized , Then every time the leader tells you , Run the test , Then send him the test results , It should be summarized in the form of test report .
This is when you , Open your editor many times ,run test, Then run through the test , Statistical test results one by one , Half dead , Sent to the leader .
The next day, the leader said , You run another test before work , Give me a report , I want to die . Then you start to visit Baidu , Go to the Forum , Want a solution , that “ frame ” It will come into view once .
Learning automation framework
here , You're already thinking about how to write an automation framework , Then it means that your automation has begun to get started , And to the intermediate direction , You start to study the structure of the framework , Found use case management , journal , Test report , mail , Basic encapsulation classes, etc , There is also a framework design pattern ( classic PO Pattern )
You start sorting out your use cases , Encapsulating base classes , Write page classes , Encapsulate logs , Mail module, etc , After weeks of polishing , Your first automation framework was born !
At this point, you can go to various technology groups to show off , Automatically write out an automation framework , Many Xiaobai also began to praise you , Call you a God .
Initial interface test
That's over UI Automated learning , So let's go to the interface . Most companies use http Interface , Then you start from http The agreement began to learn , Understand its structure , Request header , Request parameters , Request address , Request method, etc , Try to learn some packet capture tools
Such as fiddler,chales,wireshark Or browser developer tools, etc , Get some interfaces by capturing packets , Slowly observe its request structure , But it's still in the clouds , A little knowledge of interfaces . So I downloaded an interface testing tool , Try to enter parameters into the tool , Manually initiate the call .
When the tool returns 200 code when , Mr. , That's what happened . It's like communicating and receiving data with the server , Then the front-end page will display the data to the front desk !
Try to learn Request/HttpClient The library initiates a request
After using up postman after , I'll think of , So how do I use code to initiate a request ? At this time, we need to learn these two things .pip install & import requests after , Start your journey of interface automation .
You also try to put before ui Automatic addition, deletion, modification and query , Use interfaces to implement , You take the request parameters of packet capture , A method call , Then run with one key ! One green and three red ! Why? ? Then I found that the interface returned 401, No authority ! Mr. ! I didn't log in , So how can I log in ??
With a lot of doubts, I began to study , This is when you need to understand cookie and token How it works , With your code , To cache cookie, Reach login . When this problem is solved , But the interface still reported an error , Deleting the interface prompts me that I don't have this data !
Check it out , It turns out that my data has been used up , So how can I ensure that every parameter I enter is new ? At this time, you need to understand the interface Association , How to extract parameters from the response of the previous interface , For the next interface .
request/HttpClient combination unittest/testNG+allure
Same , When you learn request/HttpClient, It's natural to think of integrating them with a unit test framework , Then I found a tall allure Test report , Combined with some log modules, print parameters , Such a familiar interface framework comes out , It's about the same as before ! small token of kindly feelings .
Try to use yaml/Excel Manage test cases
When you take your own frame , Write test cases repeatedly and boring , That's when you think about it , Why do I have to request.post, The method is the same , It's just that the data is different , Why should I keep writing code , Very tired ! Why not use some files to read test data , Do parameterization ?
This is when you start studying reading and writing excel/yaml 了 , You want to manage all test cases in a file , You don't have to write code every time , But it's not that simple ! So how do I handle the associated data in the file ? How to cache cookie Well ? How to make assertions ? What if you do some dynamic input ?
The above questions are left to you to think about .
High quality goods ?git?jenkins?docker Containers ? Distributed ?
Go to this step , You've written several frames , And it is optimized based on its own framework , Then you find a very serious problem at this time , My code can only run locally , If you want to use it for others , You also need to configure the environment on someone else's computer ,copy Give him the code .
So why not use some code management tools to manage my scripts ? Then you need to learn git, Learn how to add commit push Push my code to the company's gitlab, So that others can use , So there is gitlab, I want to do some regular tasks , Let it execute automatically ?
learn jenkins. More , What if I want to run multiple use cases together ? Study selenium grid,docker wait ..
Automated top test platform / Tool development
When you build the company's automation ecosystem , You're still not satisfied , Why don't I manage these things visually ? Make a platform ? Manage use cases , Management tasks , Manage test reports ? I can also integrate some deployment tasks of the company ?
Good idea. ! At this time, you are not only an excellent Automation Engineer , Has moved towards the path of test development ! Begin to learn , Understand the test framework httprunner, Development framework django/flask/springboot, Understand the process of interface development , I understand mybatis,shiro,quartz wait , Start learning the front end
vue/react, Understand what component development is , Parent-child components pass values , Start to understand a lot , Even knowledge of operation and maintenance , Begin to understand k8s docker, Microservices .. So you're going in the direction of the great God , I hope you're not bald yet , At this time, you can proudly call yourself a qualified test developer , Or the whole stack developed youmuyou ! It's all over .
PS: The above is my personal , It is also believed that it is a learning route for most students to learn and like automated testing , Of course, I didn't mention some App End / Automated testing on the applet side , In fact, they are roughly similar . I hope you will like this article ! I wish you all less detours !
Finally, thank everyone who reads my article carefully , The following online link is also a very comprehensive one that I spent a few days sorting out , I hope it can also help you in need !

These materials , For those who want to change careers 【 software test 】 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 ……
If you don't want to grow up alone , Unable to find the information of the system , The problem is not helped , If you insist on giving up after a few days , You can click the small card below to join our group , We can discuss and exchange , There will be various software testing materials and technical exchanges .
| Click the small card at the end of the document to receive it |
Typing is not easy , If this article is helpful to you , Click a like, collect a hide and pay attention , Give the author an encouragement . It's also convenient for you to find it quickly next time .
Self study recommendation B Stop video :
Zero basis transition software testing :25 Days from zero basis to software testing post , I finished today , Employment tomorrow .【 Include features / Interface / automation /python automated testing / performance / Test Development 】
Advanced automation testing :2022B The first station is super detailed python Practical course of automated software testing , Prepare for the golden, silver and four job hopping season , After advanced learning, it soared 20K
边栏推荐
- Half of the year has passed. How many flags have been achieved at the end of the year?
- Longest continuous sequence [diffusion method + space for time]
- Full arrangement ii[duplicate removal of the same elements + standard backtracking]
- jwt
- 【STL源码剖析】STL六大组件功能与运用(目录)
- Lizuofan, co-founder of nonconvex: Taking quantification as his lifelong career
- EasyCVR平台EHOME协议接入,视频播放出现断流是什么原因?
- jwt
- 菊花链(寒假每日一题 39)
- [leetcode] 11. Container with the most water
猜你喜欢

1-6搭建Win7虚拟机环境

罗德与施瓦茨与中关村泛联院合作开展6G技术研究与早期验证

Talking about the advantages of flying book in development work | community essay solicitation

創新藥二級市場審餅疲勞:三期臨床成功、產品獲批也不管用了

Cake review fatigue in the secondary market of innovative drugs: phase III clinical success and product approval

Experience of epidemic prevention and control, home office and online teaching | community essay solicitation

DataEase模板市场正式发布

【STL源码剖析】STL六大组件功能与运用(目录)

2个NPN三极管组成的恒流电路

【直播回顾】战码先锋第七期:三方应用开发者如何为开源做贡献
随机推荐
【FPGA】串口以命令控制温度采集
产业互联网的概念里有「互联网」字眼,但却是一个和互联网并不关联的存在
02 common codes for Epicor secondary development
Redis 那些事
Talking about the advantages of flying book in development work | community essay solicitation
Unity C # e-learning (VI) -- FTP (II)
入职一家新公司,如何快速熟悉代码?
【Proteus仿真】Arduino UNO+继电器控制照明设备
业务与技术双向结合构建银行数据安全管理体系
Smartctl 打开设备遇到 Permission denied 问题排查过程记录
When an interface has an exception, how do you analyze the exception?
Build and train your own dataset for pig face recognition
入坑机器学习:一,绪论
Kaggle 专利匹配比赛赛后总结
实战攻防演练中的四大特点
Unity C # e-learning (VI) -- FTP (I)
Intranet learning notes (7)
都2022年了,你还不了解什么是性能测试?
转行软件测试2年了,给还在犹豫的女生一点建议
2个NPN三极管组成的恒流电路