The difference between system testing and end-to-end testing

What is end-to-end testing, and what is the difference between it and system testing?

Both of them seem to be the same and test the application as a whole. Online definitions are very confusing.

+46
terminology testing qa
Oct. 15 '13 at 9:54 on
source share
6 answers

For me, there is not much difference between the two, and in some establishments these terms can be used interchangeably. Everywhere different. I would try to explain it like this:

System testing . You check the whole system , i.e. all of its components to ensure that each of them works as intended. It is more functional to verify requirements.

Final testing . This is a more real flow through the system in a more realistic end-user scenario. Can the user navigate the application as expected, and is it working. You are testing a workflow.

For example, if you were to check out an e-commerce site in a store:

System test: viewing items, baskets and statements will work fine.

End test: Then you may find problems with the workflow of moving between these areas of functionality.

+34
Oct. 15 '13 at 10:05
source share

End -to- end testing β€” an end-to-end test β€” is basically what it looks like; you test a piece of software from start to finish. For example, if it’s an e-commerce platform, you can verify that you can go to the product page, add it to the cart, then check and complete the order. For an application, it may be that you can select an item from the menu, do some work, and then send it so that it is visible to others. This is basically just a way for a functional team to check on a new development and make sure that they don't break anything either on the interface or in the background during implementation.

System test . It is a little more foggy. It may be someone who is testing the base website database or testing the front-end interface or even the middle tier. This is basically a power test with a (mostly) narrow focus, designed to ensure that the individual components of the service meet the requirements that are typically set before development work is completed. It can also be called "integration testing."

+18
Oct. 15 '13 at 23:55
source share

I do not agree. For me, these terms in a nutshell:

System Test: I check to see if my own system is working as expected. For example, on an e-commerce site: if my client passes the check, the correct data is sent to the warehouse (which belongs to someone else)

End-of-End Test: As stated above, the actual workflow. Someone puts a piece of goods in a shopping cart and fills in user data, pays for it. I check if I really received the payment, called the warehouse, make sure that they received the data. And, like a little cherry on a cake: when I receive the package, I make sure that this data was good enough, printed correctly, especially when my real name is Pavel Janíček (see Funny diacritics? Sometimes they are printed incorrectly).

And here you understand that even when you send data as expected and discussed, you may have a problem somewhere nearby.

+11
Oct. 15 '13 at 11:39 on
source share

The answers explain the difference well, I’ll add that you can meet two different definitions of end-to-end testing: one vertical and one horizontal (more frequent and which are described in the answers):

enter image description here

+6
Aug 22 '16 at 14:12
source share

Integration system testing: all the various components of the system are checked if they give the correct expected results in the smallest detail.

End-to-end testing: the entire application is tested from start to finish, as if it was being satisfied when viewed from the client.

+3
13 Oct '14 at 14:44
source share

Comparing end-to-end testing and system testing is similar to comparing fruits with colors. Full testing (E2E) is the "type of testing" and system testing is the "testing level". In other words, the E2E test is always a system test, but the system test is not necessarily an E2E test.

E2E testing is largely a non-functional test, although there are of course functional specifications that can be verified using the E2E test. E2Es usually run after running functional system tests. User acceptance tests (in the input environment), Search tests (in QA or intermediate environments) and in any other situation when you run SUT in an environment that tries to simulate real use will be an E2E test, while system level tests can be run in non-production environment (for example, in a development environment). Although this does not mean that you could not run the E2E test in dev ... The nature of the testing terminology allows you to answer this difficult question, because the industry is still trying to feel and beat the standards.

0
May 05 '17 at 20:46
source share



All Articles