Transcript for:
Session 1: Types of Test Tools

hello everyone welcome to part one of session one of module six types of test tools in this session we will learn about different types of test tools and the classification of different types of test tools so let's get started so first of all let's let's understand why tool support is required in testing what is the importance of tools in testing and why you cannot just go ahead and do all the testing manually or without the support of the tools that that you use in your day-to-day testing activities so software testing is time consuming and tedious activity so if you are doing um software testing for quite a long time or even if you have started you would have noticed that software testing is a time consuming activity it's not that testing will require very less time to do all the coverage and to certify that the software meets all the requirements and is of better quality so you need to invest quite a bit of time in testing to make sure that everything is working fine and the quality of the software that you are delivering is fine so it's a time consuming and tedious activity many time you might need to do repetitive tests so some same tests need to be executed for future builds so which is which is most of the in most of the regression testing you do such kind of stuff so you in regression testing you have test suite with every build that you get you execute those tests again and again with every uh build that you get to make sure that none of the new features or new functionality that is implemented in the in the new build doesn't break the existing functionality and the other thing in which you do re-testing is your um when you find a defect and the defect gets fixed and you get a build and then you execute the same test to retest the defect that you found in previous build so there are many scenarios where you are required to execute tests again and again so it's a most of the time it's it's kind of repetitive um activity in testing the tools help to automate repetitive tasks and make regression testing easier so because of this repetitive testing or regression testing is required to be executed in each and every build in future builds the tools that are available in the market the automation tools help you to automate these repetitive tasks so that you can execute those tests in future with the help of tool and you do not have to invest your time executing those tests test manually because man if you are executing 100 tests manually it will take much longer time rather than executing them with the automation tool so tools help you to automate those tests so that you can execute them with the help of tools in future the tools help to do test and defect management which in turn helps to measure software quality so it's not only that automation tools are important in the overall testing life cycle there are many many different kind of tools and tool support that you use that you take in your software testing life cycle so like defect management test management so there are a whole bunch of tools available which are used which in turn help to measure the software quality how the quality of the software is of the delivered software is so these are some of the reasons why tool support is required in testing now we'll look at the test tool classification so there are certain classification based on the feature and functionality provided by the test tools they are classified in different classifications so the tools are grouped by the testing activities or the areas that are supported by a set of tools so based on the testing activities or the areas that are supported by the test tools you classify them based on those features and activities so test tools can be classified in four major types so you can say single activity test tools multi-activity intrusive and non-intrusive so single activity tools are the tools which provide very specific and limited functionality or single point solution or single activity tool so like defect management tool or defect tracking tool like bugzilla or mantis so bugzilla and mantis are totally for doing defect tracking for you raise a defect it doesn't support any other functionality it's just for defect tracking so bugzilla and mantis are single activity tool then there are some configuration management tools as well which just provide the functionality of the configuration management so single activity tool are the tools which provide very specific and limited functionality then there are multi-activity tools so multi-activity tools are the tools which provide multiple functionality um like the test management tool so multi-activity tool basically is a set of different features um combined in one tool so like test management tool can provide you test management can provide you defect uh tracking and management um can also provide you the requirements tracking and management requirements management module in it so so like hp alm um application lifecycle management from hp can provide is a multi-activity tool because it has built-in test management requirements management um defect management so everything is built in into that hp um alm and that is why it is a multi-activity tool then there are tools which are classified as intrusive tools intrusive tools are the tools which affect which can affect the test outcome so intrusive tools are the automation tools because automation tools um interfere with the coding structure and how the the software is being you know structured um so they interact with the the interfere with the code that is being tested so because of that they are known as intrusive tools so for example the performance tool performance tool um or automation tool or code coverage tool they inject some kind of for example code coverage tool does an instrumentation of the existing code so it modifies an existing code a bit to figure out what kind of coverage is being attained or achieved by the existing test sets similarly with the automation performance testing tool they are intrusive in nature they interfere with the code in order to test in order to provide you the results so these kind of tools automation tools or performance tools or code coverage tools are intrusive in nature then there are non-intrusive um tools which which are classified and non-intrusive so any um tool like defect management test management this puzzle or hp um alm or rational team concert so these these are a kind of a russian quality manager which whichever tools do not interfere with the code are known as non-intrusive so mantis bugzilla your hplm the test management and defect management tools can be classified as non-intrusive tools then let's go ahead and see the types of test tools so tools for management of testing and tests so that's the first type of um test tools that we'll discuss so any tool for management of testing and tests will be classified as management tools for management of testing so there are some some tools which fall into this category there are test management tools requirements management tools incident management tools or configuration management tools so these are some tools that lie into um tools for test tools for management of testing and test category then the other category is tool support for static testing so any tool which which supports static testing will lie in this category so what are the tools that support static testing so like review process support tools or static analysis tools or modeling tools the d in front of these tools um mentioned against static analysis and modeling tools means that these tools are mostly used by developers these are not used by testers so we have covered most of the tools in different classification so that you are aware what are different tools used in overall software development lifecycle most of them are used by developers some of them are used by testers and business analysts project managers so there is a whole lot of tools that we'll discuss in this session then there is another uh classification tool support for test specification so in in this category lies test design tools and test data preparation tools then the other tools are tool support for test execution and logging so the tool which which are which help you to support test execution and logging are test execution tools test harness or unit test framework tools which are mostly used by developers then there are test comparators uh which compare um your actual and um expected and actual results um then coverage measurement tools which are used by developers and security tools are also there which which support your test execution and login then the other is tool support for performance and monitoring these are the tools which help you to support to figure out the performance and monitoring so like the performance of the application or the software so these are like dynamic analysis tools or monitoring tools and finally um tool support for any specific application area are tool support using other tools so it's not only that you use only testing tool there are many other tools which are used by other people which are not specifically a testing tool but they are really helpful in your testing act in your day-to-day testing activities so that is why we have covered all different types of tools here