In the market of freelance work there are a lot of vacancies for testing and QA. However, even the seasoned freelancers don’t
know exactly what are the differences between these types of work, many simply equate it.
Advertisements also look different:
- QA, Testing - free vacancy for a specialist;
- An expert in testing QA (TS-F) is needed;
- We require an expert in QA testing.
What is the essential difference between these concepts?
In the market of this type of programming, there are three basic concepts.
First is software testing itself, it involves quality control of software. This type of work is done by testers.They check on the correctness
and completeness of realization. Methods of test in modern programming are mixed and varied, so the work is complex, interesting and creative.
Typically, the formal process is given for test. With it help we can find all the weak points. However, there is no specialist which will say for sure,
that the program will run without interruption, as the human factor plays an important role in the use of software, the action is simply impossible to predict.
The second concept - Quality Control, i.e., quality control involves measuring the quality of the product. Note that the first
and second has a very thin borders, so testers tend to perform all these functions in the course of their work on their own.
But the third term - QA means "quality assurance", which in itself implies a measurement and quality control process that is used
to create high-quality software. As you can see, the difference in this case is significant. QA requires a constant interference of the programmer into it.
Therefore, choosing this area of freelancing you need to know exactly where you want to work in qa testing company
or in test quality control company (QC).
Now let us turn to the question about the requirements for a specialist in this field. If a company, that invites you to job, is very serious, then you may need follows:
- The presence of higher technical education. Don’t be angry at employers about this requirement. Higher education gives the knowledge of systems, methods,
options for testing, modeling, and discrete mathematics except programming skills. Not every man can learn it all while sitting at home;
- Your own experience in automating software test. Prepare your portfolio, because a good employer will want to look at it;
- Knowledge of software development process and methods of test automation. Theory must always be in your head, and the practice is applied to it;
- You should not confuse about such concepts as bug / task tracking system, bugzilla, testtrack, rational robot, etc.;
- Good knowledge of the concepts of stress, regression, functional testing, to know the methods of their implementation;
- Possession of SQL, Java outsourcing, Visual Script, other languages on request of the employer;
- Probably a good knowledge of English.