The most suitable technology for testing students' learning in 2021


title = "2021年最适合测试同学学习的技术"
description = ""
author = "伤心的辣条"
tags = []

Two months have passed quietly in 2021. Have you started setting up the annual flag? If not, don't worry, after we have counted the most worthwhile technologies for testing students to learn and understand in 2021, maybe everyone will have the urge to set a flag.

The technologies I recommend here follow the principle of high cost performance, that is, relatively little investment time and relatively high output, because we have limited time, relatively easy to master, little variability, and relatively little investment time. Technology is something everyone can dabble in.

Language

Test students mastering a programming language should be the next big trend. Knowing a language means you have the opportunity to automate some things that require a lot of manual work, which will improve efficiency, in short Even if productivity is improved, one person can do multiple people's work, relatively speaking, the trend of involution is not particularly obvious. I read a book called "Lightning Expansion" a few days ago. It also mentioned that automating everything is an important activity that allows the company to develop as far as possible not to be restrained by human scale factors.

Languages ​​are divided into scripting languages ​​and compiled languages. Ideally, both will be the best. If there is no time, only scripting languages ​​can be used.

Two languages ​​are recommended among script languages.

  • python. There is no limited time and energy to learn python. In addition to being a front-end, python is now basically a decathlon. In the language ranking a few days ago, python has surpassed the veteran java, and may continue to beat java in the future. Language is very interesting. The more people who use it, the greater the demand, and the greater the chance of finding a suitable job and position. Therefore, learning python is certainly beneficial to our work and job search.
  • JavaScript. Students with spare capacity can learn js, js is still a strong choice in the front-end field, but the application scope is indeed much smaller than python, but in testing, we can use js to call mainstream tools such as selenium, appium, cypress, k6, postman, etc. , It is more than enough for daily use.

Two compiled languages ​​are recommended.

  • java. The veteran java market is still very large, but it is still the main force in some small and medium-sized companies, and the long-term market demand is relatively guaranteed. Basically, you can do everything with java. There is no problem with the scope of application. The grammar of java is relatively stable. It is cross-platform and ecologically sound. If you value vested interests, you can learn java.
  • go. Go is more focused on the future than java. Compared with java, go is more modern and simpler in syntax. In some areas where traditional java dominates, such as middleware development, go has a very strong momentum. Getting started with go is simpler and more difficult to master. This feature is very suitable for finding tools. Test students of the development language, after all, many times the automation work only needs to simply call some existing libraries and string the processes together.

The final summary is: just learn python if you don't have time, you can learn go again if you have a lot of time.

Testing technology

I narrowly divide testing technology into tool use and tool development.

Using ready-made tools to solve the current problems requires relatively low code requirements; tool development is actually development, but the output of development is just a test tool.

Here we only discuss the former, let's take a look at which tools are worthy of our grasp in various test scenarios or special tests.

ui automated testing

  • Selenium is still the most popular automated test on the web. After all, the market has a large volume and the demand is relatively strong. Cypress is a good learning object, and it is highly recommended to learn when you have time.
  • App automation is still relatively widely used in appium, and it is recommended to focus on it.

Interface automation test

  • postman. For the simple interface of http+json, the combination of postman+newman can basically handle most of the needs. It is highly recommended, but if you want to use it well, you need to know a little bit of js. I remember that I had a postman video at station b, which made it clearer. You can go to station B to search the test circle TC to learn it.
  • Write your own code to achieve it. Writing your own code will be more flexible, and we can also test some rpc or private protocol interfaces more conveniently. It should be noted here that assertions and data preparation are relatively important. You can search for a
    project called cypress realworld on github to see how they do interface automation. Of course, they use cypress for interface automation. Tools are not actually counted. Especially important, thinking and use case organization is the key.

