{"id":168574,"date":"2019-03-29T07:56:39","date_gmt":"2019-03-29T07:56:39","guid":{"rendered":"https:\/\/webkul.com\/blog\/?p=168574"},"modified":"2019-04-03T05:36:43","modified_gmt":"2019-04-03T05:36:43","slug":"mobile-device-emulation-using-puppeteer","status":"publish","type":"post","link":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/","title":{"rendered":"Mobile Device Emulation Using Puppeteer"},"content":{"rendered":"<p>Puppeteer can make Chrome behave like a mobile device. This can be done with <strong>DeviceDescriptors<\/strong>. We can have a more clear view about DeviceDescriptors from\u00a0<a href=\"https:\/\/github.com\/GoogleChrome\/puppeteer\/blob\/master\/DeviceDescriptors.js\">here.<\/a><\/p>\n<p>We need to choose preferred device name from DeviceDescriptors and include device name in the script.<\/p>\n<p>Below is the script by which we will visit a website and take a screenshot of its view in iPhone X :-<\/p>\n<pre class=\"brush:js\">const puppeteer = require('puppeteer');\r\nconst devices = require('puppeteer\/DeviceDescriptors');\r\nconst iPhonex = devices['iPhone X'];\r\n\r\npuppeteer.launch({headless:false}).then(async browser =&gt; {\r\n  const page = await browser.newPage();\r\n  await page.emulate(iPhonex);\r\n  await page.goto('https:\/\/www.webkul.com');\r\n  await page.screenshot({ path: 'webkul.png'});\r\n  await browser.close();\r\n});\r\n<\/pre>\n<p>So, the screenshot will look like below image :-<\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-168580 size-medium\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1-139x300.png\" alt=\"webkul\" width=\"139\" height=\"300\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1-139x300.png 139w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1-115x249.png 115w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1-768x1663.png 768w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1-473x1024.png 473w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1.png 1125w\" sizes=\"(max-width: 139px) 100vw, 139px\" loading=\"lazy\" \/><\/p>\n<p>That&#8217;s all regarding mobile device emulation using puppeteer.<\/p>\n<p>Happy testing \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Puppeteer can make Chrome behave like a mobile device. This can be done with DeviceDescriptors. We can have a more clear view about DeviceDescriptors from\u00a0here. We need to choose preferred device name from DeviceDescriptors and include device name in the script. Below is the script by which we will visit a website and take a <a href=\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/\">[&#8230;]<\/a><\/p>\n","protected":false},"author":198,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4932],"tags":[8322,8254,8253],"class_list":["post-168574","post","type-post","status-publish","format-standard","hentry","category-web-testing","tag-mobile-testing","tag-puppeteer","tag-user-interface-testing"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Mobile Device Emulation Using Puppeteer - Webkul 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:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mobile Device Emulation Using Puppeteer - Webkul Blog\" \/>\n<meta property=\"og:description\" content=\"Puppeteer can make Chrome behave like a mobile device. This can be done with DeviceDescriptors. We can have a more clear view about DeviceDescriptors from\u00a0here. We need to choose preferred device name from DeviceDescriptors and include device name in the script. Below is the script by which we will visit a website and take a [...]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/\" \/>\n<meta property=\"og:site_name\" content=\"Webkul Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/webkul\/\" \/>\n<meta property=\"article:published_time\" content=\"2019-03-29T07:56:39+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-04-03T05:36:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1-139x300.png\" \/>\n<meta name=\"author\" content=\"Garima Pathak\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@webkul\" \/>\n<meta name=\"twitter:site\" content=\"@webkul\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Garima Pathak\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/\"},\"author\":{\"name\":\"Garima Pathak\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/e4e1f4ece892a640bd9b41f32c9b53ca\"},\"headline\":\"Mobile Device Emulation Using Puppeteer\",\"datePublished\":\"2019-03-29T07:56:39+00:00\",\"dateModified\":\"2019-04-03T05:36:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/\"},\"wordCount\":88,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/webkul.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1-139x300.png\",\"keywords\":[\"mobile testing\",\"puppeteer\",\"User interface testing\"],\"articleSection\":[\"Web testing\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/\",\"url\":\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/\",\"name\":\"Mobile Device Emulation Using Puppeteer - Webkul Blog\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1-139x300.png\",\"datePublished\":\"2019-03-29T07:56:39+00:00\",\"dateModified\":\"2019-04-03T05:36:43+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#primaryimage\",\"url\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1.png\",\"contentUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1.png\",\"width\":1125,\"height\":2436,\"caption\":\"webkul\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/webkul.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mobile Device Emulation Using Puppeteer\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/webkul.com\/blog\/#website\",\"url\":\"https:\/\/webkul.com\/blog\/\",\"name\":\"Webkul Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/webkul.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/webkul.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/webkul.com\/blog\/#organization\",\"name\":\"WebKul Software Private Limited\",\"url\":\"https:\/\/webkul.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png\",\"contentUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png\",\"width\":380,\"height\":380,\"caption\":\"WebKul Software Private Limited\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/webkul\/\",\"https:\/\/x.com\/webkul\",\"https:\/\/www.instagram.com\/webkul\/\",\"https:\/\/www.linkedin.com\/company\/webkul\",\"https:\/\/www.youtube.com\/user\/webkul\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/e4e1f4ece892a640bd9b41f32c9b53ca\",\"name\":\"Garima Pathak\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e00de499182e68e890e1ffef88e476c2b6f56649684c0871e79d867d43b84b68?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Feva.png&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e00de499182e68e890e1ffef88e476c2b6f56649684c0871e79d867d43b84b68?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Feva.png&r=g\",\"caption\":\"Garima Pathak\"},\"url\":\"https:\/\/webkul.com\/blog\/author\/garimapathak-tester19\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Mobile Device Emulation Using Puppeteer - Webkul 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:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/","og_locale":"en_US","og_type":"article","og_title":"Mobile Device Emulation Using Puppeteer - Webkul Blog","og_description":"Puppeteer can make Chrome behave like a mobile device. This can be done with DeviceDescriptors. We can have a more clear view about DeviceDescriptors from\u00a0here. We need to choose preferred device name from DeviceDescriptors and include device name in the script. Below is the script by which we will visit a website and take a [...]","og_url":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/","og_site_name":"Webkul Blog","article_publisher":"https:\/\/www.facebook.com\/webkul\/","article_published_time":"2019-03-29T07:56:39+00:00","article_modified_time":"2019-04-03T05:36:43+00:00","og_image":[{"url":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1-139x300.png","type":"","width":"","height":""}],"author":"Garima Pathak","twitter_card":"summary_large_image","twitter_creator":"@webkul","twitter_site":"@webkul","twitter_misc":{"Written by":"Garima Pathak","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#article","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/"},"author":{"name":"Garima Pathak","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/e4e1f4ece892a640bd9b41f32c9b53ca"},"headline":"Mobile Device Emulation Using Puppeteer","datePublished":"2019-03-29T07:56:39+00:00","dateModified":"2019-04-03T05:36:43+00:00","mainEntityOfPage":{"@id":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/"},"wordCount":88,"commentCount":0,"publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"image":{"@id":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#primaryimage"},"thumbnailUrl":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1-139x300.png","keywords":["mobile testing","puppeteer","User interface testing"],"articleSection":["Web testing"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/","url":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/","name":"Mobile Device Emulation Using Puppeteer - Webkul Blog","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#primaryimage"},"image":{"@id":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#primaryimage"},"thumbnailUrl":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1-139x300.png","datePublished":"2019-03-29T07:56:39+00:00","dateModified":"2019-04-03T05:36:43+00:00","breadcrumb":{"@id":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#primaryimage","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1.png","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2019\/03\/webkul-1.png","width":1125,"height":2436,"caption":"webkul"},{"@type":"BreadcrumbList","@id":"https:\/\/webkul.com\/blog\/mobile-device-emulation-using-puppeteer\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/webkul.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Mobile Device Emulation Using Puppeteer"}]},{"@type":"WebSite","@id":"https:\/\/webkul.com\/blog\/#website","url":"https:\/\/webkul.com\/blog\/","name":"Webkul Blog","description":"","publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/webkul.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/webkul.com\/blog\/#organization","name":"WebKul Software Private Limited","url":"https:\/\/webkul.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png","width":380,"height":380,"caption":"WebKul Software Private Limited"},"image":{"@id":"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/webkul\/","https:\/\/x.com\/webkul","https:\/\/www.instagram.com\/webkul\/","https:\/\/www.linkedin.com\/company\/webkul","https:\/\/www.youtube.com\/user\/webkul\/"]},{"@type":"Person","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/e4e1f4ece892a640bd9b41f32c9b53ca","name":"Garima Pathak","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e00de499182e68e890e1ffef88e476c2b6f56649684c0871e79d867d43b84b68?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Feva.png&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e00de499182e68e890e1ffef88e476c2b6f56649684c0871e79d867d43b84b68?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Feva.png&r=g","caption":"Garima Pathak"},"url":"https:\/\/webkul.com\/blog\/author\/garimapathak-tester19\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/168574","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/users\/198"}],"replies":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/comments?post=168574"}],"version-history":[{"count":8,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/168574\/revisions"}],"predecessor-version":[{"id":169014,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/168574\/revisions\/169014"}],"wp:attachment":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/media?parent=168574"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/categories?post=168574"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/tags?post=168574"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}