The system test, can be considered the "third phase" of the test, being the first unit or unit test, testing the smallest units of the system, looking for logic and implementation errors in each module separately. The second would be the integration test, which aims to detect failures in the interaction between drives, usually the types of failures found are sending and receiving data. Remembering that integration with other systems is not part of this phase.
The system test aims to test the system thoroughly. It is common to call this test black box, because the system is tested with everything connected: batch Jobs, database, web services, etc.. This test puts the whole system to the test.
In practice they are executed under similar conditions to those that the user will use. This test checks whether the components are compatible, whether they interact correctly, whether they transfer the right data at the right time, etc.
To answer your question "Is testing even the system interface(view)?" see this one image (slide 20), it shows a summary of the tests:
As we can see, the answer to your question is Yes. It is at this stage that the system interface is tested.
There are also the acceptance test and regression test. The acceptance test aims to verify compliance with business and user requirements in the last phase of the development cycle, validating the product for delivery. They are usually performed by a restricted group of end-users of the system. The regression test is applied when launching a new version of the software or when there is a need to run a new test cycle during the development process. It is not considered a test level, but is an important strategy for reducing side effects.
References and related links:
Look, I know you Unit Tests, Acceptance Tests and Functional Tests, plus e2e tests, but I don’t recall hearing that term System test before. Can you show me somewhere where you saw this?
– Thiago Santos
@Thiagosantos vi in books, in some places was described as software test.
– Leonardo
I then believe that System test and/or Software Testing is a generalization that encompasses all types of tests
– Thiago Santos
@Thiagosantos I think not, according to the book I read (TDD: Test and Design in the Real World): "A system test is one that is identical to the one run by the application user. If your application is a web application, this test should go up the browser, click on links, submit forms, etc.". But then searching in other sources I find something kind of different than this. So I decided to ask.
– Leonardo
That you described sounds a lot like a functional test, which does the tests you mentioned.
– Thiago Santos