Three years of experience in getting started with software testing

Source: Internet
Author: User

This article was written in 2012.7.27

================================

A few days ago, I saw this paragraph in the http://www.zhihu.com/question/20269633, saying, "There are so many levels that testers can reach":


1 open a bug;

2 Find some additional information such as design documentation and history, determine this is a problem, and then give detailed bug repro steps;

3 Refine the repro step to determine the minimum steps to reproduce the bug and, if possible, automate the repro step;

4 try to identify the problem by studying the code;

5 try to give a fix;

6 Analysis The cause of the error, and put forward some standardized methods to detect similar problems, such as stress,fuzzing and so on;

7 The ability to define the appropriate data analysis methods for standardized test processes ensures that both development and project managers are able to obtain the information needed to control the quality situation.

I counted a bit of my own, basically can do 1-3, I really do not have a good test. Of course, there are various reasons, such as the company's definition of software testing engineers is not the same, the requirements for themselves are not so high. I think these seven levels are very good standards for people who want to do long-term testing can be taken for reference. After seeing this post, I have the idea of summarizing myself.

I have also noticed that the domestic software industry, especially the Internet industry, attaches great importance to automated testing, from the beginning of the run automated testing, to read script to script, and then to their own integration of open source tools to write a set of scripts, and then to their own direct development of automated testing tools, is a lot of Internet enterprise testing is keen. However, their own department is a traditional software industry, so specific analysis of the situation.

His team is approximately stable in 8-12 people, the long-term group will have 1-2 interns, responsible for a total of 10 products, the project cycle is basically 1 days-6 months, the number of participants per project is generally 1 people-6 people. Most of the products we have no opportunity to contact the source code, in addition to what I am now doing, because the development of overtime and the development of the relationship between the familiar, codes I can read, but I did not pursue, never go to see >_<

The whole team in addition to a lead mainly do management rarely do projects, the other people about 1-2 will participate in automated testing related to the development and maintenance, 1-3 is not able to handle the large release project to follow others to do projects, Other people have the ability and experience to do projects independently and with others. The main content of the work is basically the use of a long test case to do manual testing, black box. A few times you will need to write your own test cases. Like other companies, the test cases are not too important.

Let me summarize the experience I have been practicing since June 09 for three years now.

June 09-June 10 Internship

The first month is the training period, the three major English books to learn products. Basic three weeks to read three books, every Monday to do a presentation summary of what was learned last week, and colleagues will ask questions, the last week will do some simple sample, such as product upgrades, functional simple regression test.

The second month to start processing hotfix, the process is roughly: according to the relevant defect records, take the environment, reproduce the problem, apply hotfix, confirm that the problem was repaired, run automation regression. Work This three years I roughly do hundreds of hotfix, mainly in the internship, after graduation will not arrange this kind of job, unless there is no level lower people do or some hotfix is the others have not experienced.

After six months began to follow the big release. The big release contains more content than the hotfix, at first generally by the higher level of people write new feature test cases, developed to build after the cross-test new feature, At the same time also arranges the person to test defect (general release all contains the last release to the present between all hotfix). Then there will be manual regression (manual testing of ultra-long, ultra-detailed English documents, covering almost all functions), automation regression, Compatibility (and related more than 10 products on different OS and database compatibility). Then basically is install and Doc review. There is a certain sequence between these tests, such as the install must be all the platform build is out, all the tests are basically finished after, but the specific stage of what to do or to see the specific situation, sometimes the project is almost over defect suddenly began to explode.

In the absence of large release when the basic is busy hotfix, also have idle time, oneself on the internet to look at books or something.

July 10-July 11 Graduate=level 0

Not long after graduation began to do a new small product testing, their own for the new feature and functional test writing test cases, there is no automated testing, the entire test phase of their own roughly half, by a higher than I two mm to take me. There is no next version of the product since it was release, but there is no hotfix (meaning the customer has not mentioned the bug for so long).

Then did some product release, this time only basic familiar with the big release of the basic procedures and procedures. April 11 began to spend two months in the maintenance of a very old SilkTest script, think this set of script is very good, covering the function is very full, cohesion poly low coupling, before the test case for this set of automated test script people are very bull. On the contrary, it is not particularly difficult to think of the script itself. During the period also use Java to tune some API to measure a bit of performance, not the focus, but it is more interesting than manual testing.

July 11-March 12 Junior=level 1

began to lead two interns under the guidance of the big release, during the period encountered some problems, such as the release of the change is very large (the database structure has changed), the coverage will be more, but before the test cases left there are some problems, such as written in very detailed, It takes about half an hour to read a two or three-page English document, but it can take a few minutes, or after a few years of product updates, some test cases are basically invalid or meaningless, but they haven't been updated, and some of the test cases are too concise to read, but it's much easier to read them. I therefore have to take the time to update the test case (or even no test case at all) at the end of each test phase before developing it to the next build, and then cross-test it in the next phase and then update it. This project was done for about three months, because of the difficulties of development, and the priority of the project itself is not high, so temporarily shelved.

This period is also followed by the release of other products, to do the handover of colleagues, learn something.

April 12-Now Senior=level 2

The listing became a senior engineer,4 month began to make a release, expected to end in mid-August. This is a real sense in the progress of the pressure down to take people to do. Lead a project to consider things more than follow others to do projects, at least there will be a "This is my own products, I want to be responsible for its quality" mentality, even if it is willing to work overtime, there will be no "follow the document do not have to move the mind" attitude. At the same time planning the entire testing phase of the schedule, according to the ability of personnel to arrange tasks, and they communicate to make them willing to work harder, to develop communication to promote problem solving, and so on. Encountered a lot of problems, made a lot of mistakes, under the guidance of colleagues some quickly changed, and some have some adverse consequences. This process has learned a lot, not just technically.

If you continue to do software testing ...

Next stage I will tend to focus on automated testing, I hope to have a large period of time to concentrate on a set of things out, before and lead chat, he is also very interested. There are several reasons for this idea, on the one hand, of course, because the experience of automated testing can give themselves a stepping stone, on the one hand, because there is no project pressure to do some interesting things will make the job become "happy" some: girls may make money pressure is not as big as the boys, I think in an atmosphere very open work relatively easy company to learn a lot of things and also have money to earn, than in the atmosphere very open study more relaxed school to learn a lot of things but also to pay the school a lot of money to be interesting.

Of course, sometimes it will be very tired, after work, the eyes are straight. Sometimes because of some communication problems make oneself very depressed, sometimes worry about the project and run to work overtime, sometimes because of the bad state of the job and inefficient, after the later either overtime or chicken blood to catch the progress to get back. After all, the bug is infinite, and the time and resources are limited, so in a limited time to test their own thinking of the measurement of the various things, basically only the God bless the product to the customer there is no problem. Anyway, so far, I'm still a very small test of food ...

The road long its repair far XI, I will go up and down left right Abba and quest.

Three years of experience in getting started with software testing

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.