Software Testing Tutorial #14 - What is System Testing

Software Testing Mentor
10 Nov 202006:35

Summary

TLDRThis tutorial focuses on system testing in software testing, explaining its importance and role. The speaker highlights how system testing differs from integration testing, where the entire system, such as an e-commerce website, is tested as a whole, rather than just individual components. Using examples from both e-commerce and car manufacturing, the concept of testing the integrated functionalities is clarified. The video also touches on system integration testing for third-party system interactions. It's designed to help viewers understand and confidently explain system testing during interviews.

Takeaways

  • πŸ› οΈ System testing involves testing the entire system as a whole, including all integrated modules.
  • βš™οΈ Unit testing and integration testing focus on smaller parts of the system, while system testing examines the complete functionality.
  • πŸ” The example of the login page highlights how integration testing tests multiple integrated units, like username, password, and login button.
  • 🌐 System testing goes beyond individual modules, assessing how all parts of an application (like login, registration, dashboard, payments) work together.
  • πŸš— The car analogy helps explain system testing: once the car's components (like the engine and wheels) are integrated, the entire car is tested as a whole.
  • πŸ›’ For an e-commerce website, system testing ensures that all functionalities, such as login, registration, and payment, work together as expected.
  • πŸ”— System integration testing (SIT) involves testing the integration of the system with external systems or third-party platforms.
  • πŸ“¦ Both system testing and system integration testing fall under the broader category of system testing.
  • πŸ’‘ System testing ensures the application is tested in a real-world environment with all its functionalities, providing a complete evaluation.
  • 🎯 The goal of system testing is to ensure that the entire application works as intended from end to end, with all modules integrated and functional.

Q & A

  • What is system testing in software testing?

    -System testing involves testing the entire software system as a whole, ensuring that all integrated components and functionalities work together as expected.

  • How does system testing differ from integration testing?

    -Integration testing focuses on testing the interaction between integrated units, while system testing evaluates the entire software system, including all integrated modules and functionalities, as a complete entity.

  • Can you give an example of system testing using an e-commerce website?

    -In an e-commerce website, system testing would involve testing the entire application, including registration, login, adding products to the cart, payment processing, and other features, to ensure everything works correctly together.

  • What analogy is used in the script to explain system testing?

    -The script uses the example of a car to explain system testing. After assembling and integrating all the car parts like the engine, wheels, and body, system testing would involve testing the entire car as a whole to ensure all components function properly.

  • What is the role of system integration testing (SIT) in system testing?

    -System integration testing (SIT) involves testing the interaction between the software system and external systems or third-party integrations, ensuring seamless communication and functionality.

  • Why is it important to understand system testing in the context of the levels of software testing?

    -System testing is crucial because it ensures that the entire application functions as expected once all individual modules have been integrated, covering the highest level of testing before release.

  • How is system testing performed for third-party integrations?

    -When a system integrates with third-party applications or external systems, system integration testing is performed to ensure that the main system can communicate and interact with external systems without any issues.

  • What is the difference between unit testing and system testing?

    -Unit testing focuses on testing individual components or units of code in isolation, while system testing validates the entire system with all modules integrated, ensuring the software functions as a whole.

  • What kind of test environment is used for system testing?

    -System testing is typically performed in a test environment where the entire integrated application is deployed. This allows testers to execute end-to-end test cases, simulating real-world use cases.

  • What key takeaway from the tutorial should be emphasized during software testing interviews?

    -It's important to understand and explain that system testing involves testing the entire software system with all functionalities integrated, ensuring that the application performs as expected in a real-world scenario.

Outlines

00:00

πŸ” Introduction to System Testing and Recap of Previous Concepts

In this paragraph, the presenter introduces the topic of system testing and provides a recap of previously discussed topics, such as unit testing and integration testing. The basics of software testing are briefly mentioned, emphasizing their importance. System testing is introduced as the next level of testing, which involves testing the entire system. Integration testing, where multiple units (e.g., username, password, and login button) are combined and tested as a whole, is also revisited to build context for understanding system testing.

