The Road Map – Software Testing

Tram Ho

This is a pretty good article I want to share with everyone so that I can become a good QA, the article is just general introduction, not going into any skills, so everyone can learn about. each skill in the online road map later offline

Introduce

It can be said that one of the key to doing a good job of 1 Tester / Qa and to outperform colleagues is to demonstrate the ability to simulate 1-n relationships in application usage. QA Engineer must be able to replicate hundreds or even thousands of users in terms of developer interactions and weaknesses.

Quality assurance is a habit for any organization ready to scale and create a reputation. And this can be achieved by learning the different methods for software testing, approaches and types of testing to get experience in the field.

Road map

The chart below can introduce you to the key skills required in software testing


Types of Testing

For example, in the Road map above, we can see one of the important parts that is Types of Testing.

Types of Tessting are divided into 2 distinct parts that are Functional and Non Functional. So let’s try to learn a little about these two types:

Functional Testing

The concept of “function” of a system or a component means “what it does”, it is described in the requirement specification, function specification or in use case. There may be some functions added without any descriptive documentation, although this is quite difficult to test. Function testing is based on the tester’s functions, specification documents or understanding. Function testing can be performed at all test levels (eg testing a component can be based on the specification document of that component).

A test data is based on the document and a Test Case is prepared. The software will be tested in the real environment to check if the actual result (Actual Result) is synchronized with the expected result (Expected Result). This technique is known as the Black Box Technique and is mainly done manually (Manual Test) and is also very effective at finding errors.

Some popular types of Functional testing are:

  • Smoke Testing
  • Sanity Testing
  • Integration Testing
  • Regression Testing
  • Localization Testing
  • User Acceptance Testing (UAT)

Non Functional Testing

Non-functional testing is a type of testing related to issues such as Performance, Security, User Interface …. of the software. It is designed to test the availability of a system against nonfunctional parameters without being addressed by functional testing. For example: Test how many people can log into the same software at the same time. Manual testing of these types is not feasible, so we have to use tools to do them: LoadRunner, JMeter …

Some popular types of Non Functional Testing are:

  • Performance Testing (Load testing)
  • Usability Testing
  • Security Testing

Defect Tracking Tools

Perhaps everyone knows and uses one of the systems such as Redmine, Jira to manage Task, Bug. These tools are referred to as Defect Tracking Tools. So do you guys know why we use these tools or not.

Most of the current projects are developing according to Agile model towards fast development and early product delivery, so the use of other Defect Tracking Tools is a must. During the process of developing software, there will be an error or problem that affects the functionality of the software. So when detecting those problems, we need to manage them in the best way to help the software product to be perfected.

Not only that, but the above tools also give us a comprehensive overview of the running project progress, understanding these tools is also important if people want to develop themselves into Project Leader and Project Manager.


After learning and practicing the testing fundamentals, you need to start with the first testing skill that every QA must know: Manual Testing.

One company received a $ 50,000 bill from a software tester for his service for a multi-million dollar application that no one in the company could remake. The company was overwhelmed with such an exorbitant bill for such a short service period and demanded a detailed accounting of his fees. The software tester responded by rating: Error report: $ 1 Know where to find bug: $ 49,999

Troubleshooting is a skill you need to develop, develop, and pay more attention to. Knowing the exact root cause of the problem will solve many problems as well as save the development team’s time which is the most valuable asset they own.


After doing the Manual Testing skills well, we’ll go into a little more technical.

Ever manual testing, people have a case of having to test some cases again and again, sometimes team dev fixes a bug but has to re-test all the cases I spent a lot of time testing before. Automated testing is the newest and most modern way of checking to eliminate duplicate workloads.

The figure below can introduce you to the automation test roadmap and areas you need to visit and gain some knowledge about.

I always encourage all QA Engineers to be sure to have a good grasp of testing concepts, methods and knowledge of manual testing before starting to learn automated testing. It’s very important to write full test cases before you start writing automation tests, good test cases are that the test case is easy to read and easy to reuse.

References

Share the news now

Source : Viblo