system testing

38
Course Presentation on System Testing Presented by Group A Group Leader: Abdullah- Al-Mahmud 4 th Year(honors) Dept. of Information Science & Library Management University of Rajshahi 1 st September, 2016

Upload: abdullah-al-mahmud

Post on 21-Mar-2017

34 views

Category:

Data & Analytics


3 download

TRANSCRIPT

Page 1: System testing

Course Presentation on System Testing

Presented by Group A

Group Leader: Abdullah-Al-Mahmud

4th Year(honors)Dept. of Information Science & Library Management

University of Rajshahi1st September, 2016

Page 2: System testing

ContentsSystem Testing Definition.Why is System Testing Important?How to Test an Implemented

System?Types of System Testing.

Page 3: System testing

Introductory Speech System Testing

Definition Example

Presenter #1

Page 4: System testing

〉〉 System Testing

System testing is actually a series of different tests whose sole purpose is to verify that the system meets its specified requirements.

According to Business Dictionary, system testing is- “the process of performing a variety of tests on a system to explore functionality or to identify problems.”

Page 5: System testing

〉〉 Example

Take a web application as example. Suppose we are doing testing on a web application of a school and in this web application there are many modules like Teacher Module, Staff Module, Parent Module, Student Module, and Admin Module and so on. Now we have to do System Testing on this web application by maintaining certain steps.

Page 6: System testing

〉〉 Example (cont.)

Testing the GUI related issues - font size, alignment, display images should work properly on all the modules.

Checking that the requirements of client have been met or not.

User friendly or not - proper error message should be displayed on screen.

Page 7: System testing

• Functional testing• Non- functional testing

- Performance - Load & Stress related issues

System testing Criteria DIFFERS (from system to system)  

________________________________________________________________________________________Source: http://testingbasicinterviewquestions.blogspot.com/2015/03/system-testing-example-complete-guide.html

Page 8: System testing

Importance of System Testing

Presenter #2

Page 9: System testing

〉 〉 Importance of System Testing?

To check whether the system meets organizational, functional and end-users requirements or not.

To ensure an error-free system.

To increase workability, supportability & integration of the system.

Minimize after-development troubleshooting.

Page 10: System testing

〉〉 Importance (cont.)

To test, validate and verify both the Application Architecture and Business requirements.

The System is tested in such an environment that particularly resembles the effective production environment where the application/software will be lastly deployed. Thus it works as a pilot project before getting operational.

________________________________________________________________________________________Sources: http://staffsite.gunadarma.ac.id/mkusumahttp://www.softwaretestingclass.com/system-testing-what-why-how/

Page 11: System testing

〉〉 Real Example!

Page 12: System testing

How would we test an implemented system?

Presenter #3

Page 13: System testing

〉 〉 How would we test an implemented system?System test plan may vary from organization to organization, project plan, test strategy and so on.Nevertheless, here is list of standard point to be considered while creating System Test Plan:

Goals & Objective Scope Critical areas to focus Test Deliverable Testing Strategy for System testing Testing Schedule Test Environment Roles and Responsibilities

Steps 1: preparation of system test plan

Page 14: System testing

It is very much similar functional test case writing. In test case writing different scenario and cases of different types of test has to be written.

Different types of testing has to be considered here, like – functional testing, usability testing, error handling testing, verification testing, validation testing, audit testing, compatibility testing, scalability testing, security testing, capacity testing, recovery testing etc.

While writing test case it is needed to ensure that test cases are covering all functional, non-functional, technical and user requirements.

Steps 2: Creation of Test Cases

Page 15: System testing

Step 3: Creation of test data which used for system testing.

Step 4: Automated test case execution.

Step 5: Execution of normal test case & update test case.

Step 6: Bug Reporting, Bug verification & Regression testing.

Step 7: Repeat testing life cycle (if required).

__________________________________________________________________________________________Source: http://www.softwaretestingclass.com/system-testing-what-why-how/

Page 16: System testing

Types of System Testing1. System Acceptance Testing

Presenter #4

Page 17: System testing

〉 〉 Types of System Testing

System Testing is called a super set of all types of testing as all the major types of testing are covered in it. Although focus on types of testing may vary on the basis of product, organization processes, timeline and requirements.

1. System acceptance testing2. System level testing3. Installation testing4. Performance testing 5. Documentation testing

Page 18: System testing

System Testing

Documentation TestingPerformance Testing Installation TestingSystem Level TestingSystem Acceptance Testing

1.Verification Testing

2.Validation Testing

3. Audit Testing

1. Sub testing 2.Unit testing/ program testing 3. System Testing 

1.Functionality Testing

 2. Recoverability Testing

3.Interoperability Testing

4. Robustness Testing

 

1. Scalability testing

2. Reliability Testing 

3. Regression Testing 

4. Stress testing

5. Load and stability Testing 

1. Security Testing 2. Usability Testing

3. Regulatory Testing

4. Safety Assurance

 

Figure: Types of System Testing

Page 19: System testing

1. System Acceptance TestingSystem Acceptance Testing conducted to determine whether or not a system satisfies its acceptance criteria and to enable the customer to determine whether or not to accept the system. The system acceptance is a final opportunity for end user, management and information system operations management to accept or reject system. It is an extensive test that addresses the following levels of accepting testing.

a. Verification Testing: Procedures that attempt to determine that the product of each phase of the development process is an implementation of a previous phase. Each verification activity is a phase of the testing life cycle. In this testing the system runs in a simulated environment using simulated data. The simulated test is primarily looking for errors and omissions regarding end user and design specification that were specified in the earlier phase but not fulfilled during construction. This is sometimes called Alpha Testing.

