Hi i am SEM,
how can i help you

Semos Education Semos Education
  • Monday - Friday 9:00 AM - 10:00 PM CET
  • Call us now +44 7487633466
  • Keep in touch info@semosedu.com
EN / МК / RS
Кошничка
reserve a seat

What is the difference between QA and Software Testing?

18 April, 2024

What is the difference between QA and Software Testing?

Learn the differences between QA and Software Testing

Jelisaveta Markovik graduated from the Faculty of Electrical Engineering at the Department of Telecommunication and Information Technologies at the University of Belgrade. As a Quality Assurance & Tester she has been working since 2014, on various projects that include mobile application testing, websites and API testing. The projects were for foreign companies whose success is measured by millions of users. In the course of the work, she acquired ISTQB certificate for Foundation and Agile Tester levels. She went from being a tester as a team member to the position of QA team leader. She is happy to share her enthusiasm for testing with others through various mentorships and finds this an ideal position to share her knowledge with as many people as possible.

A lot of people don’t know the difference between QA and Software Testing. QA (Quality Assurance) represents the assurance of quality software. That does not mean the software just works correctly, but also as it is needed for the business.

The QA process actually starts while creating the business plan. Possible flaws in the specification are found, the expectations of the end user are considered and all with the goal to prevent errors during the creation and the actual course of software testing. QA aims to prevent issues and is more related to the Agile methodology.

The Software Tester is focused on the essence: testing the product itself, finding defects and their reporting and verification, using different methodologies and programs. Testers find the problem and describe it so that the programmer knows where the problem is and how to fix it. After the programmer’s intervention, the tester checks again if the problem is solved. This focus on prevention is not to make the defect disappear but to detect the defect – we are talking about product quality control.

QA works with the business and provides insight into how the end user can see the product. That way QA puts his/her own stamp of the product and its functions. QA enables the business to make a better software offering that will be more complete and of higher quality. When we have a software like this then there is less chance to make a mistake during its creation. In Software Testing, the work is different: the testers do not have as much contact with the business and cannot influence the product as much.

Now that we have clear picture of what is the difference between QA and Software Testing, we can answer the most frequent questions:

  1. Why are Software Testing and QA important?
    The role of QA is extremely important for a project: it is a link between the business idea and program realization.
    As the product is developed, it also goes through testing phase by the programmer in order to check the code. But when the product comes to be tested by the Software Tester, it also goes through different usage scenarios that can give inadequate product behaviors.
    It can be caused by flaws in the specification, flaws in implementation, flaws in testing, limiting factors in the environment, etc. Depending on the software in question, that inappropriate behavior can cost the company’s reputation, capital, or even end up in a lawsuit. In order to avoid these undesirable scenarios – it is necessary to invest in QA.
  2. Where are QA and Software Testing used?
    Anyone developing software product should have QA/Software Testing available.
    Example: A fashion company hires programmers to create a product offering website. The site looks great at first glance and can be used. The company is having a sale and is sending SMS messages/emails to the users. 10 minutes after that the site can no longer be used (a very common occurrence in our surrounding 😊).
    Why is this happening? Due to the way of use, the site is not fully communicated with the programmers and testers, and therefore the server is not designated to serve such a large number of users and stops working.
  3. Can a person do QA without coding knowledge? Who can be a Software Tester?
    Yes, it is possible. The role of QA is not defined as someone having to write automated tests and understand a programming language. A QA expert can do the job well without that. He/She needs to be able to logically understand how some things work, think like an end user, try to see things from another angle and find a flaw in the specification or in the end product. We wouldn’t advise avoiding programming either – given that the QA field is constantly evolving, knowing the basics of programming can only help. It is important to remain open to learning and accepting new knowledge. 😊
    As in any job, it is crucial that the person is interested, willing to learn and have good motivation. Of course, it is easier for someone from a technical profession to start with a QA position, but during my work I have met colleagues with different university education who confirmed my opinion that there is no strict definition in education. Beginners are advised to familiarize themselves with the basics of testing, testing techniques, and working with databases, as these are the most common interview questions for QA position.

 

 

”QA is like a small child playing with a toy. The child will very quickly take apart and break the toy to see what is inside and what it is made of, and then reassemble it. Also, the QA people “dismantle” the product to the smallest part, as the end user would do.”

 

What does a working day of a QA person look like?

First coffee, then reading a lot of emails 😊.

When working on an Agile project, the day can vary quite a lot, so the morning can start with daily meetings where we present the status of the previous day and the plan for the next day. After that follows: creating tests, detecting test data requirement, and if necessary, reviewing tests (cases) written by other team members, giving suggestion for changes, or changing existing tests if there are comments during the creation.

If there is a need to share knowledge, we have meetings. In case if a problem arises for the purpose of its research, the whole process is stopped and priority is given if we have something urgent. We try to reproduce the problems, a scenario is found, the circumstances under which it occurs and information is given to the programmers if it is a valid problem to fix. In case it is not, we give an explanation about the way the product works.

Do you know that a spacecraft crashed only because it was not tested?

The interface of this craft received the numbers in a specific format and no one tried or tested how it would behave if a different number was entered. When it took off, some long number was written on the interface (for which there was not enough space in the memory) and the aircraft crashed. So just one number caused such a big problem. There will always be a need for testing. I am sure that testers will not disappear in 10 years, nor in 100 years. There will always be work, although the nature will change and vary depending on the development of AI.

Do you know how just one person made a huge traffic jam?

You must have heard the story of a genius artist who tricked Google maps. With his artistic performance, Simon Weckert drew attention to how the software that we take for granted work and how they affect our lives. Simon borrowed and rented 99 phones, which he placed in a small red cart and activated location tracking on each one. In this way, he tricked Google maps, which showed a huge crowd on the part of the road where Simon was passing. Passengers began to avoid this part of the road – the map showed a complete standstill. Do you think any QA team has thought of using Google maps like this?

Career opportunities: How popular and well paid is the QA profession?

The career opportunities are diverse as the QA field itself, depending on the platform the product is intended for. Positions from junior to senior are sought after, automation QA who know programming languages are also in demand, but the same goes for positions as security expert, performance expert, etc.

I started with mobile testing, then worked on web testing and now I also work on mobile and web and API testing. As in any other job, the better the tester, the higher the salary. It is said that Automation Testers have better salaries.