My personal understanding of the software testing industry 4

Source: Internet
Author: User
Tags how to write test cases writing test scripts testng selenium grid

I think my previous article is too simple. Many people may think it is not the case. I decided to deepen it in this article.

In this article, I define the length of the technical route or the standard of the technical basis as follows: the time required for an ordinary person to fully master a technology. I define his unit name as Y, m, D (year, month, day)

For example, 3Y indicates that a technology needs to be mastered by ordinary people for three years. 1 m indicates that a technology needs to be mastered by ordinary people for one month.

 

This article provides the following prerequisites based on my personal understanding:

Premise 1

In theory, the technical route of computer science graduates is 4Y, because the University has to study for four years.

For non-computer students who graduated from the training course, taking one year of training as an example, the technical base is 1y

The technical route for manual black box testing is 3 M, because generally, you only need to train for 3 months, no matter whether you are a computer professional or not, you can be competent

Similarly, the xxx information management system developer with the shortest path in software development can also be competent for training for 3 to 6 months, which is counted as 6 months, the technical route length of the developer who develops the xxx Information Management System in a specific language or framework is 6 MB.

 

Prerequisite 2

For most people, if technology is not used, it will gradually be forgotten.

That is to say, if the technical foundation of a computer graduate is 4Y and he has been engaged in a computer-independent business for one year, his technical foundation will be less than 4Y. (In fact, a blank year will bring this person's technical capabilities close to 0 .)

 

Inference 1

My inference is: a person's core competitiveness = hard ability + soft ability + External Ability

Hard capability = technical accumulation + business accumulation + language accumulation (English)

Soft Capability =Communication skills + management skills + PPT Writing Skills + other non-technical skills useful for work, or technical skills

External capability = networking, luck, family conditions, etc. from outside value-added

 

 

  • Why is it not recommended that new graduates directly engage in manual black box testing? Why is it especially not recommended for fresh graduates to engage in manual black box testing in the outsourcing industry?

Based on the above premise, we can easily see that if a computer graduate is engaged in black box manual testing after graduation, his technical foundation will be wasted 4y-3m = 3y9m

That is to say, three years and nine months are wasted, and the base of these three years and nine months will disappear within one year,

One year later, the technical foundation of this person will be changed to 3 m: 4 Y (4 years of university) + 3 M (3 months of manual testing for the training black box)-4 Y (one year later, after the university knowledge is forgotten) + 0 (Black Box manual testing for one year, zero accumulation) = 3 m, which is why I do not recommend that you perform tests after graduation.

That is to say, if a black box manual testing engineer who has worked for one year has no technical contact this year, His technical base will be 3 M, far smaller than the 4Y of recent graduates, and his competitiveness will drop sharply.

Because, several years later, we will ask how different a Black Box manual testing engineer is from a fresh graduate student. If there is no difference or only the accumulation of business knowledge, when the business changes/the company is sluggish, this black box manual testing engineer will experience a professional crisis.

(In this case, it is not ruled out that this person is engaged in manual black box testing, and his business base may be constantly increasing (for example, he is engaged in financial testing, and finance is known for its complicated business ), business accumulation can replace technical accumulation to become his core competitiveness. This type of example is out of my consideration, because I am not in a banking or other business-centric unit, and most people cannot easily enter such a unit .)

 

This crisis is particularly serious in the outsourcing industry, because the outsourcing industry usually has little business accumulation. Every time he changes the project, his business accumulation will return to zero.

The biggest challenge for manual testing engineers in the outsourcing industry is thatThe technology base will always be 3 m, and the business base will never be zero.

Of course, you can also accumulate language basics, such as foreign-invested outsourcing companies, and accumulate good English skills. This is also a method.

I know that some outsourcing companies have sent fresh graduates who have just completed the Black Box manual testing for three months, and the black box manual testing engineers who pretend to have two years of work experience are sent to the customer's organization to work, and finally won praise from the customer. In this story,The customer earned money.. Because the technical base of the person he uses is 4y3m. If he has been given 2 years of experience, his technical base is only 3 MB. So the customer certainly gave praise.

 

  • Ideal situation and reality

Ideally, fromDevelopmentStart and selectTechnical Route length (> = 10y)After several yearsTestI am not only familiar with the business, but also the code, just like some senior developers (old leaders) who have decades of development/testing experience abroad. I am proud to say that I can test any software product. When we first came into contact with software testing, we saw "senior development testing" or "Good testing" from university teachers or books ". But this is only an ideal situation.

 

In fact, most of us entered the software testing industry too early from a wrong entry and choseTechnical Route: 3 mBlack box testing.

A good start is half the success. If you start from development or directly start from automation, you can jump to the next part.

 

  • From 0 base to 3 m public-Black Box manual test route

Black box manual testing, I call it "3 M crowd", and 3 M crowd is the most. If you have a professional or other professional, no matter what the major is, you have been engaged in manual black box testing for more than one year or training for more than three months. You are a member of the 3 m community.

I have the most contact with 3 m people, and I was also one of the "3 m people" who asked me the most, and almost completely broke the technical foundation of my university for four years, when I graduated, I also wrote JSP, ssh, database modeling and design, and a dynamic website using Java. Later, I forgot everything about wool.

 

Based on my personal understanding,

The technical threshold for Black Box manual testing engineers is 0, and the technical route length (including the threshold) is 3 M.(3 M for short)

 

The things to be mastered by 3 M usually include:

1. Test Case design methods that have not changed over decades

2. The change is actually the same software life cycle, from Waterfall Model to quick iteration model.

3. At least one bug management tool, such as Jira, learns how to submit bugs and how to persuade developers to fix bugs.

4. You can use at least one test case management tool, or even excel, and learn how to write test cases and enter test results.

5. At least one manual black box test item, such as the user registration module and XXXX module involved in testing the xxx Information Management System

 

Graduation criteria are:

1. At least one complete project can be obtained. For example, testing module A and Module B of xxxx Information Management System, and testing similar new projects

Higher requirements:

2. Build your own test environment and deploy

 

The biggest confusion among 3 m people is: "I feel I cannot learn anything"

What most people in 3 M hear is: "Looking for bugs from the user's perspective", "Improving communication skills to adapt to various (strange) Temper developers", and "if the demand keeps changing, can you endure it? "," Can you endure repetitive work? "and" What qualities should a good tester have"

I think this is tempting a 3 M crowd to become a permanent 3 M crowd and start to develop towards business accumulation, soft capabilities and self-consolation.

The successful users directly become test managers because they have sufficient business accumulation and soft capabilities. This is really good, but the proportion is too low. Everyone wants to change management, and everyone wants to go into an industry where businesses such as banks are complicated and testers can rely on business accumulation to become positive results.

However, the success rate is too low.

I have been working as a test Manager for seven years, and I have been working as a test Manager for eight years. I am also a colleague of senior black box manual testing engineers. Not necessarily who is strong or weak, sometimes the decisive factor is the external ability. And the other problem is"Middle-aged crisis"How do you deal with the collapse of your 40-year-old company? What should you do if your industry is affected by the Internet industry? (For example, my colleague suffered the decline of the DVD and disc burning industry ).

 

  • From 3 M crowd to 3Y crowd-automated test route

A 3 M crowd will naturally start to get confused and "cannot learn", and then post, ask, and discuss with each other everywhere. People with bad luck will be guided to the "soft ability" direction, "Business accumulation" direction, or even "mixed Days" direction and "self-hypnosis" direction.

Then some 3 m people were asked to start automated testing because they met a good leader or company or saw some good articles.

The automated testing route is the technical development direction of the most common Black Box manual testers. There are fewer people taking the Performance Testing route.

But this road is not easy to go. The first is the technical threshold.

The Black Box manual testing technical threshold is 0, and the web page automation testing technical threshold I think is 1y + x (x depends on the English ability, the stronger the English, the smaller the X)

On the route of automated testing, it took me about three months to master the basics, 3 months to master the principles, and 6 months to master the application freely, after that, it took about three months to continue charging and deepening, from the ease of application to a breakthrough. There are also several months of waste of manual black box testing and repetitive work.

According to my own experience, the technical threshold for automated testing is 3 m for the 4 Y + master basic skills just graduated from the university, or Training 6 m + for Java Development in the training class to master the basic 3 m, and then the length of the technical route for automated testing is a total of 9 m + precipitation time for me.

Most people here are not as fast as me, mainly because:English accumulation is different

The main reason for my fast self-study is that the quality of the learning materials I have come into contact with is high. All the learning materials are in English, and my learning skills are good.

According to the progress of the average person I contact, it takes 1y to master the basics (including the basics of programming language), 1y to master the principles, and 1y to be used freely. It depends on fate to make a breakthrough.

 

So I understand,

The technical threshold for automated testing engineers is 1y.+ X (x depends on English proficiency, and the smaller the English proficiency)The technical route length (including threshold) is 3Y3Y public

3Y's main things are usually:

1. At least one programming or scripting language, such as Java or Python

2. At least one mainstream automated testing tool, such as selenium, and understand its general principles

3. Have at least one mainstream testing executor, such as testng, and understand its general principle.

4. At least one automated test item, such as the xxx information management system.

 

The graduation standard is

1. At least one of them is responsible for the automation test project, for example, the automation test script of the XXX System Based on the xxx architecture.

2. understand the in-depth principles of at least one automated testing tool, such as selenium, and build your own testing framework on this basis, for example, we can build a Java + selenium2 + testng + Jenkins + selenium grid test framework and use the Page Object factory mode.

A higher requirement is

3. I can understand the code of other people's automated testing frameworks and the reasons for writing them like this. For example, I can look at the automated testing framework built by other people in the company. I can see what is the best of his writing, in poor cases, why did he choose such a bad writing method? Can it be optimized now? How much is the cost. Advantages and disadvantages of a test tool he used, and whether the data organization method he selected can be optimized

4. Read the source code of an open-source tool.

5. At least one automated test project under continuous integration, such

6. Master at least one non-Windows operating system operation and BASIC script

If you are doing automated interface testing, it is really good luck. Instead, you just changed the tool, and the chance of interface automation testing encountering spam frameworks is much lower.

 

The biggest fear of automated testing is:

1. Recording and playback test tool-this tool not only kills your technical route, but also puts you in the embarrassing situation of silly script recording. The only benefit is to save money for the company.

2. Spam framework-a framework created by a novice developer who has not mastered the basic principles of automated testing will make your automated testing more painful than manual testing of the black box. Such as the god class with 200 methods, the inheritance chain of 20 classes, the text file of the testing data that is mixed with the testing data of 1000 rows and the expected results of 1000 rows, the troublesome keyword-driven Excel sheet contains half of the unreliable test results that need to be manually reviewed. It is silly to understand the amateur test execution method, the continuous integration test scripts that cannot be debugged and so on are all examples of the successful automated tests I have witnessed. They have at least made them automatically, even though they are very spam, there are also many failure cases that are abandoned halfway.

3. Companies that cannot afford automated testing costs. Automated testing costs are high, especially at the user interface layer. Even the interface layer is higher than the manual test. I don't think it's okay for a small company. Now, in 2014, you spent 12 k/month in Hangzhou, you can only go to the 3Y crowd, and it is luck to find a good technology. But you can see that a small company may invite a senior IOS developer for 20 k/month, but will not ask for a senior automated test for 20 k/month. Senior automated testing is still inferior to senior development.

 

3Y's confusion is: "No high development income", "do not need to manage", "how to do performance testing", and "never learn new things, I don't need to forget it for a while. "The development foundation is not well laid, and many things don't understand it." There is still no technical route behind it. "This framework is too junk, automated Testing is more tiring than manual testing.

At this stage, not many people will be satisfied with the "communication skills with development" in the 3 m era. Obviously, when we have the same skills as development, we don't need to look at our faces. Many people do not directly deal with development at all, that is, the bug discovered by writing test scripts and scripts is naturally followed by others. Some people also do the test framework, and do not touch development at all. I have been mainly engaged in the maintenance and improvement of the test framework, the review of the test script, the development of automated testing after I transfer my job, and some time for automated testing training.

At this time, we have a different skill tree than general development, at least in the face of junior developers will be more confident, of course, Senior developers are still a little awesome.Obviously, for testers, the technical routes from 3Y to 10y are not so easy to find.

 

If an automated tester thinks that he has a technical accumulation of 10 y, and is actually similar to the level of newcomers on the 3Y route, he or she will be replaced by the Black Box manual tester. On the other hand, if the project does not focus on failover and you write your own automated test scripts, your own maintenance is obviously better than others. The problem is that there is still oneAdvanced edition "middle-aged crisis"If the automation test project you are participating in is over. If the automated testing technology you are using is outdated, such as selenium 1, if the tool you are using is inherently limited, such as fitnesse, or if you are using some internal tools, then the company goes bankrupt, the working experience of internal tools has become useless, such as the Nokia mobile phone department. So what do you do. In fact, when automated testing reaches a certain level, I found that,There are few jobs in automated testing in Hangzhou, but there are many jobs that require manual testing of Black Box machines that require a little understanding of automation.I spoke with my colleagues in Shanghai and found that there are more automated testing jobs than those in Hangzhou, but there are also many jobs that use automation as the guise, some testing and development jobs of Internet giants are also dominated by manual black box tests.

 

In particular,Automation testing in the outsourcing industry is still the majority of unreliable ones, such as the so-called platform automation testing engineers, some people who outsource automated testing to Internet giants compile testing scripts using packaged and packaged domain-oriented languages on automated testing platforms prepared by some testing developers belonging to giants, no technical accumulation for individuals.. This is determined by the availability of the outsourcing industry, the ability to collect money when the demand is met, and the fixed output value (for example, how much your contract is signed for one month is how much one month. Unlike products, we must not only use them, but also strive for perfection in order to sell better products. When the products sell well, the average personal output value is also high, indicating that the work has a high value.

 

In general, the 3Y crowd is regarded as the 3 M crowd, and the 3Y crowd cannot be reached in the whole life. If the base is too poor or the learning ability is insufficient, it is very likely that it cannot be stuck somewhere.

 

In the next phase, I would like to summarize my understanding of the following routes.

  • From 3 M crowd to 3 Y crowd (pseudo)-understand a little automated black box manual testing route ("pseudo" 3Y crowd can still be much better than 3 M crowd)
  • From 3 M crowd to 3Y crowd-interface automated test route (I will write a special chapter about Interface Test to satisfy the curiosity of some friends)
  • From 3 M crowd to 3Y crowd-Mobile Terminal Test (I am not familiar with it, I can only write it by feeling)

There are some questions I'm not sure about.

  • From the 3Y crowd to the performance test route?
  • From the 3Y crowd to the test development path? White box test route?
  • Go from the 3Y crowd-can I change to the 9y crowd or even the legendary test architect if I master three 3Y public routes?
  • From the 3Y crowd to the management route, do you still want to leave?

There are some other things I want to organize later.

  • Core Competitiveness-what is "BO" relying on a bunch of rare technology groups to combine a scarce technology combination?
  • Technical overlap-challenges from developers, O & M personnel, and other technical personnel
  • The length of the technical route, business route, and management route of the company/job and testing personnel-how to choose a company?
  • Endless overtime-the experience of small companies working overtime in hell-why is it always possible to go online in the middle of the night, whether for Chinese websites or for American websites?

 

My personal understanding of the software testing industry 4

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.