What is a Function?
· Function is a set of statements that perform a specific task.
What is functional testing?
· Functional testing is a type of black box testing that bases its test cases on the specifications of the software component under test.
· Functions are tested by feeding them input and examining the output, and internal program structure is rarely considered (not like in white-box testing).
· Functional testing differs from system testing in that functional testing "verification a program by checking it against ... design document(s) or specification(s)", while system testing "validate[s] a program by checking it against the published user or system requirements".
· Functional Testing: Testing the application against business requirements. Functional testing is done using the functional specifications provided by the client or by using the design specifications like use cases provided by the design team.
Functional testing typically involves five steps.
- The identification of functions that the software is expected to perform.
- The creation of input data based on the function's specifications.
- The determination of output based on the function's specifications.
- The execution of the test case.
- The comparison of actual and expected outputs.
Functional Testing covers:
· Unit Testing
· Smoke testing / Sanity testing
· Integration Testing (Top Down, Bottom up Testing)
· Interface & Usability Testing
· System Testing
· Regression Testing
· Pre User Acceptance Testing(Alpha & Beta)
· User Acceptance Testing
· White Box & Black Box Testing
· Globalization & Localization Testing
Non Functional Testing:
Testing the application against client’s and performance requirement. Non Functional Testing is done based on the requirements and test scenarios defined by the client.
Non Functional Testing covers:
ü Load and Performance Testing
ü Ergonomics Testing
ü Stress &Volume testing
ü Compatibility & Migration Testing
ü Data Conversion Testing
ü Security / Penetration Testing
ü Operational Readiness Testing
ü Installation Testing
ü Usability Testing
ü Scalability Testing
ü Security Testing (Application Security, Network Security, System Security)
When we are going for non functional testing?
ü When the build is stable then we are going to NFT.
When build is stable?
ü When the all functional requirements are full fill then only you are going to Non Functional Requirements.