Software testing techniques Testing tools

  • Published on
    19-Jan-2016

  • View
    70

  • Download
    3

Embed Size (px)

DESCRIPTION

Software testing techniques Testing tools. Presentation on the seminar Kaunas University of Technology. Why do we need testing tools?. Testing is faster Testing is cheaper Testing is more effective We get better quality software for almost the same price. Types of testing tools. - PowerPoint PPT Presentation

Transcript

  • Software testing techniques

    Testing tools Presentation on the seminar

    Kaunas University of Technology

    Introduction to Software testing techniques

  • Why do we need testing tools?Testing is fasterTesting is cheaperTesting is more effective

    We get better quality software for almost the same price.

    Introduction to Software testing techniques

  • Types of testing toolsUnit testing toolsModel-based testing toolsFunctional (GUI) testing toolsNon-functional testing toolsCode analysis testing tools

    Introduction to Software testing techniques

  • Unit testingUnit testing is a method by which individual units of source code are tested to determine if they are fit for use.

    Introduction to Software testing techniques

  • Unit testing

    Introduction to Software testing techniques

  • Unit testingTools:csUnit, Nunit, NUnitASP, EMTF, CppUnit, Cput, C++test, UnitTest++, Dunit, Jtest, JUnit, TestNG, NUTester, JSUnit, QUnit, jsUnity

    Today we have unit testing tools for more than 70 programming languages.

    Introduction to Software testing techniques

  • Model-based testingModel-based testing is an approach in which you define the behavior of a system in terms of actions that change the state of the system. Such a model of the system results in a well-defined Finite State Machine (FSM) which helps us to understand and predict the systems behavior.

    Introduction to Software testing techniques

  • Model-based testingSteps:Build the model;Generate expected inputs;Generate expected outputs;Run tests;Compare actual outputs with expected outputs;Decide on further actions (modify the model, generate more tests, stop testing and etc.)

    Introduction to Software testing techniques

  • Model-based testingAdvantages:Forces detailed understanding of the system behavior;Early bug detection (which is much cheaper);Test suite grows with the product;Manage the model instead of the cases (useful when features changing constantly);Can generate endless tests (since test cases are machine generated);

    Introduction to Software testing techniques

  • Model-based testingTools:MaTeLo, SpecExplorer, GraphWalker

    Introduction to Software testing techniques

  • Functional (GUI) testingFunctional 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.

    Introduction to Software testing techniques

  • Functional (GUI) testing

    Introduction to Software testing techniques

  • Functional (GUI) testingTools:Abbot, AutoHotkey, CubicTest, Dogtail, FitNesse, Linux Desktop Testing Project, Maveryx, Qaliber, Selenium, Robotium

    Introduction to Software testing techniques

  • Non-functional testingNon-functional testing is the testing of a software application for its non-functional requirements.

    Introduction to Software testing techniques

  • Non-functional testingNon-Functional Testing covers:Load and Performance TestingErgonomics TestingStress & Volume TestingCompatibility & Migration TestingData Conversion TestingSecurity / Penetration TestingOperational Readiness TestingInstallation TestingSecurity Testing

    Introduction to Software testing techniques

  • Non-functional testingTools:AppLoader, IBM Rational Performance Tester, Jmeter, LoadRunner, Apache Bench, Httpperf, SLAMD

    Introduction to Software testing techniques

  • Code analysisStatic code analysis. A methodology of detecting errors in program code based on the programmer's reviewing the code marked by the analyzer in those places where potential errors may occur.

    Introduction to Software testing techniques

  • Code analysisThe earlier an error is determined, the lower is the cost of its correction. Correction of an error at the testing stage is ten times more expensive than its correction at the construction (coding) stage.

    Introduction to Software testing techniques

  • Code analysisTools:Copy/Paste detector, Sonar, Yasca, FxCop, Gendarme, StyleCop, cppcheck, Checkstyle, FindBugs, Hammurapi, Closure Compiler, JSLint

    Introduction to Software testing techniques

  • Questions?

    Introduction to Software testing techniques

  • QuestionsWhy do we need testing tools?List types of testing tools.What is static code analysis?What are the steps of model-based testing?What non-functional testing covers?

    Introduction to Software testing techniques

Recommended

View more >