unit test

  • Built-in or standard unit test libraries in various languages. Python has unittest, java has a relatively standard junit, and go has a testing library. The advantage of these frameworks is that they are simple and easy to use. They are basically not problematic for unit testing, but the disadvantage is that they are too simple and sometimes require deep customization;
  • High-level test libraries in various languages. Python has pytest, java has testNG, etc. These frameworks are relatively versatile and can meet your more advanced needs.

Server performance test

  • k6. K6 is a relatively new performance testing tool that supports http and grpc, and is very friendly to developers. Moreover, the official document talks about a lot of testing concepts. It teaches skills and internal skills at the same time. This is very similar to cypress. Recommend it;
  • wrk. Only supports http protocol, but with powerful performance, easy to use, a useful tool for performance testing at home;
  • jmeter. You can do anything, but there are some troublesome veteran performance testing tools, with ui, relatively easy to get started

Mobile performance test tool

  • perfdog. Support ios and android performance index collection, very suitable for Xiaobai, a highly recommended tool;
  • The system comes with a performance test suite. For example, the ios instrument has huge advantages in professional scenarios, such as watching memory leaks, which still need to be mastered;

pentest tool

I don't know much about it here, so I will share it with you when I learn it later.

General technology

General technology allows you to understand how your system under test works, where there may be potential problems, and it is also an important way to get through the dimension wall of communication with development.

The traditional general technology is not listed here, but from the current point of view, machine learning technology may require everyone to focus on, because in the long run, the scope of application of machine learning will become wider and wider, and the corresponding testing activities should also be There is more market demand.

to sum up

In short, technology is only a part of daily work for test students. In many cases, our focus may be on communication, coordination, deep understanding of needs, quality management and online problem tracking, which may occupy most of our time. And energy. However, from the perspective of internal core competitiveness, technology-driven growth of its own value should be a constant trend.

I saw a video a few days ago that talked about stock investment. Some of the views in it were actually more mainstream.

  • Being a food delivery person may not be a good idea, because you can't get promoted in this position. It may not be a good idea for the same testers who come and go. Without technical barriers and core competitiveness, growth is insufficient in the long run;
  • Retail investors' investment in stocks is a long-term loss. Investing to improve their own harvesting ability is what ordinary people should pay attention to;

The above point of view is very emotional, so share with you, we still learn to move, and there is time, let's cheer together.

By the way, set up a flag. This year, I hope I can understand the machine learning and share it with everyone.


Finally: Suggestions to friends who change careers and want to learn:

Recalling the experience during this period of time, I think there is a very important experience that I can introduce to you, that is: if you are optimistic about this industry, at the beginning, don’t pay too much attention to salary requirements, but mainly look at the company’s offer. Learning opportunity, if this aspect is OK, then you have the opportunity to boldly try.

The "first job" that you can try boldly can help you quickly improve your skills and allow you to verify the ideas and ideas you have learned. Through this verification, you can make rapid progress.

Competence and salary are always proportional. Only if you keep improving yourself will your salary be higher and higher as your ability improves.

I think this is the only suggestion I can give for a smooth transition and rapid promotion.

Then share some of my self-study materials below, hoping to help everyone.

This information is organized around [software testing]. The main content includes: python automated testing exclusive video, Python automated detailed information, a full set of interview questions and other knowledge content. For friends of software testing, it should be the most comprehensive and complete preparation warehouse. This warehouse has accompanied me through a lot of bumpy roads, and I hope it can also help you. Follow WeChat public account:[Sad Spicy Strips], You can get it directly! Exchange learning skirt:902061117

If the article is helpful to you, please reach out to make a fortune and give me a like. Thank you for your support. Your likes are my motivation for continuous updating.

Recommend good articles:

Packaged as a test engineer with 1 year of work experience, my advice before the interview is as follows

What exactly should I learn in automated testing?

Why not consider Tencent for job-hopping? Let’s talk about the past between me and the goose factory

Which is more advanced, automated testing or manual testing?

Novice must see: How to write a qualified test case?

Python login interface test problem record and solution (dry goods)

Guess you like

Origin blog.csdn.net/weixin_50829653/article/details/114263510