05:03

πŸ› οΈ Explanation of System Testing with Examples

Here, the presenter explains system testing in more detail, describing it as testing the system as a whole. The example of an e-commerce website is used to clarify the concept, where different modules (e.g., login, registration, checkout, payments) are integrated and tested together. The comparison between system testing and integration testing is made clear by emphasizing that system testing involves testing all integrated functionalities in the system, whereas integration testing focuses on testing specific unit integrations.

πŸš— System Testing Analogy with Car Manufacturing

An analogy between system testing and car manufacturing is provided. The presenter explains how testing individual components like wheels, engines, and other parts in isolation can be compared to integration testing, while system testing involves testing the entire assembled car. The idea is to ensure all parts of the car work together properly. This analogy helps to illustrate how, in system testing, the entire system (like a car or an e-commerce site) is tested to ensure everything functions as intended.

🌐 Introduction to System Integration Testing

In this paragraph, the presenter introduces the concept of system integration testing (SIT). SIT involves testing the integration of the system with third-party or external systems. The example of an e-commerce website integrating with external systems like social media platforms for login functionality is used to explain how such integration requires thorough testing. The presenter notes that system testing can encompass both system testing and system integration testing.

πŸ“Š Conclusion and Importance of System Testing

This paragraph summarizes the key points discussed about system testing and system integration testing. The presenter reiterates that system testing involves testing all modules and features of the system after integration. The analogy of the car and the e-commerce website is used to reinforce the idea that testing the complete, integrated system is crucial. The paragraph concludes by encouraging viewers to share and subscribe, highlighting that the information shared is useful for explaining system testing during software testing interviews.

Mindmap

Keywords

πŸ’‘System Testing

System Testing is the process of testing the entire software system as a whole, ensuring that all modules and components work together as expected. In the video, the speaker explains that system testing involves checking the complete e-commerce website, including login, registration, and other functionalities, to ensure that everything functions correctly when integrated.

πŸ’‘Integration Testing

Integration Testing refers to testing multiple integrated units or components to verify that they work together. The video uses the example of testing the login functionality after integrating the username, password, and login button components. The purpose is to ensure these integrated parts function as expected before system testing is done.

πŸ’‘Unit Testing

Unit Testing is a testing level where individual components or units of the software are tested in isolation. In the video, it is mentioned that unit testing focuses on testing small parts of the software, like the login button or username input field, separately before integrating them for further testing stages.

πŸ’‘Modules

Modules are distinct functionalities or sections of a software application. The video mentions several modules in an e-commerce website, such as login, registration, checkout, and payment. These modules are individually developed and then integrated to form the complete system for system testing.

πŸ’‘End-to-End Testing

End-to-End Testing refers to testing the flow of an application from start to finish, ensuring that all parts of the system work in unison. In the video, it is highlighted that system testing involves end-to-end testing of the e-commerce website to ensure all integrated functionalities like login, registration, and checkout work together.

πŸ’‘E-commerce Website

An E-commerce Website is an online platform where users can browse, shop, and make purchases. The video uses the example of an e-commerce website with multiple functionalities such as login, registration, and payment, explaining how these different features are tested during system testing.

πŸ’‘Test Environment

A Test Environment is a setup where software is deployed for testing purposes, simulating real-world conditions without affecting the live system. The video mentions that system testing is performed on a test environment to verify that the integrated e-commerce website functions correctly before it is deployed live.

πŸ’‘System Integration Testing

System Integration Testing (SIT) is the process of testing the integration of a system with external or third-party systems. In the video, the speaker explains that SIT is a part of system testing, especially when an e-commerce website integrates with external services like social media platforms for login or payment gateways.

πŸ’‘Third-party Systems

Third-party Systems refer to external systems or services that a software application interacts with. The video explains how an e-commerce website might integrate with third-party systems like Facebook, Google, or Twitter for login functionality, and the importance of testing these integrations during system integration testing.

πŸ’‘Software Testing Levels

