Connect with us

Blog

System Testing in Software Engineering

Published

on

system testing in software engineering

System Testing

SYSTEM TESTING in software engineering is an end to end testing wherein testing environment/server is similar to the production environment or production server.

It can also be defined as an end to end software testing done by the test engineer in the testing server which is similar to the production server.
System testing in software engineering is done after functional testing and Integration testing is completed. In system testing, you are going to test the system as a whole.

The below diagram shows the hierarchy of different levels or steps of software testing.

Levels in system testing

End to End Testing

Navigating through all the features and check whether end feature or last feature is working as expected or not is called an end to end testing.
While doing end to end testing, you don’t have to bothered about any other testing like functional or integration testing.

Why system testing is done?

System testing is done to test the working flow of the software or application. Here the software is tested in the environment which is similar to the production server at the customer place. It is done to make sure that that the application which you have made will work in the production server and the customer can run his business with the help of that software.

Just think of yourself using any software then you will understand why system testing is done. Suppose you are using Flipkart in order to buy one shoe. Then just think about how you will navigate in order to book that item.

You will start by searching the shoes to adding it to the cart and finally paying the money. You will navigate through many features in Flipkart like “Search”, “Buy now”, “Add to cart”, “Choose payment methods” etc. and you will feel relax when an order is placed.

What if there is any problem in the software and you are not able to book the item, you will get frustrated. But it won’t happen like that, because proper system testing is done for Flipkart. The different flow in which the customer can use the software is already tested to make sure the software works fine.

So to make sure that software works according to its business flow, system testing is done.

When to go for System testing in software engineering?

  • When the minimum bunch of modules is ready.
  • When a product is relatively stable. That means, there are no blocker defects.
  • The basic functionality of all the modules is working fine.
  • Testing server similar to the production server setup is available.
  • When you start getting less number of requirements.

System testing is done manually or through automation by writing scripts

What are the types of System testing?

There are different types of system testing which is used in companies. Some of the types of system testing are listed below:

  1. Migration Testing
  2. Usability testing
  3. Load testing
  4. Volume testing
  5. Stress testing
  6. Compatibility testing
  7. Recovery testing
  8. Installation testing
  9. Accessibility testing
  10. Graphical user interface testing
  11. Scalability testing
  12. Error handling testing
  13. Reliability testing
  14. Capacity testing
  15. Exploratory testing

All these testing types are done to test various parameters such as usability testing is done to test the user-friendliness of the software whereas compatibility testing is done to test whether the software is compatible for different platforms or not.
And in all these testing software is tested as a whole so this testing comes under types of system testing.

Read here: White Box Testing and it’s types

System Testing in software engineering with Examples

Let’s take some system testing examples of a real-time application to understand it. I will take the example of Facebook and WhatsApp as everyone is familiar with them.
In below infographic, there is some system testing scenario for Facebook and WhatsApp. Take a look at these examples given below:


System testing is software engineering

What do you mean by testing server similar to the production server?

First, get to know about servers:

Development server

It is a combination of hardware and software.
The developer will write the codes, they will do WBT, compress the code, store it into the server and this server is known as a development server.

Testing server

Testing server is the combination of hardware and software.
In this server, testing software is installed. So, that test engineer from their computer they can open the browser, enter the URL and start to test the software.

Production server

It is also a combination of hardware and software.
It is a server present in the customer’s place where the software is installed and the customer can use the software and run the business.

So, what is required to make the testing server similar to the production server

testing server similar to production server

Basically, there are three things that are considered. They are given below:

1. Hardware should be similar to the production server
In this, there are two things to be considered.

  • The manufacturer should be similar

    It means if the production server is manufactured by HP, then testing server similar to the production server should be manufactured by HP only. 

  • Configurations and make should be similar.

    Make should be similar but can have different capacities (CPU & storage can be different)

    (Refer to the diagram given above)

2. Software should be similar to that of the Production server

  • OS should be the same.
  • The web server should be similar (web servers are required to handle HTTP protocol)
  • App server should be similar (app server is required to store codes or programs)
  • Database server should be similar (database server is required to store the data).

