The day I woke up, how did I step by step to the road of software testing

The career change test was based on the recommendation of Faxiao. She has been doing well in this industry. I think that I have changed jobs so many times anyway, and I also have the mentality of giving it a try. This is the test, my "money" "The road to view begins...

I just found out that I, who don't understand it at all, will not be too difficult to learn. Anyway, I have tried all the channels of learning, such as: looking for resources on the Internet, adding a lot of related technical exchange groups, applying for training courses... After several months of study, I have full confidence in myself, my first test This is how the work started in Huawei outsourcing...

But when it comes to outsourcing testing, most people's first impression is: the work intensity is high, the technical content is low, and there is no sense of belonging!

Outsourced in Huawei for 2 years. The overall feeling is:

  • This job lacks a sense of belonging, there is always a gap in my heart, and there is not much room for improvement.
  • Without access to the core technology, the company has no technical training and exploration for you,
  • The work is simple, the business is repeated, and there is usually the presence of tool people.
  • The salary is not high, although there is overtime pay, but it is still not high
  • After thinking about it, I am still ready to improve myself.

By chance, I started to get in touch with automated testing, and I also learned basic skills such as Jenkins operation and Linux command line.

Either you are learning, or you are on the way to learn. Later, you try to get in touch with some codes and some frameworks, and integrate what you have learned into your own projects. Organize your own project into a testing framework to learn selenium, website architecture, code knowledge, knowledge, network bottlenecks, system optimization, optimize scripts, design scenarios, acquire target users, execute, and analyze pressure results.

At that time, due to the company's scale and product limitations, automated testing was never applied to the company's actual combat projects. I feel that there are more opportunities in the outside world, automation has become popular and more and more popular, I want to break through the bottleneck of my own testing technology, I resolutely switch to a company to do automated testing work full-time.

Later, by coincidence, I jumped to Byte to do test development, and was responsible for developing the company's customized test quality platform.

This is a challenge for me, a new field, test development is very popular in first-tier cities. At that time, the salary was higher than that of junior and intermediate development engineers.

After arriving at the job, it is to withstand the pressure, continuously learn the test development skills systematically, and apply what you have learned. The technical architecture adopts front-end and back-end sharing, including Python's back-end development framework Flask, front-end framework vue, elementUI components, etc.

I have been doing test development for several years, and I truly realize that test development is equal to the work of the whole test cycle, including product function business familiarity, test platform demand design, platform front-end and back-end research and development, platform self-test, and dozens of tests for the testing department. Promotion, training and product use and operation of account persons.

Therefore, the main premise of test development is that you have rich experience in functional testing, interface automation, and UI automation are very proficient, otherwise it will be difficult to carry out test development work.
insert image description here
If you are also developing in the direction of automated test development

At the right age, choose the right position, and try to give full play to your advantages.

Three years of test development, how can I gain experience?

(1) Make good use of fragmented time and learn to improve yourself

From the junior tester to the test development, there is no other shortcut. From the beginning to the end, I believe that progress depends on learning, and learning depends on time. Nowadays, the Internet industry is basically the 996 trend, and it is more obvious that programmers work overtime. Therefore, using fragmented time to learn is the most suitable way to improve yourself.

First calculate my personal study time account (for reference, for reference):

  • After getting up every morning, about 30 minutes (to the toilet, having breakfast, commuting, etc.)
  • When I go to work every day, I use other people's paddling time to search for some technical information and browse technical blogs for about 30 minutes.
  • Commute and eat at night (at this stage, I usually rest + entertainment to adjust my state, brush Weibo, friends-circle)
  • After I get home at night, no matter how tired I am, I will spare 1-2 hours to study, read books + watch videos.
  • Calculated in this way, the average day is about 2 to 3 hours, and at least 10 hours for 5 days a week, excluding weekends.

(2) Participate in many projects

In fact, in many interview strategies and sharing, we can get a piece of information: the interviewees who have participated in the project are often more popular and easier to get an offer.

(3) Improve your soft power and make yourself more professional

According to my personal understanding, junior testers are more like students, while senior testers need to have the ability to "be on their own", and this transition takes time and is one of the directions I have been working on in the past two years.