Software Testing Levels refer to the different stages of testing, such as unit testing, integration testing, and system testing. The video discusses how testing moves from the smaller levels, like unit testing, up to the larger levels like system testing, ensuring that the software is thoroughly tested at each stage.

Highlights

Introduction to system testing as part of the software testing levels.

Recap of previous tutorials covering unit testing and integration testing.

Explanation of integration testing using the example of testing the login page.

Clarification that system testing involves testing the entire system as a whole, not just individual modules.

Example of system testing in an e-commerce website, including modules like login, registration, checkout, and payment.

Detailed mention of login and registration functionalities, with options like email or social media integration (Facebook, Twitter, Google, etc.).

Highlight that system testing ensures all features of an e-commerce site work together as an integrated system.

Comparison of system testing to testing a car, where the fully assembled car is tested for functionality as a whole.

Illustration of how individual components, like the car's wheels and engine, are tested first, followed by system testing of the entire car.

Definition of system testing as evaluating a fully integrated system or product to verify it meets specified requirements.

Mention of system integration testing (SIT) when third-party systems are involved, ensuring seamless integration with external systems.

Clear differentiation between system testing and system integration testing, with both falling under the broader category of system testing.

Emphasis on the importance of system testing in ensuring that all integrated parts function together effectively.

Key takeaway: system testing involves end-to-end testing of an application in a real environment.

Closing remarks encouraging viewers to watch previous tutorials and explaining the importance of system testing in software interviews.

Transcripts

play00:00

hello everyone welcome again in this

play00:02

software testing tutorial

play00:03

we are going to learn what is system

play00:06

testing

play00:07

so in the previous two tutorials we have

play00:09

understood about the

play00:10

unit testing and integration testing

play00:12

right and prior to that we have been

play00:14

learning about the basics of

play00:16

software testing the levels and now we

play00:18

are getting deep down into the levels of

play00:21

testing right so we have covered unit

play00:22

testing

play00:23

and integration testing already if you

play00:25

haven't watched all the previous

play00:26

tutorial

play00:27

please go through and watch them because

play00:28

they are really really important

play00:30

to build the basics all right now coming

play00:33

back to the system testing so as we have

play00:35

understood in the integration testing

play00:37

when you are integrating multiple units

play00:39

together and testing

play00:41

the integrated units that is what

play00:44

integration testing

play00:45

is right so for example in this case we

play00:47

have understood about

play00:48

the login page where you have the unit

play00:50

username password and login button

play00:53

and when you test this as a whole

play00:56

with valid username password and click

play00:58

on login button and redirecting to the

play01:00

dashboard page

play01:01

or getting the proper error message if

play01:03

the username and password is invalid

play01:06

then this is what integration testing is

play01:08

right

play01:09

so couple of units integrate together

play01:11

and you're testing

play01:12

those couple of integrated units now

play01:15

when it comes to system testing

play01:17

system testing is testing system as a

play01:20

whole

play01:21

right now in this case if i'm just

play01:23

testing login functionality of the

play01:25

overall e-commerce

play01:27

website that is not the complete system

play01:30

right complete system is the complete

play01:33

e-commerce website with

play01:34

all the functionalities that have been

play01:36

requested

play01:38

so ecommerce website can have login

play01:40

functionality and login even in the

play01:42

login functionality i can

play01:43

log in or register using you know email

play01:47

or i can log in using my social media

play01:49

account right

play01:50

so login functionality is one then there

play01:53

is a

play01:54

prior to that there is a registration

play01:56

functionality as well

play01:57

right so registration

play02:01

when we when we say register user so the

play02:04

user can register using email

play02:06

his email or through the social media

play02:08

accounts for example

play02:09

fb uh twitter or

play02:13

instagram okay

play02:16

so google so all these

play02:19

are social media login possibilities or

play02:22

integration possible on

play02:24

the registration page so this this is

play02:27

one of the module the login is another

play02:29

module dashboard another module check

play02:31

out payments

play02:32

add card remote remove card there are so

play02:34

many

play02:35

