The Fundamentals of Testing


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • This is tool open architecture not operating system and transfer protocol architecture
  • The Fundamentals of Testing

    1. 1. The Importance of Software Testing Testing Solutions Group Limited 6 th Floor, Walbrook House 23-29 Walbrook, London EC4N 8BT email:
    2. 2. A Necessary Evil <ul><li>All project managers know that they must do some testing </li></ul><ul><li>The basic questions are; </li></ul><ul><ul><li>How much? </li></ul></ul><ul><ul><li>What sort? </li></ul></ul><ul><ul><li>By whom? </li></ul></ul><ul><ul><li>When and by when? </li></ul></ul><ul><li>All difficult questions. </li></ul>
    3. 3. Why do we test? <ul><li>Provide confidence in the system </li></ul><ul><li>Identify areas of weakness </li></ul><ul><li>Establish the degree of quality </li></ul><ul><li>Establish the extent that the requirements have been met, i.e. what the users asked for is what they got not what someone else though they wanted </li></ul><ul><li>To provide an understanding of the overall system </li></ul><ul><li>To prove it is both usable and operable </li></ul><ul><li>To provide sufficient information to allow an objective decision on applicability to deploy </li></ul>
    4. 4. Another view – cynical? <ul><li>To use up spare budget </li></ul><ul><li>To provide a good excuse why the project is late </li></ul><ul><li>To provide jobs for people who can’t code </li></ul><ul><li>To make the developers look good </li></ul><ul><li>To provide the project manager with some contingency in the plan and can be cut if if push come to shove! </li></ul>
    5. 5. First up – How much? <ul><li>How good does the product need to be? </li></ul><ul><ul><li>How do we measure it? </li></ul></ul><ul><ul><li>How do we make a decision? </li></ul></ul><ul><li>Are there any legal or compliance issues? </li></ul><ul><ul><li>What industry are you in? </li></ul></ul><ul><li>What will it cost? </li></ul><ul><ul><li>Time and resource [human and machine] </li></ul></ul><ul><li>Are we capable? </li></ul><ul><ul><li>We know what we need to do but can we do it? </li></ul></ul>
    6. 6. How do we decide? <ul><li>What matters to our users? </li></ul><ul><ul><li>What does the system do? </li></ul></ul><ul><ul><li>Risk </li></ul></ul><ul><ul><li>Requirements </li></ul></ul><ul><ul><li>Money </li></ul></ul><ul><li>Test Techniques - Coverage </li></ul><ul><ul><li>Static </li></ul></ul><ul><ul><li>Dynamic </li></ul></ul>
    7. 7. Secondly – What sort? <ul><li>Unit </li></ul><ul><li>Interface </li></ul><ul><li>Functionality </li></ul><ul><li>Performance </li></ul><ul><li>Usability </li></ul><ul><li>Security </li></ul><ul><li>Availability </li></ul><ul><li>Operability </li></ul>……… plus about another 20 ‘abilities’ 
    8. 8. Do we need tools to help? <ul><li>Automated test tools are often seen as a silver bullet </li></ul><ul><li>Some tests cannot be successfully executed or analysed without them </li></ul><ul><li>80% of test tools end up as shelfware through: </li></ul><ul><ul><li>Abandonment </li></ul></ul><ul><ul><li>Neglect </li></ul></ul><ul><ul><li>Banishment </li></ul></ul>
    9. 9. Thirdly – By whom? <ul><li>Users: those who will ultimately use the system </li></ul><ul><li>Customers: those who define the system – are they the same as the users? </li></ul><ul><li>Testers </li></ul><ul><li>Analysts </li></ul><ul><li>Developers </li></ul>
    10. 10. Are we capable of testing? <ul><li>Is an experienced tester better than an experienced user at finding faults? </li></ul><ul><li>How can testers help themselves and users? </li></ul><ul><ul><li>Working with the users to understand their systems </li></ul></ul><ul><ul><li>Providing testing skills transfer </li></ul></ul><ul><ul><li>Attending testing industry conferences </li></ul></ul><ul><ul><li>Attaining industry recognised software testing qualifications </li></ul></ul>
    11. 11. More information <ul><li>Non-Functional test technique definitions and other standards: </li></ul><ul><li>STQE Magazine: </li></ul><ul><li>BCS ISEB Software Testing Certification </li></ul><ul><ul><li>Foundation </li></ul></ul><ul><ul><li>Practitioner </li></ul></ul><ul><ul><li> </li></ul></ul><ul><li>Special Interest Group in Software Testing – SIGiST: </li></ul><ul><li>EuroSTAR: </li></ul><ul><li>ICSTest: </li></ul>
    12. 12. Lastly – When? <ul><li>Once the code is complete? </li></ul><ul><li>As soon as the architecture is defined? </li></ul><ul><li>Once the system delivery is complete? </li></ul><ul><li>During development? </li></ul><ul><li>Once the business requirements have been defined? </li></ul><ul><li>As soon as the project is given the go-ahead? </li></ul>
    13. 13. <ul><li>Test then Code </li></ul>Then test some more……………………
    14. 14. <ul><li>Project deadline driven by: </li></ul><ul><ul><li>Legislation </li></ul></ul><ul><ul><li>Arbitrary date </li></ul></ul><ul><ul><li>Financial year </li></ul></ul><ul><ul><li>Calendar date </li></ul></ul><ul><ul><li>Seasonal </li></ul></ul><ul><ul><li>Marketing window </li></ul></ul><ul><ul><li>Safety Criticality </li></ul></ul><ul><ul><li>Money </li></ul></ul>By when?
    15. 15. Summary <ul><li>Testing is an integral part of the system development function, not an afterthought: </li></ul><ul><ul><li>Testing starts with the requirements not the code </li></ul></ul><ul><ul><li>Testing is a static and dynamic activity </li></ul></ul><ul><ul><li>Prevention is better than cure </li></ul></ul><ul><ul><li>The sooner you find the fault the cheaper it is to fix </li></ul></ul><ul><ul><li>Create re-usable ‘testware’ </li></ul></ul><ul><ul><li>Process first then tools </li></ul></ul><ul><ul><li>Not everyone can test well, use professional testers </li></ul></ul><ul><ul><li>Planned testing in a controlled environment provides objective metrics </li></ul></ul><ul><ul><li>To gain a Return on Investment you must first Invest </li></ul></ul>
    16. 16. The Importance of Software Testing Testing Solutions Group Limited 6 th Floor, Walbrook House 23-29 Walbrook, London EC4N 8BT email: