file ppt

27

description

file ppt

Transcript of file ppt

IntroductionDuration: 120 min

Purpose: Introduce general testing types

Testing TypesFunctional testingNon-functional testingRecovery testingAlpha testingBeta testingConfirmation testingRegression test

ExampleThe Loan Management System (LMS) with

requirements:Specific requirements:

- Client query- Create for new loan- Second loan Agreement, etc

Other requirements:- Usability: training, user interface- Reliability/Performance: availability, performance- Supportability

Refer to URS of LMS

Functional TestingTest functions, focus on external behavior of

software systemCan be used in every levels of testing (UT, IT,

ST, UAT).2 perspectives for functional testing:

Specification-based: based on what customer required.

Usage-based: based on day-to-day business use of system.

ExerciseList all functions, that will be tested in LMS

15 minutes to complete

Functional Testing - CharacteristicsFunctional testing focus on:

SuitabilityInteroperabilitySecurityAccuracyCompliance

Functional testing - CharacteristicsSuitability: suitability of software for the user’s

needInteroperability: interaction of the software with

other systemSecurity: Prevention of accidental or deliberate

unauthorized access to program and dataAccuracy: accuracy of the results provided by the

softwareCompliance: compliance with standards,

conventions, regulations, law and similar rules in relation to functionality

Functional Testing – sub typesFunctional testing includes sub-types:

Function TestingUser Interface (UI) testing Data and Database Integrity TestingBusiness Cycle Testing

Function TestingObjective: Ensure proper target-of-test

functionality, including navigation, data entry, processing, and retrieval Verifying the application and its internal

processes by interacting with the application via the Graphical User Interface (GUI)

Analyzing the output or results

User Interface TestingObjective: Ensure proper navigation and

object states for each application window and objectsVerify navigation Verify using of access methods (tab keys,

mouse movements, accelerator keys) Window objects and characteristics, such as

menus, size, position, state, and focus conform to standards

Data and Database Integrity Testing

Objective: Ensure database access methods and processes function properly and without data corruptionVerify the returned data to ensure that the

correct data was retrieved for the correct transaction

Verify the database to ensure the data has been populated as intended, all database events occurred properly

Business Cycle Testing Objective: Ensure proper target-of-test and

background processes function according to required business models and schedulesAll functions that occur on a periodic schedule

will be executed or launched at the appropriate time

Testing will include using valid and invalid data

Each business rule is properly applied

Non-functional testingConcentrate on “how well or how fast

something is done”.Also can be performed at all levels of testing

but mostly at System testing

Non-functional testingMostly include:

Performance testingLoad testingStress testingVolume testingCharacteristics: Usability testing: learnability, attractiveness…Maintainability testing: analyzability,

changeability…Reliability testing: fault-tolerant, recoverability…Portability testing: adaptability, replaceability…Efficiency testing: resource utilization…

Exercise

List all non-functions, that will be tested in LMS

15 minutes to complete

Performance TestingTests the performance of a system under

normal load conditionsThe response time of an individual transition

is a typical performance requirement

Load Testing (Concurrency Testing)Tests the system’s ability to perform more

than one function at a timeAssociated with more than one user using the

systemEx: 2 users who simultaneously make a

withdrawal from a bank account may cause the system to lock up or incorrectly process one or both of the transactions

Stress TestingTests the performance of a system under

abnormal conditionsDetermine how the performance of the system

degrades as the system loading is increasedDetermine the manner in which the system

ultimately fails when the system load exceeds it capacity

Volume TestingTest with large amounts of data to determine if

limits are reached that cause the software to fail Determine how the performance of the system with

large amounts of data

Recovery TestingTests that the system can be recovered in the event of

a failureTypes of failure that as system may need to recover

from include:Program errorsHardware failures (power failure etc.)Transmission errors (noise, line disconnected, etc.)Data errors

Alpha, Beta TestingIs a kind of User Acceptance TestAlpha testing: is conducted at developer’s site using a

group of representative users of the softwareBeta testing: is conducted at the user’s own site with

no supervision by the developer.

Testing related to changeConfirmation testing:

Needed when there is a defect fixed or change requirement.

Test to confirm defect has indeed fixed or new change is correct.

Regression test:Execute test cases that are executed before.Test to ensure there is no defect is made due to

change of source code.There should be a regression test suite that executed

every time a new version of source code produced -> automation can be applied.

Security and Access Control Testing Application-level Security

Check user right: verify that an actor/user can access only those functions or data if they have right

System-level Security Verify that only those users granted access to

the system are capable of accessing the applications and only through the appropriate gateways

ConclusionFunctional testingNon-Functional testingRecovery testingAlpha testingBeta testingConfirmation testingRegression test