{"id":6560,"date":"2021-01-22T17:19:26","date_gmt":"2021-01-22T11:49:26","guid":{"rendered":"https:\/\/www.innovationm.com\/blog\/?p=6560"},"modified":"2021-01-22T17:19:26","modified_gmt":"2021-01-22T11:49:26","slug":"levels-of-testing","status":"publish","type":"post","link":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/","title":{"rendered":"Levels of Testing"},"content":{"rendered":"<h1><strong>Introduction:<\/strong><\/h1>\n<p><span style=\"font-weight: 400;\">Testing levels means testing a software application on different levels when it goes through the development process. As the use of software increasing rapidly in every field and to provide a good quality of software, continuously testing at different levels is necessary. The main purpose of testing at different levels is to <\/span><span style=\"font-weight: 400;\">make software testing systematic and easily identify all possible test cases at a particular level<\/span><span style=\"font-weight: 400;\">.<\/span><span style=\"font-weight: 400;\"> Fixing the bugs in the early stages of software development saves lots of time and money. Once the software architecture becomes complex then it is not easy to change in that project to fix the bugs. So to overcome these issues testing at different levels is essential. Early and frequent testing produces quality software.<\/span><\/p>\n<p><strong>There are four levels of testing:<\/strong><\/p>\n<p><span style=\"font-weight: 400;\"><strong>1.<\/strong> Unit\/Component Testing<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><strong>2.<\/strong> Integration Testing<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><strong>3.<\/strong> System Testing<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><strong>4.<\/strong> Acceptance Testing<\/span><\/p>\n<h1><span style=\"text-decoration: underline;\"><strong>Unit\/Component Testing:<\/strong><\/span><\/h1>\n<p><span style=\"font-weight: 400;\">This is the first level of testing in which an individual unit or component of the system is tested independently. This testing is performed in the early stages of software development to find out the defects in the early stages. In most of the cases this type of testing done by the developers before handing software to the testing team for Smoke Testing. The purpose of unit testing is to verify each part of the software is working correctly in terms of fulfilling requirements and the desired functionality. It is also known as Module Testing or Component Testing.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This testing finds the bugs in the programmer&#8217;s implementation and flaws or missing parts of the specification for the unit. Unit testing allows the programmer to upgrade system libraries at a later time and make sure the modules still work correctly. By testing the parts of a programme first makes the integration testing easier. But this testing is unable to catch all the bugs of software because it cannot execute all the scenarios.\u00a0<\/span><\/p>\n<h1><span style=\"text-decoration: underline;\"><strong>Integration Testing:<\/strong><\/span><\/h1>\n<p><span style=\"font-weight: 400;\">It is a level of testing in which individual modules are combines first and then test the functionality of the combined unit. The main function of this testing is to test the interfaces between the modules. In other words, we can say that integration testing is a type of testing in which the data transfer between the modules is tested. It focuses on checking Data Communication between the modules. It is also known as String Testing. <\/span><\/p>\n<p><strong>Generally, we follow three approaches for Integration Testing:<\/strong><\/p>\n<p><span style=\"font-weight: 400;\"><strong>1.<\/strong> Big Bang approach<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><strong>2.<\/strong> Top-down approach<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><strong>3.<\/strong> Bottom-Up approach<\/span><\/p>\n<h2><strong>Big Bang Approach:<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">In this approach, all the modules or components are integrated together at once and then tested as a unit. If all the components are not developed then it is not possible to done integration testing using the Big Bang approach.<\/span><\/p>\n<h2><strong>Top-down Approach:<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">In this approach, testing takes place from top to down which means top-level modules are tested first and then below levels modules are tested. If a module is not developed then Stubs are used as a temporary module.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">E.g. If an application has two modules, Module A and Module B.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Module A has developed and we have to test Module A but as yet Module B has not developed. So to test Module A we will use a Stub.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Stubs are the temporary modules to simulate the behaviour of modules which are not developed as yet.<\/span><\/p>\n<h2><strong>Bottom-Up Approach:<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">In this approach, testing takes place from bottom to top which means low levels modules are tested first and then top-level modules are tested. If a module is not developed then Drivers are used as a temporary module.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">E.g. If an application has two modules, Module A and Module B.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Module B has developed and we have to test Module B but as yet Module A has not developed. So to test Module B we will use a Driver.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Drivers are the temporary modules to simulate the behaviour of modules which are not developed as yet.<\/span><\/p>\n<p><img fetchpriority=\"high\" decoding=\"async\" class=\"alignnone wp-image-6561 size-full\" src=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/01\/pasted-image-0-2.png\" alt=\"\" width=\"524\" height=\"221\" srcset=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/01\/pasted-image-0-2.png 524w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/01\/pasted-image-0-2-300x127.png 300w\" sizes=\"(max-width: 524px) 100vw, 524px\" \/><\/p>\n<h1><span style=\"text-decoration: underline;\"><strong>System Testing:<\/strong><\/span><\/h1>\n<p><span style=\"font-weight: 400;\">Testing the fully integrated application to evaluate the system\u2019s compliance with its specified requirements is called System Testing. Verifying the completed system to ensure that the application works as intended or not. <\/span><span style=\"font-weight: 400;\">System Testing is performed by a team that is independent of the development team in order to measure the quality of the system unbiased. It includes both functional and Non-Functional testing. It is also known as End to End testing.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">System testing is performed on the entire system to verify that the system meets its specific requirements or not. Each and every functionality of the system is tested by providing the inputs to get the desired result. This testing plays an important role in delivering a quality product. System testing is done after Integration Testing.<\/span><\/p>\n<h1><span style=\"text-decoration: underline;\"><strong>Acceptance Testing:<\/strong><\/span><\/h1>\n<p><span style=\"font-weight: 400;\">It is the last phase of the testing process. Generally, this type of testing is performed by the end user\u2019s to verify that the system performs the required task or not. <\/span><span style=\"font-weight: 400;\">If the software product passes this stage, it means that the end-user has accepted it and it is ready to go live.<\/span><\/p>\n<p><strong>Various types of User Acceptance testing are the following:<\/strong><\/p>\n<p><span style=\"font-weight: 400;\"><strong>1.<\/strong> Alpha and Beta Testing<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><strong>2.<\/strong> Contract Acceptance Testing<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><strong>3.<\/strong> Regulation Acceptance Testing<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><strong>4.<\/strong> Operational Acceptance Testing<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction: Testing levels means testing a software application on different levels when it goes through the development process. As the use of software increasing rapidly in every field and to provide a good quality of software, continuously testing at different levels is necessary. The main purpose of testing at different levels is to make software [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":6566,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[570],"tags":[14,572],"class_list":["post-6560","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software-testing","tag-innovationm","tag-levels-of-testing"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Levels of Testing - InnovationM - Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Levels of Testing - InnovationM - Blog\" \/>\n<meta property=\"og:description\" content=\"Introduction: Testing levels means testing a software application on different levels when it goes through the development process. As the use of software increasing rapidly in every field and to provide a good quality of software, continuously testing at different levels is necessary. The main purpose of testing at different levels is to make software [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/\" \/>\n<meta property=\"og:site_name\" content=\"InnovationM - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2021-01-22T11:49:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/01\/Levels-of-Testing.png\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"540\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"InnovationM Admin\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"InnovationM Admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/\"},\"author\":{\"name\":\"InnovationM Admin\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\"},\"headline\":\"Levels of Testing\",\"datePublished\":\"2021-01-22T11:49:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/\"},\"wordCount\":857,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/01\\\/Levels-of-Testing.png\",\"keywords\":[\"InnovationM\",\"Levels of Testing\"],\"articleSection\":[\"Software Testing\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/\",\"name\":\"Levels of Testing - InnovationM - Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/01\\\/Levels-of-Testing.png\",\"datePublished\":\"2021-01-22T11:49:26+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/01\\\/Levels-of-Testing.png\",\"contentUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/01\\\/Levels-of-Testing.png\",\"width\":960,\"height\":540},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/levels-of-testing\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Levels of Testing\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/\",\"name\":\"InnovationM - Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\",\"name\":\"InnovationM Admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"caption\":\"InnovationM Admin\"},\"sameAs\":[\"http:\\\/\\\/www.innovationm.com\\\/\"],\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/author\\\/innovationmadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Levels of Testing - InnovationM - Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/","og_locale":"en_US","og_type":"article","og_title":"Levels of Testing - InnovationM - Blog","og_description":"Introduction: Testing levels means testing a software application on different levels when it goes through the development process. As the use of software increasing rapidly in every field and to provide a good quality of software, continuously testing at different levels is necessary. The main purpose of testing at different levels is to make software [&hellip;]","og_url":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/","og_site_name":"InnovationM - Blog","article_published_time":"2021-01-22T11:49:26+00:00","og_image":[{"width":960,"height":540,"url":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/01\/Levels-of-Testing.png","type":"image\/png"}],"author":"InnovationM Admin","twitter_misc":{"Written by":"InnovationM Admin","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/#article","isPartOf":{"@id":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/"},"author":{"name":"InnovationM Admin","@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed"},"headline":"Levels of Testing","datePublished":"2021-01-22T11:49:26+00:00","mainEntityOfPage":{"@id":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/"},"wordCount":857,"commentCount":0,"image":{"@id":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/#primaryimage"},"thumbnailUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/01\/Levels-of-Testing.png","keywords":["InnovationM","Levels of Testing"],"articleSection":["Software Testing"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.innovationm.com\/blog\/levels-of-testing\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/","url":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/","name":"Levels of Testing - InnovationM - Blog","isPartOf":{"@id":"https:\/\/www.innovationm.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/#primaryimage"},"image":{"@id":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/#primaryimage"},"thumbnailUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/01\/Levels-of-Testing.png","datePublished":"2021-01-22T11:49:26+00:00","author":{"@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed"},"breadcrumb":{"@id":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.innovationm.com\/blog\/levels-of-testing\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/#primaryimage","url":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/01\/Levels-of-Testing.png","contentUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/01\/Levels-of-Testing.png","width":960,"height":540},{"@type":"BreadcrumbList","@id":"https:\/\/www.innovationm.com\/blog\/levels-of-testing\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.innovationm.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Levels of Testing"}]},{"@type":"WebSite","@id":"https:\/\/www.innovationm.com\/blog\/#website","url":"https:\/\/www.innovationm.com\/blog\/","name":"InnovationM - Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.innovationm.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed","name":"InnovationM Admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","caption":"InnovationM Admin"},"sameAs":["http:\/\/www.innovationm.com\/"],"url":"https:\/\/www.innovationm.com\/blog\/author\/innovationmadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts\/6560","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/comments?post=6560"}],"version-history":[{"count":0,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts\/6560\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/media\/6566"}],"wp:attachment":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/media?parent=6560"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/categories?post=6560"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/tags?post=6560"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}