Page 20: System testing

b. Validation Testing:

Validation is the process of evaluating a system or component during or at the end of the development process to determine whether it satisfies specified requirements. In this testing the system runs in a live environment using real data. This is sometimes called Beta Testing. During this validation a number of items are testing, like-

• System performance: Is the throughput and response time for processing adequate to meet a normal processing workload?

• Peak workload processing performance: Can the system handle the workload during peak processing period?

Page 21: System testing

• Methods and procedures testing: During conversion, methods and procedures for the new system will be put to their first real test.

• Backup and recovery testing: We have full sized computer files and databases with real data, we should test all backup and recovery procedures. We should simulate a data lost disaster and test the time required to recover from that disaster.

c. Audit Testing: Audit testing certifies that the system is free of errors and is ready to be placed into operation.

Page 22: System testing

2. System Level Testing Presenter #5

Page 23: System testing

2. System Level TestingThere are three levels of testing to be performed. Such as –

a. Sub testing: It is the test performed on individual events or modules of a program. In other words, it is the testing of an isolated subset of program.

 b. Unit Testing/ program testing: Unit testing is performed at an extremely low level of system development. As a result it is rarely observed by clients and so doesn’t get appropriate recognition of its importance. In this test all events and modules that have been coded and sub tested for a program are tested as an integrated unit. It is the testing of an entire program.

Page 24: System testing

c. System Testing:

It ensures that application programs written and tested in isolation work properly when they are integrated into the total system. The process of testing an integrated hardware and software system to verify that the system meets its specified requirements. This testing process is conducted by the testing teams in both development and target environment. Just because a single program works properly doesn’t mean that it works properly with other programs. The integrated set of programs should be run through a system test to make sure one program properly accepts, as input, the output of other programs.

Page 25: System testing

3. Installation Testing Presenter #6

Page 26: System testing

3. Installation Testing

To make sure that product / software can be installed on specific or support defined system, can be configured and can be brought into an operational mode.

a. Functionality Testing: It provide comprehensive testing over the full range of the requirements, within the capabilities of the system. To make sure that functionality of product are working as per the requirements defined, within the capabilities of the system. Functionality testing may involves communication system testing, module testing, Graphical User Interface testing, security testing, feature testing etc.

Page 27: System testing

b. Recoverability Testing: To make sure how well the system recovers from various input errors and other failure situations. c. Interoperability Testing: To make sure whether the system can operate well with third party products or not.Another kind of inter-operability tests is called (backward) compatibility tests.

• Compatibility tests verify that the system works the same way across different platforms, operating systems, data base management systems.

• Backward compatibility tests verify that the current software build flawlessly works with older version of platforms.

Page 28: System testing

d.Robustness Testing: Robustness testing is designed to verify how

sensitive a system is towards an error input or how the system behave in error situations and in a changed operational environment.

Page 29: System testing

4. Performance Testing Presenter #7

Page 30: System testing

4. Performance Testing

To measure the performance characteristics of the system, e .g. throughput and response time, under various conditions. a. Scalability testing: To make sure system’s scaling abilities in various terms like user scaling, geographic scaling and resource scaling.

• Tests are designed to verify that the system can scale up to its engineering limits.

• Scaling tests are conducted to ensure that the system response time remains the same, or increases by a small amount, as the number of users are increased.

Page 31: System testing

- Reliability testing- Regression testing

Presenter #8

Page 32: System testing

b. Reliability Testing:To make sure system can be operated for longer duration without developing failures.

• Reliability tests are designed to measure the ability of the system to remain operational for long periods of time.

• The reliability of a system is typically expressed in terms of mean time to failure (MTTF).

c. Regression Testing:To make sure system’s stability as it passes through integration of different sub systems and maintenance tasks. The main idea in regression testing is to verify that no defect has been introduced into the unchanged portion of a system due to changes made elsewhere in the system

Page 33: System testing

- Stress testing- Load and Stability

testing

Presenter #9

Page 34: System testing

d. Stress testing: The goal of stress testing is to evaluate and determine the behavior of a software component while the offered load is in excess of its designed capacity. e. Load and stability Testing:

• Tests are designed to ensure that the system remains stable for a long period of time under full load.

• Load and stability testing typically involves exercising the system with virtual users and measuring the performance to verify whether the system can support the anticipated load.

• This kind of testing help one to understand the ways the system will fare in real-life situations.

Page 35: System testing

5. Documentation Testing

Presenter #10

Page 36: System testing

5. Documentation Testing

Documentation testing means verifying the technical accuracy and readability of the user manuals, tutorials and other help related documents. a. Security Testing: To make sure system does not allow

unauthorized access to data and resources.

b. Usability Testing: To make sure that system is easy to use, learn and operate.

c. Regulatory Testing:• In this category, the final system is shipped to the regulatory

bodies in those countries where the product is expected to be marketed

• The idea is to obtain compliance marks on the product from various countries.

Page 37: System testing

d. Safety Assurance:

There are two basic tasks performed by a safety assurance engineering team:

• Provide methods for identifying, tracking, evaluating, and eliminating hazards associated with a system.

• Ensure that safety is embedded into the design and implementation in a timely and cost effective manner, such that the risk created by the user/operator error is minimized.

____________________________________________________________________________________Source: System Analysis and Design Methods by Jeffreyl Whitten, Lonnie B. Bentley and Kevin C. Dittman.

Page 38: System testing

Recap?