Software Reliability &  Software Testing  SE
SE What is 'Software Quality Assurance'?  Software QA involves the entire software development PROCESS - monitoring and im...
SE <ul><li>Testing is a process to execute a program with the    intention of finding an error. </li></ul><ul><li>Testing ...
SE Black box testing  It is not based on any knowledge of internal design or code. Tests are based on requirements and fun...
SE Integration testing  Testing of combined parts of an application to determine if they function together correctly. The ...
SE What is a  Test case ?  A test case is a document that describes an input, action or event and an expected result, to d...
SE <ul><li>It is a testing technique that requires explicit    knowledge of the internal workings of the    item being tes...
Sample Test Cases… SE Input Set   Expected Output   Actual Output   Num_1=5, Num_2=10   Num_2 is Larger   Num_1=5, Num_2=5...
Description <ul><li>All the paths were forced to execute by given set of inputs. </li></ul><ul><li>Result: All the paths w...
Black Box Testing <ul><li>System is treated as a black box, that is nothing is visible from outside. </li></ul><ul><li>It ...
Black Box Testing Contd…. <ul><li>Test cases are designed to examine  </li></ul><ul><ul><li>In correct or missing function...
Incorrect Function  -  Example Test Case SE int user_login(String,String) Input Set   Expected Output   Actual Output   Us...
Error in Database Access  <ul><li>Whether connection is created properly or not. </li></ul><ul><li>Whether records are ins...
Path Testing <ul><li>To ensure that all the paths with in the module have been exercised.  </li></ul><ul><li>Using path te...
Upcoming SlideShare
Loading in...5
×

Testing

272

Published on

Testing

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
272
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Testing

  1. 1. Software Reliability & Software Testing SE
  2. 2. SE What is 'Software Quality Assurance'? Software QA involves the entire software development PROCESS - monitoring and improving the process, making sure that all agreed-upon standards and procedures are followed, and ensuring that problems are found and dealt with. It is oriented to 'prevention'. What is 'Software Testing'? Testing involves operation of a system or application under controlled conditions and evaluating the results. The controlled conditions should include both normal and abnormal conditions. Testing should intentionally attempt to make things go wrong to determine if things happen when they shouldn't or things don't happen when they should. It is oriented to 'detection'. SOFTWARE TESTING
  3. 3. SE <ul><li>Testing is a process to execute a program with the intention of finding an error. </li></ul><ul><li>Testing demonstrates that software is working according to the specifications. </li></ul><ul><li>Testing improves the quality and reliability of a software. </li></ul>Why Testing ??? (Importance of testing)
  4. 4. SE Black box testing It is not based on any knowledge of internal design or code. Tests are based on requirements and functionality. White box testing It is based on the knowledge of the internal logic of an application's code. Tests are based on coverage of code statements, branches, paths, conditions. Unit testing Smallest unit (module) is tested individually to test particular functions or code modules. Typically done by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code. Incremental integration testing It is used for continuous testing of an application as new functionality is added. It requires that various aspects of an application's functionality be independent enough to work separately before all parts of the program are completed; done by programmers or by testers. Types of Testing Techniques
  5. 5. SE Integration testing Testing of combined parts of an application to determine if they function together correctly. The 'parts' can be code modules, individual applications, client and server applications on a network, etc. This type of testing is especially relevant to client/server and distributed systems. Functional testing Black-box type testing geared to functional requirements of an application; this type of testing should be done by testers. This doesn't mean that the programmers shouldn't check that their code works before releasing it. System testing Black-box type testing that is based on overall requirements specifications; covers all combined parts of a system. Acceptance testing Final testing based on specifications of the end-user or customer, or based on use by end-users/customers over some limited period of time.
  6. 6. SE What is a Test case ? A test case is a document that describes an input, action or event and an expected result, to determine if a feature of an application is working correctly. <ul><li>Test cases are the set of inputs to execute the program. </li></ul><ul><li>A good test case is one that has high probability of finding an error. </li></ul><ul><li>A successful test is one that uncovers yet-undiscovered error. </li></ul>
  7. 7. SE <ul><li>It is a testing technique that requires explicit knowledge of the internal workings of the item being tested. </li></ul><ul><li>Test cases are design to test all paths, loops, logical decisions and internal data structure. </li></ul><ul><li>Major concern here is to ensure that each statement, path, loop with in the module is executable. </li></ul>White Box Testing Technique - Example <ul><li>Path Testing </li></ul><ul><li>Control Structure Testing </li></ul><ul><li>Loop Testing </li></ul><ul><li>Internal Data Structure validation </li></ul>
  8. 8. Sample Test Cases… SE Input Set Expected Output Actual Output Num_1=5, Num_2=10 Num_2 is Larger Num_1=5, Num_2=5 Numbers are Equal Num_1=10, Num_2=5 Number 1 is Larger Num_1=a, Num_2=10 Error “Incorrect Format” Num_1=5, Num_2=a Error “Incorrect Format”
  9. 9. Description <ul><li>All the paths were forced to execute by given set of inputs. </li></ul><ul><li>Result: All the paths with in the module are fully functional. (Mention if there was any problem). </li></ul><ul><li>  </li></ul>SE
  10. 10. Black Box Testing <ul><li>System is treated as a black box, that is nothing is visible from outside. </li></ul><ul><li>It doesn't explicitly use knowledge of the internal structure or programming. </li></ul><ul><li>Test cases are designed to test all functional requirements. </li></ul><ul><li>What System must do is the major concern here. </li></ul>SE
  11. 11. Black Box Testing Contd…. <ul><li>Test cases are designed to examine </li></ul><ul><ul><li>In correct or missing function </li></ul></ul><ul><ul><li>Error in interface </li></ul></ul><ul><ul><li>Error in data structure </li></ul></ul><ul><ul><li>Error in database access </li></ul></ul><ul><ul><li>Initialization and termination error. </li></ul></ul>SE
  12. 12. Incorrect Function - Example Test Case SE int user_login(String,String) Input Set Expected Output Actual Output User_Name=NULL Password=NULL Display appropriate error message User_Name=Invalid Password=Invalid Display appropriate error message User_Name=Valid Password=Invalid Display appropriate error message User_Name=Valid Password=NULL Display appropriate error message User_Name=Valid Password=Valid Display login screen. New screen opens up Description: Function User_Login(String, String) Result: Mention if there was any problem.
  13. 13. Error in Database Access <ul><li>Whether connection is created properly or not. </li></ul><ul><li>Whether records are inserted properly or not. </li></ul><ul><li>Whether records are deleted properly or not. </li></ul><ul><li>Whether query is handled properly or not. </li></ul>SE
  14. 14. Path Testing <ul><li>To ensure that all the paths with in the module have been exercised. </li></ul><ul><li>Using path testing logical complexity of a program can be derived. </li></ul><ul><li>Using the programming code a flow graph could be created. </li></ul><ul><li>Flow graph is used to determine the minimum number of paths that must be tested. </li></ul>SE
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×