{"id":12878,"date":"2018-07-23T16:21:34","date_gmt":"2018-07-23T16:21:34","guid":{"rendered":"https:\/\/app14743.cloudwayssites.com\/blog\/?p=2878"},"modified":"2023-01-26T12:16:20","modified_gmt":"2023-01-26T20:16:20","slug":"why-screenshot-image-comparison-tools-fail","status":"publish","type":"post","link":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/","title":{"rendered":"Why Screenshot Image Comparison Tools Fail With Dynamic Visual Content"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">The QA team is the last frontier before your customers get their hands on your latest product version. Assuming your testing team has already completed smoke testing, integration tests, functional tests, end-to-end tests, acceptance tests and performance tests (not necessarily in that order) there&#8217;s still one piece of the puzzle: visual UI testing of your app front end.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The way many companies visually test their applications using image comparison tools. Some of these are free and some are paid. But in either case, these tools are not always reliable and often deliver false-positives (false alarms) that only frustrate both frontend developers and testers, and ultimately making you ship software late.<\/span><\/p>\n<h2 class=\"h5\"><strong>How Does Image Comparison Work?<\/strong><\/h2>\n<p><!--more--><\/p>\n<p><span style=\"font-weight: 400;\">Image comparison is simply pixel-by-pixel comparison, nothing more. Each and every pixel color in the base image is compared to the equivalent pixel in the checkpoint image. If all pixel colors match both images are identical. The chance of this technique working flawlessly is very slim. For this reason, image comparison tools give the user parameters to adjust such as pixel\/color tolerance, which is the number of pixels that are allowed to differ between the two images. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">But that\u2019s not enough.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">There are many ways in which images might seem to be identical but the pixels don\u2019t match. Why does image comparison fail? There are many reasons:<\/span><span style=\"font-weight: 400;\"><br><\/span><\/p>\n<h2 class=\"h5\"><strong>Mouse Hovers<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">Even if the mouse points is not grabbed in a screenshot it may actually be hovering over an element that can be affected by it. Because changing the appearance of an element is trivial to do in <a href=\"https:\/\/www.w3schools.com\/cssref\/sel_hover.asp\" target=\"_blank\" rel=\"noopener noreferrer\">CSS<\/a>, <a href=\"https:\/\/www.w3schools.com\/jsref\/event_onmouseover.asp\" target=\"_blank\" rel=\"noopener noreferrer\">JavaScript<\/a>, <a href=\"https:\/\/www.w3schools.com\/jquery\/event_mouseover.asp\" target=\"_blank\" rel=\"noopener noreferrer\">JQuery<\/a>, <a href=\"https:\/\/stackoverflow.com\/questions\/29981236\/how-do-you-hover-in-reactjs-onmouseleave-not-registered-during-fast-hover-ove\" target=\"_blank\" rel=\"noopener noreferrer\">React<\/a>, <a href=\"https:\/\/docs.angularjs.org\/api\/ng\/directive\/ngMouseover\" target=\"_blank\" rel=\"noopener noreferrer\">Angular<\/a>, <a href=\"https:\/\/stackoverflow.com\/questions\/30911933\/mouseover-or-hover-vue-js\" target=\"_blank\" rel=\"noopener noreferrer\">Vue<\/a>, and other front-end developer technologies, this pattern is quite common in web apps.&nbsp;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Here\u2019s an example from a website you might be familiar with. In the top screenshot, the mouse isn\u2019t hovering over the <strong>Google Search<\/strong> button; in the bottom screenshot, it is. See the difference?<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2879 size-full\" src=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/eran-screenshot-fails-01.png\" alt=\"Why is pixel-base image comparison bad? \" width=\"537\" height=\"285\"><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2880\" src=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/eran-screenshot-fails-02.png\" alt=\"Why pixel-based image comparison is bad?\" width=\"533\" height=\"304\"><\/p>\n<h2 class=\"h5\"><strong>Input Caret<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">If you have a text element that is in focus it may have a blinking caret in it. Suppose when you did your baseline test, you captured a screenshot of the cursor. Then when you do your test, your screenshot captures the page at the instant when the cursor is invisible. A simplistic pixel comparison will fail, even though the UI doesn\u2019t have a bug.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Here\u2019s an example of this. In the top screenshot, the cursor is visible; in the bottom, it isn\u2019t.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2881\" src=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/eran-screenshot-fails-03.png\" alt=\"Why pixel-based image comparison is bad?\" width=\"581\" height=\"327\"><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2882\" src=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/eran-screenshot-fails-04.png\" alt=\"Why pixel-based image comparison is bad? \" width=\"556\" height=\"291\"><\/p>\n<h2 class=\"h5\"><strong>Font Anti-Aliasing<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">Each operating system renders fonts differently to make the font smoother and easier to read. It\u2019s not just a Mac-versus-Windows thing; even an operating system upgrade can <a href=\"https:\/\/answers.microsoft.com\/en-us\/ie\/forum\/all\/installation-of-windows-8-cp-causes-blurred-fonts\/75352b20-cb08-4312-b7f3-6c38bb5f5f0a\" target=\"_blank\" rel=\"noopener noreferrer\">change font smoothing<\/a>.&nbsp;<\/span><span style=\"font-weight: 400;\">Additionally, your testers might change a font smoothing setting without realizing how it will impact visual testing.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The point is, any of these can make simplistic pixel comparisons fail, even when there isn\u2019t a visual UI bug.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For this reason, it\u2019s crucial for testers to understand how to control font smoothing on their test platforms. On macOS, the font smoothing setting is in <\/span><b>System Preferences &gt; General:&nbsp;<\/b><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2883\" src=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/Font-smoothing-setting-on-macOS.png\" alt=\"Font smoothing setting on macOS\" width=\"659\" height=\"618\"><\/p>\n<p>In Windows, <a href=\"https:\/\/en.wikipedia.org\/wiki\/ClearType\" target=\"_blank\" rel=\"noopener noreferrer\">ClearType<\/a> is the technology used for font smoothing and can be <a href=\"https:\/\/www.winhelp.us\/change-font-smoothing-in-windows.html\" target=\"_blank\" rel=\"noopener noreferrer\">turned on and off in the settings<\/a>. The exact method varies by Windows version.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2884 size-full\" src=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/ClearType.jpg\" alt=\"ClearType on Windows\" width=\"480\" height=\"345\"><\/p>\n<p><span style=\"font-weight: 400;\">If pixel-based bitmap comparison is part of your test automation, you\u2019ll want to ensure a consistent font smoothing setting programmatically. Here\u2019s how to do that on <a href=\"http:\/\/osxdaily.com\/2014\/10\/27\/change-font-smoothing-text-os-x-yosemite\/\" target=\"_blank\" rel=\"noopener noreferrer\">macOS<\/a>, and how to do it in <a href=\"https:\/\/stackoverflow.com\/questions\/5676768\/enable-disable-cleartype-in-windows7\" target=\"_blank\" rel=\"noopener noreferrer\">Windows<\/a> (if these techniques&nbsp;seem complicated &#8212; that\u2019s one of many reasons customers use Applitools. More on that below).&nbsp;<\/span><\/p>\n<h2 class=\"h5\"><strong>User Interface Themes<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">If your testing team switches the user interface visual theme on a test computer, that will change image screenshots and cause simple pixel comparison tools to fail. These changes are very easy to make on both <a href=\"https:\/\/superuser.com\/questions\/901871\/change-mac-appearance-color-from-blue-and-graphite\" target=\"_blank\" rel=\"noopener noreferrer\">macOS<\/a> and <a href=\"https:\/\/support.microsoft.com\/en-us\/help\/13768\/desktop-themes-featured\" target=\"_blank\" rel=\"noopener noreferrer\">Windows<\/a>, meaning&nbsp;<\/span><span style=\"font-weight: 400;\">it\u2019s all too easy for testers to introduce changes that will visual UI tests.<\/span><\/p>\n<h2 class=\"h5\"><strong>Different Monitors<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">Higher resolution screens like the <a href=\"https:\/\/www.macworld.co.uk\/feature\/apple\/retina-display-3466732\/\" target=\"_blank\" rel=\"noopener noreferrer\">Apple Retina Display<\/a>&nbsp;<\/span><span style=\"font-weight: 400;\">have more pixel density, so much so that pixels are not visible to the human eye. A screenshot taken on retina screen and a monitor with less pixel density will fail a simple pixel comparison, even if, to the human eye, there\u2019s no apparent difference.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Here\u2019s an example. The image on the top is a non-retina display on an iPhone 3GS. The image on the bottom is from an iPhone 4\u2019s retina display.<\/span><\/p>\n<figure id=\"attachment_2885\" aria-describedby=\"caption-attachment-2885\" style=\"width: 200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2885 size-full\" src=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/200px-Non-Retina_Display.jpg\" alt=\"200px Non Retina Display\" width=\"200\" height=\"133\"><figcaption id=\"caption-attachment-2885\" class=\"wp-caption-text\"><em>200px Non-Retina Display<\/em><\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<figure id=\"attachment_2886\" aria-describedby=\"caption-attachment-2886\" style=\"width: 200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2886 size-full\" src=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/200px-Retina_Display.jpg\" alt=\"200px Retina Display\" width=\"200\" height=\"133\"><figcaption id=\"caption-attachment-2886\" class=\"wp-caption-text\"><em>200px Retina Display<\/em><\/figcaption><\/figure>\n<p><span style=\"font-weight: 400;\">Neither one of these has a visual bug, but it\u2019s obvious that they wouldn\u2019t pass a simple pixel comparison, even if the battery levels were the same.<\/span><\/p>\n<h2 class=\"h5\"><strong>Graphics Cards<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">When different computers have different graphics cards, they can produce different screenshots. Or <a href=\"https:\/\/www.mmo-champion.com\/threads\/1445749-Slightly-fuzzy-screen-after-installing-new-graphics-card\" target=\"_blank\" rel=\"noopener noreferrer\">fuzzier screenshots<\/a>. And even if you don\u2019t change your graphics card, an older card that is about to fail can <a href=\"https:\/\/www.pcmech.com\/article\/six-signs-graphics-card-might-dying\/\" target=\"_blank\" rel=\"noopener noreferrer\">introduce screen glitches<\/a> that lead&nbsp;to<\/span><span style=\"font-weight: 400;\"> different screenshots over time.<\/span><\/p>\n<h2 class=\"h5\"><strong>Visually Testing Dynamic Content<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">In the real world your apps are not static and content changes constantly, using image comparison will not cut it to validate all pages in your app since you can&#8217;t automatically create a baseline for your tests. It takes more than pixel-by-pixel comparison to achieve that and manual testing is not a scalable solution either.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">A good example of this is <a href=\"https:\/\/www.gannett.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Gannett<\/a>, the company behind USA Today and <a href=\"https:\/\/www.gannett.com\/brands\/\" target=\"_blank\" rel=\"noopener noreferrer\">dozens of other news publications<\/a>. They&nbsp;<\/span><span style=\"font-weight: 400;\">can\u2019t use pixel comparison, because their screenshots constantly change as breaking news stories are added to their websites. For USA Today and other new sites, there is no constant but change itself.<\/span><\/p>\n<h2 class=\"h5\"><strong>AI To The Rescue<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">By emulating the human eye and brain, Applitools AI powered Visual UI Testing technology only reports differences that are perceptible to users and reliably ignore invisible rendering, size and position differences. The algorithms can instantly validate entire application pages, detect layout issues, and process the most complex and dynamic pages.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">When writing an automated visual UI test, sometimes we will want to change the comparison method between our test and its <a href=\"https:\/\/help.applitools.com\/hc\/en-us\/articles\/360007188691-What-is-a-baseline-and-how-is-a-baseline-created-\" target=\"_blank\" rel=\"noopener noreferrer\">baseline image<\/a>,&nbsp;<\/span><span style=\"font-weight: 400;\">especially when dealing with applications that contain dynamic content. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">Applitools Eyes can test the UI in <a href=\"https:\/\/help.applitools.com\/hc\/en-us\/articles\/360007188591-Match-Levels\" target=\"_blank\" rel=\"noopener noreferrer\">four different comparison levels<\/a>:&nbsp;<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2888\" src=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/Applitools-four-different-image-comparison-levels.png\" alt=\"Applitools - four different image comparison levels\" width=\"988\" height=\"641\"><\/p>\n<p>Here is how those comparison levels vary:<\/p>\n<ol>\n<li><strong>Exact<\/strong>: pixel-to-pixel comparison. If you really want to do exact pixel comparisons, you can still use Applitools.<\/li>\n<li><strong>Strict<\/strong>: compares everything including content (text), fonts, layout, colors and position of each of the elements. Strict knows to ignore rendering changes that are not visible to people. Strict is the recommended match level when running regression tests on the same browser\/OS.<\/li>\n<li><strong>Content<\/strong>: works in a similar way to Strict except for the fact that it ignores colors.<\/li>\n<li><strong>Layout<\/strong>: compares the layouts (i.e. structure) of the baseline and actual images. It validates the alignment and relative position of all elements on the page, such as buttons, menus, text areas, paragraphs, images, and columns. It ignores the content, color and other style changes between the pages. <a href=\"https:\/\/app14743.cloudwayssites.com\/case-studies\/gannett\" target=\"_blank\" rel=\"noopener noreferrer\">Gannett uses layout mode extensively<\/a> to test the layout of USA Today and other news sites.<\/li>\n<\/ol>\n<h2 class=\"h5\"><strong>Layout: Changing the Game<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">Applitools\u2019 layout mode algorithm reverse-engineers the structure of the compared images by applying complex image processing algorithms resulting with the logical page structure of each image that includes all the components of the page. Then, it proceeds to map each component with its counterpart in the other image which allows detection of missing or new elements as well as misplaced ones. All such elements are considered different and are highlighted as such in the comparison result.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Layout mode will have greater benefits than other match levels in certain scenarios, which most notably include: dynamic content, language localization, responsive design, and cross-environment testing (including operating systems, browsers, devices, and form factors) since it is a more flexible approach of visual testing will have greater benefits.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">But don&#8217;t take my word for it. In the following example (video below) I run a search in Google Images for two different keywords, grab screenshots of both results using Applitools Eyes, and show how Exact match level (which is doing pixel-by-pixel comparison) fails and Layout match level pass. Applitools Eyes is able to reverse engineer the image layout and the relation between all the UI elements on the page while ignoring the actual content of those images and text.<\/span><\/p>\n<p><iframe title=\"YouTube Video\" src=\"https:\/\/www.youtube.com\/embed\/7Rvkk31h3ag?rel=0&amp;showinfo=0\" width=\"560\" height=\"315\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/p>\n<p><strong>Pretty cool, right?&nbsp;<\/strong><\/p>\n<p>To learn more about Applitools\u2019 visual UI testing and application visual management (AVM) solutions, check out the&nbsp;<a href=\"https:\/\/app14743.cloudwayssites.com\/tutorials\" target=\"_blank\" rel=\"noopener noreferrer\" data-saferedirecturl=\"https:\/\/www.google.com\/url?hl=en&amp;q=https:\/\/app14743.cloudwayssites.com\/tutorials&amp;source=gmail&amp;ust=1530644008083000&amp;usg=AFQjCNE31pYB9lzvGfhPs84AS8RqUKKD9w\">tutorials<\/a>&nbsp;on the&nbsp;<a href=\"https:\/\/app14743.cloudwayssites.com\/\" target=\"_blank\" rel=\"noopener noreferrer\" data-saferedirecturl=\"https:\/\/www.google.com\/url?hl=en&amp;q=https:\/\/app14743.cloudwayssites.com\/&amp;source=gmail&amp;ust=1530644008083000&amp;usg=AFQjCNEAj4MRVWlitNCpOvniMjuFwvCbug\">Applitools<\/a>&nbsp;website. To get started with Applitools, <a href=\"https:\/\/app14743.cloudwayssites.com\/request-demo\">request a&nbsp;demo<\/a>, or <a href=\"https:\/\/app14743.cloudwayssites.com\/landing\/free-account-qa\">sign up for a free Applitools account<\/a>.<\/p>\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The QA team is the last frontier before your customers get their hands on your latest product version. Assuming your testing team has already completed smoke testing, integration tests, functional&#8230;<\/p>\n","protected":false},"author":21,"featured_media":12890,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[10004],"tags":[12688,12690,10192,12686,10262],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.5 (Yoast SEO v24.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Why Screenshot Image Comparison Tools Fail With Dynamic Visual Content - AI-Powered End-to-End Testing | Applitools<\/title>\n<meta name=\"description\" content=\"Companies visually test their applications using image comparison tools, but not all tools are reliable, often delivering false-positives that only frustrate both frontend developers and testers, and ultimately making you ship software late. So why does image comparison tools fails? And how to ace visual testing?\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Why Screenshot Image Comparison Tools Fail With Dynamic Visual Content\" \/>\n<meta property=\"og:description\" content=\"The QA team is the last frontier before your customers get their hands on your latest product version. Assuming your testing team has already completed\" \/>\n<meta property=\"og:url\" content=\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/\" \/>\n<meta property=\"og:site_name\" content=\"AI-Powered End-to-End Testing | Applitools\" \/>\n<meta property=\"article:published_time\" content=\"2018-07-23T16:21:34+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-01-26T20:16:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/cupcake_fail-w-600.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"600\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Eran Barlev\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Eran Barlev\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/\"},\"author\":{\"name\":\"Eran Barlev\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#\/schema\/person\/0b11db6f3845a6fa50cd394654786b20\"},\"headline\":\"Why Screenshot Image Comparison Tools Fail With Dynamic Visual Content\",\"datePublished\":\"2018-07-23T16:21:34+00:00\",\"dateModified\":\"2023-01-26T20:16:20+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/\"},\"wordCount\":1463,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/cupcake_fail-w-600.jpg\",\"keywords\":[\"Technical Leaders\",\"Test Engineers\",\"Visual AI\",\"Visual Testing Strategies\",\"Visual Testing Tools\"],\"articleSection\":[\"Advanced Topics\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/\",\"url\":\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/\",\"name\":\"Why Screenshot Image Comparison Tools Fail With Dynamic Visual Content - AI-Powered End-to-End Testing | Applitools\",\"isPartOf\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/cupcake_fail-w-600.jpg\",\"datePublished\":\"2018-07-23T16:21:34+00:00\",\"dateModified\":\"2023-01-26T20:16:20+00:00\",\"description\":\"Companies visually test their applications using image comparison tools, but not all tools are reliable, often delivering false-positives that only frustrate both frontend developers and testers, and ultimately making you ship software late. So why does image comparison tools fails? And how to ace visual testing?\",\"breadcrumb\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#primaryimage\",\"url\":\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/cupcake_fail-w-600.jpg\",\"contentUrl\":\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/cupcake_fail-w-600.jpg\",\"width\":600,\"height\":600,\"caption\":\"Epic fail\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/app14743.cloudwayssites.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Advanced Topics\",\"item\":\"https:\/\/app14743.cloudwayssites.com\/blog\/category\/advanced-topics\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Why Screenshot Image Comparison Tools Fail With Dynamic Visual Content\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#website\",\"url\":\"https:\/\/app14743.cloudwayssites.com\/\",\"name\":\"Applitools Visual AI\",\"description\":\"Applitools delivers full end-to-end test automation with AI infused at every step.\",\"publisher\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/app14743.cloudwayssites.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#organization\",\"name\":\"Applitools\",\"url\":\"https:\/\/app14743.cloudwayssites.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/03\/applitools.png\",\"contentUrl\":\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/03\/applitools.png\",\"width\":156,\"height\":28,\"caption\":\"Applitools\"},\"image\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#\/schema\/person\/0b11db6f3845a6fa50cd394654786b20\",\"name\":\"Eran Barlev\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ece13f53ff5ef70d91a5c211664d78ed?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ece13f53ff5ef70d91a5c211664d78ed?s=96&d=mm&r=g\",\"caption\":\"Eran Barlev\"},\"url\":\"https:\/\/app14743.cloudwayssites.com\/blog\/author\/eranbarlev\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Why Screenshot Image Comparison Tools Fail With Dynamic Visual Content - AI-Powered End-to-End Testing | Applitools","description":"Companies visually test their applications using image comparison tools, but not all tools are reliable, often delivering false-positives that only frustrate both frontend developers and testers, and ultimately making you ship software late. So why does image comparison tools fails? And how to ace visual testing?","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:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/","og_locale":"en_US","og_type":"article","og_title":"Why Screenshot Image Comparison Tools Fail With Dynamic Visual Content","og_description":"The QA team is the last frontier before your customers get their hands on your latest product version. Assuming your testing team has already completed","og_url":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/","og_site_name":"AI-Powered End-to-End Testing | Applitools","article_published_time":"2018-07-23T16:21:34+00:00","article_modified_time":"2023-01-26T20:16:20+00:00","og_image":[{"width":600,"height":600,"url":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/cupcake_fail-w-600.jpg","type":"image\/jpeg"}],"author":"Eran Barlev","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Eran Barlev","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#article","isPartOf":{"@id":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/"},"author":{"name":"Eran Barlev","@id":"https:\/\/app14743.cloudwayssites.com\/#\/schema\/person\/0b11db6f3845a6fa50cd394654786b20"},"headline":"Why Screenshot Image Comparison Tools Fail With Dynamic Visual Content","datePublished":"2018-07-23T16:21:34+00:00","dateModified":"2023-01-26T20:16:20+00:00","mainEntityOfPage":{"@id":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/"},"wordCount":1463,"commentCount":0,"publisher":{"@id":"https:\/\/app14743.cloudwayssites.com\/#organization"},"image":{"@id":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#primaryimage"},"thumbnailUrl":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/cupcake_fail-w-600.jpg","keywords":["Technical Leaders","Test Engineers","Visual AI","Visual Testing Strategies","Visual Testing Tools"],"articleSection":["Advanced Topics"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/","url":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/","name":"Why Screenshot Image Comparison Tools Fail With Dynamic Visual Content - AI-Powered End-to-End Testing | Applitools","isPartOf":{"@id":"https:\/\/app14743.cloudwayssites.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#primaryimage"},"image":{"@id":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#primaryimage"},"thumbnailUrl":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/cupcake_fail-w-600.jpg","datePublished":"2018-07-23T16:21:34+00:00","dateModified":"2023-01-26T20:16:20+00:00","description":"Companies visually test their applications using image comparison tools, but not all tools are reliable, often delivering false-positives that only frustrate both frontend developers and testers, and ultimately making you ship software late. So why does image comparison tools fails? And how to ace visual testing?","breadcrumb":{"@id":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#primaryimage","url":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/cupcake_fail-w-600.jpg","contentUrl":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2018\/07\/cupcake_fail-w-600.jpg","width":600,"height":600,"caption":"Epic fail"},{"@type":"BreadcrumbList","@id":"https:\/\/app14743.cloudwayssites.com\/blog\/why-screenshot-image-comparison-tools-fail\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/app14743.cloudwayssites.com\/"},{"@type":"ListItem","position":2,"name":"Advanced Topics","item":"https:\/\/app14743.cloudwayssites.com\/blog\/category\/advanced-topics\/"},{"@type":"ListItem","position":3,"name":"Why Screenshot Image Comparison Tools Fail With Dynamic Visual Content"}]},{"@type":"WebSite","@id":"https:\/\/app14743.cloudwayssites.com\/#website","url":"https:\/\/app14743.cloudwayssites.com\/","name":"Applitools Visual AI","description":"Applitools delivers full end-to-end test automation with AI infused at every step.","publisher":{"@id":"https:\/\/app14743.cloudwayssites.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/app14743.cloudwayssites.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/app14743.cloudwayssites.com\/#organization","name":"Applitools","url":"https:\/\/app14743.cloudwayssites.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/app14743.cloudwayssites.com\/#\/schema\/logo\/image\/","url":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/03\/applitools.png","contentUrl":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/03\/applitools.png","width":156,"height":28,"caption":"Applitools"},"image":{"@id":"https:\/\/app14743.cloudwayssites.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/app14743.cloudwayssites.com\/#\/schema\/person\/0b11db6f3845a6fa50cd394654786b20","name":"Eran Barlev","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/app14743.cloudwayssites.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ece13f53ff5ef70d91a5c211664d78ed?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ece13f53ff5ef70d91a5c211664d78ed?s=96&d=mm&r=g","caption":"Eran Barlev"},"url":"https:\/\/app14743.cloudwayssites.com\/blog\/author\/eranbarlev\/"}]}},"_links":{"self":[{"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/posts\/12878"}],"collection":[{"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/comments?post=12878"}],"version-history":[{"count":0,"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/posts\/12878\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/media\/12890"}],"wp:attachment":[{"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/media?parent=12878"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/categories?post=12878"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/tags?post=12878"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}