{"id":226,"date":"2026-03-02T17:06:11","date_gmt":"2026-03-02T17:06:11","guid":{"rendered":"https:\/\/sites.nd.edu\/softwaretesting\/?page_id=226"},"modified":"2026-03-03T21:14:50","modified_gmt":"2026-03-03T21:14:50","slug":"testing-techniques","status":"publish","type":"page","link":"https:\/\/sites.nd.edu\/softwaretesting\/testing-techniques\/","title":{"rendered":"Testing Techniques"},"content":{"rendered":"\n<p>There are two high-level approaches to testing software:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. White Box Testing (Looking Inside the Code)<\/h3>\n\n\n\n<p>White box testing (also referred to as Glass Box Testing or Clear Box Testing) focuses on <strong>how the software is built internally<\/strong>.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The tester can see and interact with the source code<\/li>\n\n\n\n<li>Tests are based on logic, conditions, and paths in the code<\/li>\n\n\n\n<li>Programming knowledge is required<\/li>\n\n\n\n<li>Usually done by developers<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"834\" height=\"168\" src=\"https:\/\/sites.nd.edu\/softwaretesting\/files\/2026\/03\/White-Box-1.jpg\" alt=\"\" class=\"wp-image-433\" srcset=\"https:\/\/sites.nd.edu\/softwaretesting\/files\/2026\/03\/White-Box-1.jpg 834w, https:\/\/sites.nd.edu\/softwaretesting\/files\/2026\/03\/White-Box-1-300x60.jpg 300w, https:\/\/sites.nd.edu\/softwaretesting\/files\/2026\/03\/White-Box-1-768x155.jpg 768w\" sizes=\"auto, (max-width: 834px) 100vw, 834px\" \/><\/figure>\n\n\n\n<p><strong>Think of it like:<\/strong> Opening the hood of a car to inspect the engine while it\u2019s running <strong>or<\/strong> looking at a watch with the face removed so you can see the gears turning to make the hands move.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"190\" height=\"191\" src=\"https:\/\/sites.nd.edu\/softwaretesting\/files\/2026\/03\/Watch-No-face.jpg\" alt=\"\" class=\"wp-image-425\" srcset=\"https:\/\/sites.nd.edu\/softwaretesting\/files\/2026\/03\/Watch-No-face.jpg 190w, https:\/\/sites.nd.edu\/softwaretesting\/files\/2026\/03\/Watch-No-face-150x150.jpg 150w\" sizes=\"auto, (max-width: 190px) 100vw, 190px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">2. Black Box Testing (Testing Like a User)<\/h3>\n\n\n\n<p>Black box testing (also referred to as Functional Testing or Behavioral Testing) focuses on <strong>what the software does<\/strong>, not how it\u2019s built.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The tester does <em>not<\/em> see the code<\/li>\n\n\n\n<li>Tests are based on requirements and expected behavior<\/li>\n\n\n\n<li>The tester provides inputs and checks outputs<\/li>\n\n\n\n<li>No programming knowledge required<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"843\" height=\"188\" src=\"https:\/\/sites.nd.edu\/softwaretesting\/files\/2026\/03\/Black-Box-1.jpg\" alt=\"\" class=\"wp-image-431\" srcset=\"https:\/\/sites.nd.edu\/softwaretesting\/files\/2026\/03\/Black-Box-1.jpg 843w, https:\/\/sites.nd.edu\/softwaretesting\/files\/2026\/03\/Black-Box-1-300x67.jpg 300w, https:\/\/sites.nd.edu\/softwaretesting\/files\/2026\/03\/Black-Box-1-768x171.jpg 768w\" sizes=\"auto, (max-width: 843px) 100vw, 843px\" \/><\/figure>\n\n\n\n<p><strong>Think of it like:<\/strong> Driving a car and checking if it brakes, turns, and accelerates correctly without having knowledge of <em>how <\/em>it works or looking at a watch with the face attached so you cannot see that there are gears turning underneath that make the hands move.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"180\" height=\"185\" src=\"https:\/\/sites.nd.edu\/softwaretesting\/files\/2026\/03\/Watch-With-face.jpg\" alt=\"\" class=\"wp-image-426\" \/><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>There are two high-level approaches to testing software: 1. White Box Testing (Looking Inside the Code) White box testing (also referred to as Glass Box Testing or Clear Box Testing) focuses on how the software is built internally. Think of it like: Opening the hood of a car to inspect the engine while it\u2019s running [&hellip;]<\/p>\n","protected":false},"author":4975,"featured_media":0,"parent":0,"menu_order":5,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-226","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/sites.nd.edu\/softwaretesting\/wp-json\/wp\/v2\/pages\/226","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sites.nd.edu\/softwaretesting\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sites.nd.edu\/softwaretesting\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sites.nd.edu\/softwaretesting\/wp-json\/wp\/v2\/users\/4975"}],"replies":[{"embeddable":true,"href":"https:\/\/sites.nd.edu\/softwaretesting\/wp-json\/wp\/v2\/comments?post=226"}],"version-history":[{"count":5,"href":"https:\/\/sites.nd.edu\/softwaretesting\/wp-json\/wp\/v2\/pages\/226\/revisions"}],"predecessor-version":[{"id":436,"href":"https:\/\/sites.nd.edu\/softwaretesting\/wp-json\/wp\/v2\/pages\/226\/revisions\/436"}],"wp:attachment":[{"href":"https:\/\/sites.nd.edu\/softwaretesting\/wp-json\/wp\/v2\/media?parent=226"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}