3. Data should be similar to the production server

It means if the production server is designed to handle data of 50 lakhs users, then software should be at least tested for 1 lakhs user in testing server similar to the production server.

And this is done by testing software by creating dummy data/accounts.

But creating a large number of dummy data manually, it’s very tough so we use automation tool or we write SQL scripts/queries.

Let’s take an example of this:

More than millions of peoples are using Facebook. And have you ever imagined, what would be the capacity of server present at Facebook to handle so much of data.

It must be of very high capacity. And if the Facebook software is not tested for millions of users then do you think it would work when millions of users hit the request at the same time.

No, the software would be crashed. So, software should be tested for not the same data but at least similar data so that to confirm that even if millions are going to hit the server at once, then also the software is going to work.

Conclusion

System testing is one of the most important testings in software testing. By doing system testing only you will come to know whether the built software is going to work according to the business flow of customer or not.

Read the related article by software testing fundamentals and guru 99:
http://softwaretestingfundamentals.com/system-testing/
https://www.guru99.com/system-testing.html

I have found a very good discussion about system testing on Quora

Don,t miss the related articles:

I am a writer at Shouthow. Keeping updates with a current affair is my main interest. Contact me at officialshouthow@gmail.com

Advertisement
Advertisement

Lastest Posts

sdmoviespoint sdmoviespoint
About2 months ago

Sdmoviespoint 2019 – Download Tamil, Hindi Telugu Movies for Free

Sdmoviespoint. cc 2019: Sdmoviespoint is another famous illegal movie downloading website mainly known in Asian countries. This website uploads all...

katmovies katmovies
About2 months ago

Katmovie 2019: Download New Bollywood, Hollywood, Tamil, Telugu Movies

Katmovies 2019: Katmovie is a world-famous illegal movie downloading website. It leaks most of the highest-grossing Bollywood, Hollywood, Telugu, and...

moviesda moviesda
About2 months ago

Moviesda 2019: Download Moviesda Tamil, Telugu, Hindi Movies Online

Moviesda 2019: In the world of movie piracy website, Moviesda just stands behind Tamilrockers. This proves Moviesda as the most...

horriblesubs horriblesubs
About2 months ago

Horriblesubs 2019 – Free Download Anime Series from Horriblesubs

Horriblesubs is a popular website to watch and download anime series. It facilitates you with downloading anime series in your...

movieswood movieswood
About2 months ago

MoviesWood 2019 – Download Telugu, Tamil, Malayalam, Hindi Movies

Movieswood. me 2019: Movieswood is one of the most notorious websites just like Filmywap, which uploads pirated content. Pirated contents...

downloadhub. ws downloadhub. ws
About3 months ago

Downloadhub 2019 – 300 MB Dual Audio Bollywood Movies Download

Downloadhub. ws 2019 – Downloadhub is a famous dual audio pirated movie downloading website. This notorious website is famous among...

tamilmv tamilmv
About3 months ago

TamilMv 2019 – Download Tamil, Telugu, Malayalam, Hindi movies online

TamilMv 2019 – TamilMv is an illegal pirated movie downloading site which is operated all over the world. The site...

dvdwap dvdwap
About3 months ago

DVD Rockers 2019 | DVD Rockers net – Download Kannada, Telugu Movies

DVD Rockers is a similar website like Tamilrockers which release the pirated movies. It is mainly known for leaking Kannada...

filmywap filmywap
About3 months ago

Filmywap 2019: Download Hollywood, Bollywood, Punjabi Movies Online

Filmywap is increasing its popularity in leaking the high grossing Bollywood, Hollywood as well as Punjabi movies. Filmywap.com is the official...

isaimini isaimini
About4 months ago

Isaimini Movies 2019 |Download Tamil, Telugu Movies and Mp3 Song

Isaimini is the most notorious and very famous illegal movie torrenting website. It leaks almost all movies like new Tamil...

Trending