Improve your soft power and become a more professional tester:

  • learn to communicate proactively;
  • Ability to coordinate (wrangling): actively coordinate departments at work;
  • Learn to work together to accomplish a task or goal together.

(4) To master a certain breadth and depth of technology

Since it is a technical post, the enterprise has its own corresponding requirements for the breadth and depth of technical mastery, and academic qualifications are not so important in the face of technology. Therefore, striving to improve their technical level is the primary goal of programmers.

So, how far should the technology be mastered? Specially combed the technical route, as follows:

1. Necessary basic knowledge

For novice testers, the testing techniques we need to master and use proficiently in the initial stage mainly include the following:

insert image description here
Among them, linux, as a system with more and more servers, has become the content that needs to be met whether it is testing, operation and maintenance or development. Through the use and operation of a series of conventional Linux systems, the actual combat operation of the system is strengthened, and the untested skills are laid a solid foundation.

As one of the most representative databases, Mysql is a necessary skill to master the database knowledge required for a series of tests, whether it is functional testing or performance testing.

2. Automation technology

For novices in testing, especially those who have just entered the industry in the past two years, it is very good to choose automated testing as their first job in the workplace, or as their career planning within 3-5 years. s Choice. If you have observed the recruitment market, it is not difficult to find that in recent years, the demand for recruitment automation testing has increased year by year, and the salary of the position is also higher than that of functional testing.
insert image description here
Of course, higher pay means more professional technical knowledge. Newcomers who want to go in this direction can learn the code first, and slowly master the content mentioned in the mind map. This will make it easier to progress later.

3. Interface testing technology

Interface testing is a type of testing that tests the interface between system components. Interface testing is mainly used to detect the interaction points between the external system and the system and between the various internal subsystems. For novices in testing, it is not only a technique we need to master, but also one of the options that can be used as our advanced direction in the later stage.

insert image description here
The focus of the test is to check the data exchange, transfer and control management process, as well as the mutual logical dependencies between systems. Interface testing is one of the most popular technologies at present, and its content meets the needs of the industry at present or even in a few years. It is the only way for newcomers to climb from primary to advanced testing.

4. Performance testing technology

Performance testing is to test various performance indicators of the system by simulating a variety of normal, peak and abnormal load conditions through automated testing tools. Both load testing and stress testing are performance testing, and the two can be combined. Through the load test, the performance of the system under various workloads is determined, and the goal is to test the changes of various performance indicators of the system when the load gradually increases.

insert image description here
For newcomers, there should be very few people who have just entered the industry who can apply for this position. This is because performance testing is more difficult than functional testing and automated testing. However, from another point of view, if the development towards performance testing in the later stage, the choice of salary and treatment will be very large.

5. TestOps Architecture Technology

For beginners, to demystify TestOps, we need to be familiar with the Jenkins framework for continuous integration.

insert image description here
If testing and automated testing can be integrated into the entire development, operation and maintenance pipeline, to achieve a complete process of automated construction, deployment and rapid test verification results, then this will be a perfect test form.

write at the end

To be a good test architect, you first have to emerge from the crowd. To emerge, you have to be different; to be different, you have to be more!

No matter what industry you are in, if you want to become a big bull, you are destined to pay more than others, spend more time and experience, and master the knowledge points and technical experience that others do not have. Learning is endless and opportunities are created by yourself, but only if you really understand what software testing is, if you are really interested and can persevere.

The above is a diagram of the knowledge architecture system for the development direction of software testing engineers that I have compiled for you. I hope everyone can follow this system and complete the construction of such a system. It can be said that this process will make you want to die, but as long as you get through it. Life will be much easier in the future. As the saying goes, the beginning of everything is difficult. As long as you take the first step, you have already succeeded in half. The ancients said, "If you don't make a small step, you can't go to a thousand miles." a lot.
insert image description here

These materials, as well as many recorded video tutorials, should be the most comprehensive and complete preparation warehouse for software testing friends. This warehouse has also accompanied me through the most difficult journey, and I hope it can also help you! Everything should be done as early as possible, especially in the technology industry, and the technical foundation must be improved. I hope to be helpful…….

Although there is no end to learning, as long as you work hard, you can grind it into an embroidery needle. share ~

Guess you like

Origin blog.csdn.net/m0_53918927/article/details/125607413