So i've made a piece of software, i've finished unit and integration testing, and now I need to do system testing.

I've read that "System testing is testing the whole system against the requirements specification after integration testing has finished. we don’t need to know what component is being executed, rather we must know what the system is supposed to do. Thus function testing is based on the system’s functional requirements."

My question is how is this usually carried out profesionally, and how is it documented?

Recommended Answers

All 3 Replies

Actually, it's really not vague; it's merely time-consuming and difficult. Here is my idea of how it should be done. It rarely is, because shipping a product is far more important than shipping a quality product.

  • Identify the system under test (SUT).
  • Identify the interfaces on the SUT.
  • Identify the protocols used on those interfaces
  • Write a test program that will control all of those interfaces such that all (really as much as is possible) system functionality is verified.
  • Write a test program that will control and load all of those interfaces such that system capacities and limits are verified and explored.

Determining why each of these items is important is your homework. :)

Why system testing is required:
It is the first level of software testing where the software / application is tested as a whole.
It is done to verify and validate the technical, business, functional and non-functional requirements of the software. It also includes the verification & validation of software application architecture.
System testing is done on stagging environment that closely resembles the production environment where the final software will be deployed.

System Testing in seven steps:
Creation of System Test Plan
Creation of system test cases
Selection / creation of test data for system testing
Software Test Automation of execution of automated test cases (if required)
Execution of test cases
Bug fixing and regression testing
Repeat the software test cycle (if required on multiple environments)

Contents of a system test plan:

The contents of a software system test plan may vary from organization to organization or project to project. It depends how we have created the software test strategy, project plan and master test plan of the project. However, the basic contents of a software system test plan should be:

  • Scope
  • Goals & Objective
  • Area of focus (Critical areas)
  • Deliverables
  • System testing strategy
  • Schedule
  • Entry and exit criteria
  • Suspension & resumption criteria for software testing
  • Test Environment
  • Assumptions
  • Staffing and Training Plan
  • Roles and Responsibilities
  • Glossary

How to write system test cases:
The system test cases are written in a similar way as we write functional test cases. However, while creating system test cases following two points needs to be kept in mind:

  • System test cases must cover the use cases and scenarios
  • They must validate the all types of requirements - technical, UI, functional, non-functional, performance etc.

As per Wikipedia, there are total of 24 types of testings that needs to be considered during system testing. These are:

GUI software testing, Usability testing, Performance testing, Compatibility testing, Error handling testing, Load testing, Volume testing, Stress testing, User help testing, Security testing, Scalability testing, Capacity testing, Sanity testing, Smoke testing, Exploratory testing, Ad hoc testing, Regression testing, Reliability testing, Recovery testing, Installation testing, Idem potency testing, Maintenance testing, Recovery testing and failover testing, Accessibility testing

The format of system test cases contains:
Test Case ID - a unique number
Test Suite Name
Tester - name of tester who execute of write test cases
Requirement - Requirement Id or brief description of the functionality / requirement
How to Test - Steps to follow for execution of the test case
Test Data - Input Data
Expected Result
Actual Result
Pass / Fail
Test Iteration

commented: Please be timely. This discussion is 10 years old. -3
Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.