modules or features that will be there

play02:38

in the overall e-commerce

play02:39

application or system right once all

play02:42

these modules are integrated together

play02:45

and working fine and you are testing

play02:49

that this is uh you know the integrated

play02:52

system

play02:52

as a whole is known as system testing

play02:55

right

play02:56

so taking back to the car example i have

play02:59

tested the wheel so which is integrated

play03:02

system

play03:03

all right or integrated you know or

play03:05

integration testing basically of the

play03:07

wheels

play03:07

when i have tested the wheel then i'll

play03:10

test the integrated

play03:11

engine right then for the body there

play03:15

will be you know like testing

play03:16

once all this is assembled together okay

play03:20

in the car let me make it a bit small

play03:25

so say for example this is my

play03:28

car so this is my car body then the

play03:32

wheels

play03:32

are fitted here um you know all the

play03:35

headlights these are you know like small

play03:37

units and there could be

play03:38

even more small units within these small

play03:40

units um

play03:42

the window the door everything once

play03:46

has been built and tested how everything

play03:49

is you know

play03:50

integrated and available within the car

play03:54

once the car is ready and needs to be

play03:57

tested as a whole

play03:58

this is what the system testing will do

play04:01

all about in terms of car

play04:02

right so when car is ready as a whole

play04:05

it's

play04:06

moving and all the you know

play04:09

functionalities are being implemented

play04:11

all the parts are being put in place in

play04:14

the car

play04:14

and then i'm trying to you know test the

play04:17

car i'm trying to turn on the engine

play04:19

and then accelerate i'm trying to you

play04:22

know

play04:22

ride the car and see how the performance

play04:25

i'm trying to break it

play04:27

that whole testing or testing the car as

play04:30

a whole

play04:31

is system testing all right

play04:34

now taking this same example back

play04:37

to the e-commerce website when we

play04:40

integrate all the

play04:42

functionalities that need to be built on

play04:44

the e-commerce website that are given by

play04:46

the customer

play04:47

all of them are integrated and i'm

play04:50

testing

play04:51

that integrated e-commerce website on

play04:54

the test environment

play04:56

that has been deployed there and i'm

play04:58

able to do

play04:59

end-to-end test cases there with all

play05:02

the functionalities there then that is

play05:04

what system testing is all about

play05:06

now system testing can have system

play05:09

testing and system integration

play05:11

testing site as well if say for example

play05:13

your e-commerce

play05:14

application integrates with third-party

play05:17

systems or external systems

play05:19

then you have to do system integration

play05:22

testing as well because in that case

play05:25

your system e-commerce website need to

play05:27

integrate with third-party system or

play05:29

external systems as well

play05:31

so that part needs to be covered in the

play05:33

system integration testing as well

play05:35

but in the broader way or in the broader

play05:38

categorization

play05:39

system testing is applicable or system

play05:42

testing is

play05:43

uh considered for both of those phases

play05:46

so st and sit are considered as

play05:48

system testing as a whole right

play05:52

so that's basically uh you know

play05:56

how you can understand system testing

play05:57

and what system testing

play05:59

is all about um in terms of

play06:02

the actual car manufacturing example

play06:05

and the e-commerce website when agree

play06:08

all these you know systems or all these

play06:09

modules get integrated in your testing

play06:11

as a whole

play06:12

that is what system testing is in

play06:15

software testing

play06:16

so that's all for this tutorial hope

play06:18

this was helpful to

play06:20

you know for you to understand what

play06:22

system testing is and

play06:23

you will be able to explain it easily to

play06:26

any interviewer

play06:27

in any of the software testing

play06:28

interviews so that's all for this

play06:30

tutorial

play06:31

please do share and subscribe and thank

play06:33

you for watching

Rate This
β˜…
β˜…
β˜…
β˜…
β˜…

5.0 / 5 (0 votes)

Related Tags
Software TestingSystem TestingIntegration TestingE-commerceCar ExampleTest EnvironmentEnd-to-End TestingTest CasesExternal SystemsTesting Tutorial