CINXE.COM
Mobile App Testing: Definition, Why it is Important, How to do it | BrowserStack
<!doctype html><html lang="en-US" class="no-js"><head> <meta charset="UTF-8"> <title>Mobile App Testing: Definition, Why it is Important, How to do it | BrowserStack</title> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <link rel="preload" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/source-sans-pro-v21-latin-900.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/source-sans-pro-v21-latin-700.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/source-sans-pro-v21-latin-600.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/source-sans-pro-v21-latin-regular.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/source-sans-pro-v21-latin-300.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-800.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-700.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-600.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-500.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-regular.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/sans-serif-4/source-serif-4-v8-latin-regular.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" as="image" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/bstack-logo-global.svg"> <link rel="apple-touch-icon" sizes="160x160" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/favicons/apple-touch-icon.png"> <link rel="apple-touch-icon-precomposed" sizes="160x160" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/favicons/apple-touch-icon-precomposed.png"> <link rel="shortcut icon" href="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/favicons/favicon.ico"> <meta name="msapplication-TileColor" content="#da532c"> <meta name="theme-color" content="#ffffff"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="google-site-verification" content="0x5RL_wr7QYQniT_gnQwJKSvJuB5euCdOF5k-E0-w84"/> <meta name="ahrefs-site-verification" content="b22d77df50eb3929fe4bba293aebbc098a9e348ebe7751fe020bb9878c198172"> <meta name="facebook-domain-verification" content="joy2k7rhws0m7eufhx1fdmv9bowjbh"/> <style id="bstack-fcp-header-inline-css" type="text/css">@font-face{font-display:swap;font-family:'Source Serif 4';font-style:normal;font-weight:400;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/sans-serif-4/source-serif-4-v8-latin-regular.woff2") format("woff2")}@font-face{font-display:swap;font-family:'source-sans-pro';font-style:normal;font-weight:300;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/source-sans-pro-v21-latin-300.woff2") format("woff2")}@font-face{font-display:swap;font-family:'source-sans-pro';font-style:normal;font-weight:400;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/source-sans-pro-v21-latin-regular.woff2") format("woff2")}@font-face{font-display:swap;font-family:'source-sans-pro';font-style:normal;font-weight:600;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/source-sans-pro-v21-latin-600.woff2") format("woff2")}@font-face{font-display:swap;font-family:'source-sans-pro';font-style:normal;font-weight:700;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/source-sans-pro-v21-latin-700.woff2") format("woff2")}@font-face{font-display:swap;font-family:'source-sans-pro';font-style:normal;font-weight:900;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/source-sans-pro-v21-latin-900.woff2") format("woff2")}@font-face{font-display:swap;font-family:"Inter";font-style:normal;font-weight:400;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-regular.woff2") format("woff2")}@font-face{font-display:swap;font-family:"Inter";font-style:normal;font-weight:500;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-500.woff2") format("woff2")}@font-face{font-display:swap;font-family:"Inter";font-style:normal;font-weight:600;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-600.woff2") format("woff2")}@font-face{font-display:swap;font-family:"Inter";font-style:normal;font-weight:700;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-700.woff2") format("woff2")}@font-face{font-display:swap;font-family:"Inter";font-style:normal;font-weight:800;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-800.woff2") format("woff2")}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden],template{display:none}html{background:#fff;color:#000;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}html,button,input,select,textarea{font-family:sans-serif}body{margin:0}a{background:transparent}a:hover,a:active{outline:0}h1{font-size:60px;margin:.67em 0}h2{font-size:45px;margin:.83em 0}h3{font-size:28px;margin:1em 0}h4{font-size:1em;margin:1.33em 0}h5{font-size:.83em;margin:1.67em 0}h6{font-size:.75em;margin:2.33em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}mark{background:#ff0;color:#000}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:"\201C" "\201D" "\2018" "\2019"}q:before,q:after{content:'';content:none}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0;white-space:normal}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0;vertical-align:baseline}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}input[type="search"]{-webkit-appearance:textfield;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}.loader-icon{position:relative;background:transparent}.loader-icon:before{content:"";position:absolute;top:0;left:0;width:100%;min-height:100%;background:#004b8f}.loader-icon::after{content:'';position:absolute;top:50%;left:50%;margin-top:-12px;margin-left:-12px;width:24px;height:24px;border-radius:50%;border:4px solid #fff;border-top-color:transparent;animation:loader-loading 2s linear infinite}@keyframes loader-loading{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}html,body{height:100%}body{color:#333;background-color:white;line-height:21px}body.features{font-family:"Inter",helvetica}ul{list-style-type:none}a{text-decoration:none;color:#0070f0}a:active,a:hover,a:visited{outline:0}a:hover{color:#004b8f}main a{text-decoration:underline}main a:hover{text-decoration:underline}strong{font-weight:600}input[type=checkbox]:focus{outline:0}input::-ms-clear,input::-ms-reveal{display:none}textarea{resize:none}.hide{display:none}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.container{max-width:100%;margin:0 auto}@media screen and (min-width:640px){.container{width:100%}}@media screen and (min-width:768px){.container{width:100%}}@media screen and (min-width:980px){.container{width:940px}}@media screen and (min-width:1280px){.container{width:1200px}}.row:after{content:"";clear:both;display:table}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-13,.col-lg-14,.col-lg-15,.col-lg-16,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-13,.col-xl-14,.col-xl-15,.col-xl-16{float:left;padding-left:12px;padding-right:12px}.col-center{margin:0 auto;float:none}.no-pad{padding-left:0;padding-right:0}.no-pad-left{padding-left:0}.no-pad-right{padding-right:0}.pull-right{float:right}.pull-left{float:left}.col-xs-1{width:8.33333%}.col-xs-offset-1{margin-left:8.33333%}.col-xs-2{width:16.66667%}.col-xs-offset-2{margin-left:16.66667%}.col-xs-3{width:25%}.col-xs-offset-3{margin-left:25%}.col-xs-4{width:33.33333%}.col-xs-offset-4{margin-left:33.33333%}.col-xs-5{width:41.66667%}.col-xs-offset-5{margin-left:41.66667%}.col-xs-6{width:50%}.col-xs-offset-6{margin-left:50%}.col-xs-7{width:58.33333%}.col-xs-offset-7{margin-left:58.33333%}.col-xs-8{width:66.66667%}.col-xs-offset-8{margin-left:66.66667%}.col-xs-9{width:75%}.col-xs-offset-9{margin-left:75%}.col-xs-10{width:83.33333%}.col-xs-offset-10{margin-left:83.33333%}.col-xs-11{width:91.66667%}.col-xs-offset-11{margin-left:91.66667%}.col-xs-12{width:100%}.col-xs-offset-12{margin-left:100%}@media screen and (min-width:640px){.col-sm-1{width:8.33333%}.col-sm-offset-1{margin-left:8.33333%}.col-sm-2{width:16.66667%}.col-sm-offset-2{margin-left:16.66667%}.col-sm-3{width:25%}.col-sm-offset-3{margin-left:25%}.col-sm-4{width:33.33333%}.col-sm-offset-4{margin-left:33.33333%}.col-sm-5{width:41.66667%}.col-sm-offset-5{margin-left:41.66667%}.col-sm-6{width:50%}.col-sm-offset-6{margin-left:50%}.col-sm-7{width:58.33333%}.col-sm-offset-7{margin-left:58.33333%}.col-sm-8{width:66.66667%}.col-sm-offset-8{margin-left:66.66667%}.col-sm-9{width:75%}.col-sm-offset-9{margin-left:75%}.col-sm-10{width:83.33333%}.col-sm-offset-10{margin-left:83.33333%}.col-sm-11{width:91.66667%}.col-sm-offset-11{margin-left:91.66667%}.col-sm-12{width:100%}.col-sm-offset-12{margin-left:100%}}@media screen and (min-width:979.1px){.col-md-1{width:75px}.col-md-offset-1{margin-left:75px}.col-md-2{width:150px}.col-md-offset-2{margin-left:150px}.col-md-3{width:225px}.col-md-offset-3{margin-left:225px}.col-md-4{width:300px}.col-md-offset-4{margin-left:300px}.col-md-5{width:375px}.col-md-offset-5{margin-left:375px}.col-md-6{width:450px}.col-md-offset-6{margin-left:450px}.col-md-7{width:525px}.col-md-offset-7{margin-left:525px}.col-md-8{width:600px}.col-md-offset-8{margin-left:600px}.col-md-9{width:675px}.col-md-offset-9{margin-left:675px}.col-md-10{width:750px}.col-md-offset-10{margin-left:750px}.col-md-11{width:825px}.col-md-offset-11{margin-left:825px}.col-md-12{width:900px}.col-md-offset-12{margin-left:900px}}@media screen and (min-width:1300px){.col-lg-1{width:75px}.col-lg-offset-1{margin-left:75px}.col-lg-2{width:150px}.col-lg-offset-2{margin-left:150px}.col-lg-3{width:225px}.col-lg-offset-3{margin-left:225px}.col-lg-4{width:300px}.col-lg-offset-4{margin-left:300px}.col-lg-5{width:375px}.col-lg-offset-5{margin-left:375px}.col-lg-6{width:450px}.col-lg-offset-6{margin-left:450px}.col-lg-7{width:525px}.col-lg-offset-7{margin-left:525px}.col-lg-8{width:600px}.col-lg-offset-8{margin-left:600px}.col-lg-9{width:675px}.col-lg-offset-9{margin-left:675px}.col-lg-10{width:750px}.col-lg-offset-10{margin-left:750px}.col-lg-11{width:825px}.col-lg-offset-11{margin-left:825px}.col-lg-12{width:900px}.col-lg-offset-12{margin-left:900px}.col-lg-13{width:975px}.col-lg-offset-13{margin-left:975px}.col-lg-14{width:1050px}.col-lg-offset-14{margin-left:1050px}.col-lg-15{width:1125px}.col-lg-offset-15{margin-left:1125px}.col-lg-16{width:1200px}.col-lg-offset-16{margin-left:1200px}}@media screen and (min-width:1600px){.col-xl-1{width:75px}.col-xl-offset-1{margin-left:75px}.col-xxl-1{width:94px}.col-xxl-offset-1{margin-left:94px}.col-xl-2{width:150px}.col-xl-offset-2{margin-left:150px}.col-xxl-2{width:188px}.col-xxl-offset-2{margin-left:188px}.col-xl-3{width:225px}.col-xl-offset-3{margin-left:225px}.col-xxl-3{width:282px}.col-xxl-offset-3{margin-left:282px}.col-xl-4{width:300px}.col-xl-offset-4{margin-left:300px}.col-xxl-4{width:376px}.col-xxl-offset-4{margin-left:376px}.col-xl-5{width:375px}.col-xl-offset-5{margin-left:375px}.col-xxl-5{width:470px}.col-xxl-offset-5{margin-left:470px}.col-xl-6{width:450px}.col-xl-offset-6{margin-left:450px}.col-xxl-6{width:564px}.col-xxl-offset-6{margin-left:564px}.col-xl-7{width:525px}.col-xl-offset-7{margin-left:525px}.col-xxl-7{width:658px}.col-xxl-offset-7{margin-left:658px}.col-xl-8{width:600px}.col-xl-offset-8{margin-left:600px}.col-xxl-8{width:752px}.col-xxl-offset-8{margin-left:752px}.col-xl-9{width:675px}.col-xl-offset-9{margin-left:675px}.col-xxl-9{width:846px}.col-xxl-offset-9{margin-left:846px}.col-xl-10{width:750px}.col-xl-offset-10{margin-left:750px}.col-xxl-10{width:940px}.col-xxl-offset-10{margin-left:940px}.col-xl-11{width:825px}.col-xl-offset-11{margin-left:825px}.col-xxl-11{width:1034px}.col-xxl-offset-11{margin-left:1034px}.col-xl-12{width:900px}.col-xl-offset-12{margin-left:900px}.col-xxl-12{width:1128px}.col-xxl-offset-12{margin-left:1128px}.col-xl-13{width:975px}.col-xl-offset-13{margin-left:975px}.col-xxl-13{width:1222px}.col-xxl-offset-13{margin-left:1222px}.col-xl-14{width:1050px}.col-xl-offset-14{margin-left:1050px}.col-xxl-14{width:1316px}.col-xxl-offset-14{margin-left:1316px}.col-xl-15{width:1125px}.col-xl-offset-15{margin-left:1125px}.col-xxl-15{width:1410px}.col-xxl-offset-15{margin-left:1410px}.col-xl-16{width:1200px}.col-xl-offset-16{margin-left:1200px}.col-xxl-16{width:1504px}.col-xxl-offset-16{margin-left:1504px}}.no-pad{padding-left:0;padding-right:0}.no-pad-right{padding-right:0}.no-pad-left{padding-left:0}.bs-xl-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;width:8.33333%}.bs-xl-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;width:16.66667%}.bs-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;width:25%}.bs-xl-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;width:33.33333%}.bs-xl-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;width:41.66667%}.bs-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;width:50%}.bs-xl-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;width:58.33333%}.bs-xl-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;width:66.66667%}.bs-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;width:75%}.bs-xl-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;width:83.33333%}.bs-xl-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;width:91.66667%}.bs-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;width:100%}@media screen and (max-width:1279px){.bs-lg-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;width:8.33333%}.bs-lg-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;width:16.66667%}.bs-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;width:25%}.bs-lg-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;width:33.33333%}.bs-lg-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;width:41.66667%}.bs-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;width:50%}.bs-lg-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;width:58.33333%}.bs-lg-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;width:66.66667%}.bs-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;width:75%}.bs-lg-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;width:83.33333%}.bs-lg-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;width:91.66667%}.bs-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;width:100%}}@media screen and (max-width:979.1px){.bs-md-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;width:8.33333%}.bs-md-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;width:16.66667%}.bs-md-3{-ms-flex:0 0 25%;flex:0 0 25%;width:25%}.bs-md-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;width:33.33333%}.bs-md-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;width:41.66667%}.bs-md-6{-ms-flex:0 0 50%;flex:0 0 50%;width:50%}.bs-md-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;width:58.33333%}.bs-md-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;width:66.66667%}.bs-md-9{-ms-flex:0 0 75%;flex:0 0 75%;width:75%}.bs-md-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;width:83.33333%}.bs-md-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;width:91.66667%}.bs-md-12{-ms-flex:0 0 100%;flex:0 0 100%;width:100%}}@media screen and (max-width:640px){.bs-xs-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;width:8.33333%}.bs-xs-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;width:16.66667%}.bs-xs-3{-ms-flex:0 0 25%;flex:0 0 25%;width:25%}.bs-xs-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;width:33.33333%}.bs-xs-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;width:41.66667%}.bs-xs-6{-ms-flex:0 0 50%;flex:0 0 50%;width:50%}.bs-xs-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;width:58.33333%}.bs-xs-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;width:66.66667%}.bs-xs-9{-ms-flex:0 0 75%;flex:0 0 75%;width:75%}.bs-xs-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;width:83.33333%}.bs-xs-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;width:91.66667%}.bs-xs-12{-ms-flex:0 0 100%;flex:0 0 100%;width:100%}.hide-bs-xs{display:none !important}}.hide{display:none}@media screen and (max-width:639px){.hide-xs{display:none !important}}@media screen and (min-width:640px) and (max-width:979px){.hide-sm{display:none !important}}@media screen and (min-width:979.1px) and (max-width:1299px){.hide-md{display:none !important}}@media screen and (min-width:1300px) and (max-width:1599px){.hide-lg{display:none !important}}@media screen and (min-width:1600px){.hide-xl{display:none !important}}@media screen and (min-width:641px) and (max-width:1279px){.hide-bs-md{display:none !important}}@media screen and (min-width:1280px){.hide-bs-xl{display:none !important}}div[class^="vc_custom_"],div[class*=" vc_custom_"]{background-size:cover !important}.btn-primary,.btn-secondary,.btn-transparent,.btn-secondary-white,.btn-tertiary,.btn-secondary-gray,.btn-events-page{border-radius:4px;border:1px solid transparent;display:inline-block;padding:15px 20px;text-decoration:none !important}.btn-primary{background-color:#0070f0;color:white;text-align:center;line-height:24px;font-size:16px;font-weight:600;font-family:"Inter",helvetica}.btn-primary:hover{background-color:#004b8f;color:white;text-decoration:none !important}.btn-primary:focus{background-color:#00335d;color:white;text-decoration:none !important}.btn-primary.disabled,.btn-primary[disabled]{cursor:default;background-color:#eee;color:#787878}.btn-secondary{background-color:transparent;color:#0070f0;text-align:center;line-height:24px;font-size:16px;font-weight:600;font-family:"Inter",helvetica;border-color:#0070f0}.btn-secondary:hover{border-color:#004b8f;background-color:#004b8f;color:white;text-decoration:none !important}.btn-secondary:focus{border-color:#00335d;background-color:#00335d;color:white;text-decoration:none !important}.btn-secondary.disabled,.btn-secondary[disabled]{border-color:#42a9ff;color:#42a9ff;cursor:default}.btn-transparent{background-color:transparent;color:#999;text-align:center;line-height:24px;font-size:16px;font-weight:600;font-family:"Inter",helvetica}.btn-transparent:hover{color:#333;text-decoration:none !important}.btn-secondary-white{background-color:transparent;color:white;text-align:center;line-height:24px;font-size:16px;font-weight:600;font-family:"Inter",helvetica;border-color:white}.btn-secondary-white:hover{border-color:white;border-color:rgba(255,255,255,0.6);color:white;color:rgba(255,255,255,0.6);background-color:white;color:#0070f0;text-decoration:none !important}.btn-tertiary{background-color:transparent;color:white;text-align:center;line-height:24px;font-size:16px;font-weight:600;font-family:"Inter",helvetica;border-color:white}.btn-tertiary:hover{background-color:white;color:#004b8f;text-decoration:none !important}.btn-secondary-gray{background-color:transparent;color:#999;text-align:center;line-height:24px;font-size:16px;font-weight:600;font-family:"Inter",helvetica;border-color:#999}.btn-secondary-gray:hover{border-color:#333;color:#333;text-decoration:none !important}.btn-webinar-lp{background-image:linear-gradient(to left,#7e73ff,#3425de,#7e73ff);border-radius:3px;border:0;line-height:21px;font-size:16px;font-weight:600;transition:background-position .6s;background-size:200%;letter-spacing:.5px;font-family:"Inter",helvetica;color:white;text-align:center;text-decoration:none}.btn-webinar-lp:hover{background-position:right;text-decoration:none;color:white}.btn-webinar-lp.disabled,.btn-webinar-lp[disabled]{cursor:default}.btn-events-page{background-color:#140800;color:white;text-align:center;line-height:21px;font-size:16px;font-weight:400;font-family:"Inter",helvetica;border-color:#140800;letter-spacing:.5px;transition:.3s;border-width:2px;border-style:solid;font-weight:600;text-decoration:none !important}.btn-events-page:hover{background-color:transparent;color:#140800}.btn-events-page.disabled,.btn-events-page[disabled]{cursor:default}.btn-lg{width:240px}.btn-auto{width:auto}.btn-round{border-radius:50%}.btn-badge{font-size:12px;line-height:16px;padding:1px 4px}@media screen and (max-width:979px){.btn-primary,.btn-secondary{padding:11px 20px}}@media screen and (max-width:640px){.btn-primary,.btn-secondary{padding:7px 16px}}.vertical-list{margin:0;padding:0}.horizontal-list{margin:0;padding:0}.horizontal-list>li{display:inline-block}body{font:normal normal 300 16px/24px "Inter",helvetica}h1,h2,h3,h4,h5,h6{color:#333;font:normal normal 300 60px/63px "Inter",helvetica;margin:0}h1{font-size:48px;line-height:58px;font-weight:800}h2{font-size:36px;line-height:44px;font-weight:700}h3{font-size:32px;line-height:44px}h4{font-size:24px;line-height:28px}h5{font-size:20px;line-height:24px}h6{font-size:16px;line-height:24px}h4{font-weight:700}h3,h5,h6{font-weight:600}.seo-header{font-size:45px;line-height:49px;font-weight:400}.text-center{text-align:center}.text-right{text-align:right}.invert{color:black}.invert h1,.invert h2,.invert h3,.invert h4,.invert h5,.invert h6,.invert p{color:white}@media screen and (max-width:979px){h1{font-size:44px;line-height:48px;font-weight:700}h2{font-size:32px;line-height:40px}h3{font-size:28px;line-height:40px}h4{font-size:22px;line-height:30px;font-weight:600}h5{font-size:18px;line-height:24px}h6{font-size:16px;line-height:24px}}@media screen and (max-width:640px){h1{font-size:32px;line-height:38px;font-weight:700}h2{font-size:28px;line-height:32px}h3{font-size:24px;line-height:32px}h4{font-size:20px;line-height:28px}h5{font-size:18px;line-height:24px}h6{font-size:16px;line-height:24px}}.homepage-core-web-vital-poc .cookie-notification{display:none}.cookie-notification{box-shadow:4px 4px 12px rgba(0,0,0,0.2);position:fixed;bottom:0;padding:5px 20px;font-size:14px;background-color:#333;color:white;width:100%;z-index:111}.cookie-notification a{color:inherit;text-decoration:underline;display:inline-block}.cookie-notification a:hover{color:#009cfc}.cookie-notification__elements{vertical-align:middle;display:inline-block}.cookie-notification__text{position:relative;min-height:64px;font-size:14px}.cookie-notification__text-div{margin:0;position:absolute;top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%)}.cookie-notification__actions{padding-top:12px;padding-bottom:12px;text-align:right}.cookie-notification__got-it-cta{margin-right:15px;padding:8px 16px}.cookie-notification__reject-cta{margin-right:40px;padding:8px 16px}.cookie-notification__close{cursor:pointer;background:transparent;border:0}@media screen and (max-width:979px){.cookie-notification__elements{width:calc(100% - 300px)}.cookie-notification__actions{width:300px}}@media screen and (max-width:639px){.cookie-notification{padding-left:10px;padding-right:10px;padding-top:12px}.cookie-notification__elements{width:100%}.accept-cookie-notification{padding-top:0;padding-right:0;padding-bottom:10px}}@media screen and (max-width:980px) and (min-width:640px){.cookie-notification{padding:15px 20px}.cookie-notification__got-it-cta{margin-right:8px}.cookie-notification__actions{padding-top:12px}}.contact-pill,.bs-modal,.docs--container,#docs--language-modal{display:none}body{margin:0;background:white;font-family:"Inter",helvetica;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.secondary-nav{position:absolute;top:63px;font-family:"Inter",helvetica}.promo-notification{font-family:"source-sans-pro",helvetica;padding:11px 20px 10px;font-size:16px;line-height:21px}.promo-notification__actions{display:none}.promo-notification p{margin:0;font-family:"source-sans-pro",helvetica}a.skip-link{position:absolute;top:-100px;left:4px;background-color:white;color:#0070f0;margin:1px;padding:8px 20px;z-index:10000;height:auto;width:auto;font-size:16px;line-height:24px;font-weight:400;font-family:"Inter",helvetica;border-radius:3px}a.skip-link:focus{top:9px}.header-habitat{font-family:"Inter",helvetica;position:relative;width:100%;top:0;left:0;background-color:#142433;color:#333;font-weight:300;z-index:99;height:63px;transition:top .4s}.header-habitat .logo{padding-top:15px;display:block;float:left;margin-right:10px;padding-bottom:10px}.header-habitat .container.top-bar-menu-container{position:relative;max-width:100%;margin:0 auto}.header-habitat .container.top-bar-menu-container .col-xs-12:first-child{padding-left:10px;padding-right:10px}.header-habitat .secondary-nav .product-name{font-family:"Inter",helvetica !important;font-size:26px}.header-habitat .secondary-nav .product-menu li a{font-family:"Inter",helvetica !important}.header-habitat--swipe-top{top:-63px}@media screen and (min-width:640px){.container{width:100%}}@media screen and (min-width:768px){.container{width:100%}}@media screen and (min-width:979.1px){.container{width:940px}.persistent-header:not(.header-with-promo-bar){padding-top:63px}.persistent-header:not(.header-with-promo-bar) .header-habitat{position:fixed}}.page-template-instapage.summer-of-learning #header-habitat.events-header{display:none}@media screen and (min-width:979px){.page-template-instapage.summer-of-learning.persistent-header{padding-top:0}}@media screen and (min-width:1440px){.header-habitat .container{width:1440px;padding-left:10px}}@media screen and (min-width:1280px){.container{width:1200px}}.btn-badge{font-size:12px;line-height:16px;font-weight:600;padding:1px 4px;border-radius:4px}.footer-habitat,.page-wrapper-on-load{visibility:hidden;overflow:hidden}.wrapper{overflow:hidden}.vwo-hide{display:none !important}.cookie-notification-hide .cookie-notification{display:none}#consent-banner{position:fixed;bottom:0;z-index:111;display:block}.flex-row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.flex-vcenter{-ms-flex-align:center;align-items:center}.pr-40{padding-right:40px}.img-responsive{vertical-align:middle}.custom-header-col{padding-left:10px;padding-right:10px}@media screen and (max-width:979px){.custom-header-col{padding-left:15px;padding-right:20px}}.custom-img-box{text-align:center;margin:48px auto 0}.custom-img-box img,.custom-img-box video{vertical-align:middle}@media screen and (max-width:1279px){.custom-img-box img,.custom-img-box video{max-width:100% !important;height:auto !important}}@media screen and (max-width:979px){.custom-img-box img,.custom-img-box video{max-width:100% !important;height:auto !important}}@media screen and (max-width:640px){.custom-img-box{margin:40px auto 0}}.brands{padding-top:40px;padding-bottom:40px}.brands__pb0{padding-bottom:0}.vc_row .brand-logos{margin-top:32px}.header-habitat .bs-collapse-toggle{display:none}@media screen and (max-width:979px){.header-habitat .bs-collapse-toggle{display:block}}.header-habitat .account-down-caret{display:inline-block;width:11px;height:11px;position:relative;top:4px;right:-1px;background-position:-14px -215px}@media screen and (max-width:979px){.header-habitat .account-down-caret{background:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/sprites/general_icons.png") no-repeat}}@media(-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.header-habitat .account-down-caret{background-size:365px 245px}}@media screen and (-webkit-min-device-pixel-ratio:2) and (max-width:979px),screen and (min-resolution:192dpi) and (max-width:979px){.header-habitat .account-down-caret{background-image:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/sprites/general_icons@2x.png")}}.header-habitat .dropdown-toggle{background:transparent;border:0;color:#fff;font-family:"source-sans-pro",helvetica;font-size:16px;line-height:21px;border-radius:0;padding:22px 20px 20px 19px}@media screen and (min-width:1095px){.header-habitat .dropdown-toggle{padding:22px 28px 20px}}.header-habitat .dropdown-toggle:hover{color:#42a9ff}.header-habitat .primary-menu-container{position:absolute;z-index:3;right:0;padding-right:20px}.header-habitat .primary-menu-container .primary-menu a{color:#fff;display:inline-block}.header-habitat .primary-menu-container .primary-menu .free-trial-link{margin-left:23px}.header-habitat .primary-menu-container .primary-menu .free-trial-link a{padding:5px 15px;text-transform:uppercase}.header-habitat .primary-menu-container .primary-menu .btn-badge{line-height:18px;margin-right:10px;color:white;margin-top:-5px;vertical-align:middle;background:#009cfc}.header-habitat .primary-menu-container .primary-menu li{font-family:"source-sans-pro",helvetica}.header-habitat .primary-menu,.header-habitat .product-menu{font-weight:400}.header-habitat .primary-menu li.active a,.header-habitat .primary-menu li:hover a,.header-habitat .product-menu li.active a,.header-habitat .product-menu li:hover a{color:#42a9ff}.header-habitat .primary-menu li.active .integ-link a,.header-habitat .primary-menu li:hover .integ-link a,.header-habitat .product-menu li.active .integ-link a,.header-habitat .product-menu li:hover .integ-link a{color:#333}.header-habitat .primary-menu li.active li a,.header-habitat .primary-menu li:hover li a,.header-habitat .product-menu li.active li a,.header-habitat .product-menu li:hover li a{color:#333}.header-habitat .primary-menu li li a.sign_out_link,.header-habitat .product-menu li li a.sign_out_link{color:#de1421}.header-habitat .primary-menu li>a,.header-habitat .product-menu li>a{font-family:"source-sans-pro",helvetica;font-weight:400}.header-habitat .primary-menu li>a:hover .caret:after,.header-habitat .product-menu li>a:hover .caret:after{background-position:-250px -88px}.header-habitat .primary-menu>li,.header-habitat .product-menu>li{position:relative}.header-habitat .primary-menu>li>a,.header-habitat .product-menu>li>a{padding:21px 10px;font-size:16px}.header-habitat .primary-menu>li>a.doc-menu-toggle,.header-habitat .product-menu>li>a.doc-menu-toggle{padding-bottom:16px}@media screen and (max-width:1440px){.header-habitat .container{width:100%;padding-left:10px}}.header-habitat--hidden{display:none}@media screen and (min-width:979px){.persistent-header .free-trial-link>.persistent-header-primary{background-color:#0070f0;border-color:#143452;transition:all 250ms ease 0s}}@media screen and (max-width:979px){.persistent-header.persistent-top .header-habitat{position:fixed}.persistent-header.persistent-up .header-habitat{position:fixed;transition:top .4s}.persistent-header.persistent-down .header-habitat{position:fixed;transition:top .4s}.header-habitat .container{padding-left:0}.header-habitat .bs-collapse{display:none}.header-habitat .bs-collapse.active{display:block}.header-habitat .bs-collapse-toggle{position:relative;z-index:3;padding:23px 0 22px;background:transparent;border:0;min-width:24px}.header-habitat .bs-collapse-toggle svg{display:none}.header-habitat .bs-collapse-toggle svg:first-child{display:block}.header-habitat .bs-collapse-toggle:hover{color:white}.header-habitat .bs-collapse-toggle.active svg{display:block;margin:0 auto}.header-habitat .bs-collapse-toggle.active svg:first-child{display:none}.header-habitat .primary-menu-container{padding:0;width:100%;left:0;top:63px;background-color:#142433}.header-habitat .primary-menu-container li{display:block;padding-left:21px}.header-habitat .primary-menu-container li>a{padding-top:16px;padding-bottom:12px;padding-left:0;display:block;width:100%}.header-habitat .primary-menu-container .primary-menu{float:none}.header-habitat .primary-menu-container .primary-menu.active{min-height:calc(100vh - 63px)}.header-habitat .primary-menu-container .primary-menu li{border-bottom:1px solid;border-bottom-color:rgba(255,255,255,0.1)}.header-habitat .primary-menu-container .primary-menu li.free-trial-link{margin-left:0}.header-habitat .primary-menu-container .primary-menu li.free-trial-link a{padding:15px 6px 14px 0}.header-habitat .primary-menu-container .primary-menu li.free-trial-link a.btn-secondary-white.btn-md{text-align:left;border:0}.header-habitat .primary-menu-container .primary-menu li.free-trial-link a.btn-secondary-white.btn-md:hover{color:#009cfc;background-color:transparent}.header-habitat .primary-menu-container .section-head{border-bottom:1px solid;border-bottom-color:rgba(255,255,255,0.1)}.header-habitat .primary-menu-container .mobile-dropdown-menu li{color:white;font-weight:400;line-height:21px;font-family:"source-sans-pro",helvetica}.header-habitat .primary-menu-container .mobile-dropdown-menu li>a{padding:16px 16px 12px 0;color:white}}.free-trial-btn.go-to-dashboard{display:none}body.wp-signed-state .sign-in-link,body.wp-signed-state .free-trial-btn{display:none}body.wp-signed-state .go-to-dashboard{display:inline-block}body.wp-signed-state .hero-unit--v2 .btn-started-wrapper a,body.wp-signed-state .hero-unit--v2 .btn-secondary-demo-wrapper button,body.wp-signed-state .hero-unit--product-wrapper .btn-started-wrapper a,body.wp-signed-state .hero-unit--product-wrapper .btn-secondary-demo-wrapper button{display:none}body.wp-signed-state .hero-unit--v2 .btn-contact-wrapper button,body.wp-signed-state .hero-unit--v2 .free_trial_csf_variation,body.wp-signed-state .hero-unit--product-wrapper .btn-contact-wrapper button,body.wp-signed-state .hero-unit--product-wrapper .free_trial_csf_variation{display:inline-block !important}@media screen and (max-width:979px){.feature-container{padding-top:42px;padding-bottom:42px}.brands{padding-top:21px;padding-bottom:21px}}.contact-sales-cta{display:none !important}@font-face{font-display:swap;font-family:"Inter";font-style:normal;font-weight:400;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-regular.woff2") format("woff2")}@font-face{font-display:swap;font-family:"Inter";font-style:normal;font-weight:500;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-500.woff2") format("woff2")}@font-face{font-display:swap;font-family:"Inter";font-style:normal;font-weight:600;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-600.woff2") format("woff2")}@font-face{font-display:swap;font-family:"Inter";font-style:normal;font-weight:700;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-700.woff2") format("woff2")}@font-face{font-display:swap;font-family:"Inter";font-style:normal;font-weight:800;src:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/fonts/inter/inter-v13-latin-800.woff2") format("woff2")}.header-habitat:hover::before,.header-habitat:hover::after,.wrapper:hover::before,.wrapper:hover::after{content:"";display:inline-block;position:absolute;right:-9999px;background-repeat:no-repeat;width:0;height:0}.header-habitat:hover::before,.wrapper:hover::before{background-image:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/sprites/header-sprite-menu-v1.svg")}.header-habitat:hover::after,.wrapper:hover::after{background-image:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/sprites/header-sprite-menu-v1-hover.svg")}body:not(.page-template-campaign) .promo-notification{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:not(.page-template-campaign) .promo-notification p,body:not(.page-template-campaign) .promo-notification a,body:not(.page-template-campaign) .promo-notification__elements{font-family:"Inter","source-sans-pro",helvetica;font-size:14px;font-weight:400;line-height:20px}.bstack-mm{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center;margin:0;font-family:"Inter","source-sans-pro",helvetica;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bstack-mm .hide-menu{display:none !important}.bstack-mm-container{display:-ms-flexbox;display:flex;width:100%}.bstack-mm-nav{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:center;align-items:center;margin:0;padding:0;list-style-type:none;-ms-flex:1;flex:1}.bstack-mm-nav--right{-ms-flex:0 0 auto;flex:0 0 auto;margin:0}@media only screen and (max-width:1150px){.bstack-mm-nav{margin:0}}.bstack-mm-logo{display:-ms-flexbox;display:flex;margin-right:10px;margin-bottom:1px}.bstack-mm-link,.bstack-mm-btn{display:inline-block;padding:22px 28px 20px;color:#fff;font-weight:500;line-height:20px;font-size:14px}@media only screen and (max-width:1150px){.bstack-mm-link,.bstack-mm-btn{padding-left:20px;padding-right:20px}}.bstack-mm-link:hover,.bstack-mm-link.is-hover,.bstack-mm-link.focussed,.bstack-mm-btn:hover,.bstack-mm-btn.is-hover,.bstack-mm-btn.focussed{color:#42a9ff;background-color:transparent}.bstack-mm-link:hover .bstack-mm-down,.bstack-mm-link.is-hover .bstack-mm-down,.bstack-mm-link.focussed .bstack-mm-down,.bstack-mm-btn:hover .bstack-mm-down,.bstack-mm-btn.is-hover .bstack-mm-down,.bstack-mm-btn.focussed .bstack-mm-down{top:4px;-ms-transform:rotate(180deg);transform:rotate(180deg)}.bstack-mm-link:hover .bstack-mm-down-svg path,.bstack-mm-link.is-hover .bstack-mm-down-svg path,.bstack-mm-link.focussed .bstack-mm-down-svg path,.bstack-mm-btn:hover .bstack-mm-down-svg path,.bstack-mm-btn.is-hover .bstack-mm-down-svg path,.bstack-mm-btn.focussed .bstack-mm-down-svg path{stroke:#42a9ff}.bstack-mm-li{position:relative}.bstack-mm-li.free-trial-btn{margin-left:7px;margin-right:4px}.bstack-mm-btn{background:transparent;border:0;border-radius:0;margin:0}.bstack-mm-down{display:inline-block;position:relative;top:-1px;right:-5px;width:11px}.bstack-mm-down-svg path{stroke:#fff}.bstack-mm-cta-white{padding:5px 15px;text-transform:uppercase;margin-left:0;background-color:transparent;border-color:#fff;border-radius:3px;border:1px solid #fff;text-decoration:none}.bstack-mm-cta-white:hover{color:#fff;border-color:#0070f0;background:#0070f0}.bstack-mm .doc-search-menu-icon{margin-right:10px}.bstack-mm .collapse-toggle{height:63px;padding:20px 0 19px;min-width:20px}.bstack-mm .collapse-toggle .bar{max-width:20px;width:100%;height:2px;background-color:#fff;border-radius:2px}.bstack-mm .collapse-toggle .bar:not(:last-child){margin-bottom:5px}.bstack-mm .collapse-toggle.active .bar{position:absolute;top:0;bottom:0;margin:auto}.bstack-mm .collapse-toggle.active .bar1{-ms-transform:rotate(45deg);transform:rotate(45deg);-webkit-transform:rotate(45deg)}.bstack-mm .collapse-toggle.active .bar2{-ms-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}.bstack-mm .collapse-toggle.active .bar3{display:none}.bstack-mm-sub-nav{display:none;position:absolute;top:54px;left:auto;background-color:#fff;border-radius:3px;font-size:12px;box-shadow:0 4px 13px 0 rgba(0,0,0,0.3);border:1px solid #dedede;z-index:4;width:192px;padding:8px 0}.bstack-mm-sub-nav:hover,.bstack-mm-sub-nav.active{display:block}.bstack-mm-sub-nav .bstack-mm-link{display:block;padding:8px 10px;color:#111827;font-size:14px;text-align:left;font-weight:500}.bstack-mm-sub-nav .bstack-mm-link .btn-badge{margin-left:6px;font-family:inherit;font-size:10px}.bstack-mm-sub-nav .bstack-mm-sub-li{padding:0 10px}.bstack-mm-sub-nav .bstack-mm-sub-li .bstack-mm-link:hover{color:#0070f0;background-color:transparent}@media screen and (min-width:980px){.bstack-mm-btn:hover+.bstack-mm-sub-nav{display:block}}.bstack-mm-products-nav .bstack-mm-sub-nav{width:868px;height:420px;left:-40px;border:0;padding:0;border-radius:6px}@media only screen and (max-width:1530px){.bstack-mm-products-nav .bstack-mm-sub-nav{left:-60px}}@media only screen and (max-width:1150px){.bstack-mm-products-nav .bstack-mm-sub-nav{left:-140px}}@media only screen and (max-width:1023px){.bstack-mm-products-nav .bstack-mm-sub-nav{left:-140px}}body.wp-signed-state .bstack-mm-products-nav .bstack-mm-sub-nav{left:-105px}@media only screen and (max-width:1150px){body.wp-signed-state .bstack-mm-products-nav .bstack-mm-sub-nav{left:-170px}}nav.product-nav-without-signin .bstack-mm-products-nav .bstack-mm-sub-nav,div.product-nav-without-signin .bstack-mm-products-nav .bstack-mm-sub-nav{left:-220px}@media only screen and (max-width:1530px){nav.product-nav-without-signin .bstack-mm-products-nav .bstack-mm-sub-nav,div.product-nav-without-signin .bstack-mm-products-nav .bstack-mm-sub-nav{left:-280px}}@media only screen and (max-width:1150px){nav.product-nav-without-signin .bstack-mm-products-nav .bstack-mm-sub-nav,div.product-nav-without-signin .bstack-mm-products-nav .bstack-mm-sub-nav{left:-345px}}.bstack-mm-products-nav .bstack-mm-sub-nav .bstack-mm-li{padding:0}.bstack-mm-products-nav .bstack-mm-sub-nav-holder{display:-ms-flexbox;display:flex;overflow:hidden;border-radius:2px}.bstack-mm-products-nav .bstack-mm-sub-nav .bstack-mm-sub-li{display:-ms-flexbox;display:flex;position:relative;-ms-flex-direction:column;flex-direction:column;padding:0;height:420px}.bstack-mm-products-nav .bstack-mm-sub-nav .bstack-mm-sub-li-tabslist{width:186px;background:#f0f6ff;border-right:2px solid #bfdafc;border-bottom-left-radius:6px}.bstack-mm-products-nav .bstack-mm-sub-nav .bstack-mm-sub-li-tabs-content{width:682px;background:#fff;border-bottom-right-radius:6px}.bstack-mm-products-nav .bstack-mm-sub-nav-tab{position:relative;border:0;margin:0;width:100%;background:transparent;text-align:left;padding:20px 16px 20px 11px;border-left:5px solid transparent}.bstack-mm-products-nav .bstack-mm-sub-nav-tab .item-text{color:#111827;font-weight:600;font-size:16px;line-height:24px;margin-bottom:4px;display:inline-block}.bstack-mm-products-nav .bstack-mm-sub-nav-tab .item-desc{font-weight:400;font-size:12px;line-height:20px;color:#111827}.bstack-mm-products-nav .bstack-mm-sub-nav-tab:last-child.active .item-text::before{content:"";position:absolute;width:100%;height:1px;background:#bfdafc;top:0;left:0}.bstack-mm-products-nav .bstack-mm-sub-nav-tab.active{border-left:5px solid #0070f0;background-color:#fff;padding-left:11px}.bstack-mm-products-nav .bstack-mm-sub-nav-tab.active .item-text{color:#0070f0}.bstack-mm-products-nav .bstack-mm-sub-nav-tab.active::before{content:"";display:block;position:absolute;border-color:#bfdafc;border-style:solid;border-width:2px 2px 0 0;background:#fff;z-index:1;height:10px;right:-6.5px;top:45%;width:10px;transition:left .1s;-ms-transform:rotate(45deg);transform:rotate(45deg);-webkit-transform:rotate(45deg);border-top-right-radius:40%}.bstack-mm-products-nav .bstack-mm-sub-nav-tab.active::after{content:"";position:absolute;width:100%;height:1px;background:#bfdafc;left:0;bottom:0}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel{display:-ms-flexbox;display:flex;padding:20px 16px 10px;height:100%;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:justify;justify-content:space-between;position:relative}@media screen and (min-width:980px){.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel{min-height:420px}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel-wrapper{overflow-x:hidden;overflow-y:scroll;-ms-overflow-style:none;scrollbar-width:none}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel-wrapper::-webkit-scrollbar{display:none}}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel-inner{height:100%;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:justify;justify-content:space-between;position:relative}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel-inner-v1{display:-ms-flexbox;display:flex}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel-inner-v2{display:none}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel-footer{padding-left:16px;padding-right:16px}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel.hide{display:none}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel .item-text{font-weight:600;font-size:14px;line-height:24px;color:#111827}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel .item-desc{font-weight:400;font-size:12px;line-height:20px;color:#374151}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel .bstack-mm-link{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding:0 0 0 36px;margin-bottom:18px}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel .bstack-mm-link:hover .item-text,.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel .bstack-mm-link:hover .item-desc{color:#0070f0}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel-heading{margin-bottom:20px;margin-top:0}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel-heading .item-text{font-weight:400;font-size:12px;line-height:20px;color:#374151}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel-sub-heading{margin-top:40px}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol{width:210px}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-fourth-col{display:none}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner{display:-ms-flexbox;display:flex;-ms-flex-item-align:end;align-self:flex-end;width:100%;border-top:1px solid #d1d5db;padding:10px 0;-ms-flex-pack:justify;justify-content:space-between}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner.hide{display:none}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner .bstack-mm-link{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding:0;margin:0 0 0 5px}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner .bstack-mm-link:hover .item-text,.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner .bstack-mm-link:hover .item-desc{color:#0070f0}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner .item-text,.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner .item-desc{font-weight:400;font-size:12px;line-height:20px}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner .item-text{font-weight:600;color:#111827}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner .item-desc{font-weight:400;color:#374151}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner-inner{display:-ms-flexbox;display:flex}.bstack-mm.product-nav-without-signin .bstack-mm-nav--right .sign-in-link,.bstack-mm.product-nav-without-signin .bstack-mm-nav--right .free-trial-btn{display:none}.bstack-mm-sprite::before{content:"";display:inline-block;position:absolute;top:0;left:0;vertical-align:middle;background-image:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/sprites/header-sprite-menu-v1.svg");background-repeat:no-repeat;width:24px;height:24px;background-position:0 center;background-size:auto 24px}.bstack-mm-sprite:hover::before{background-image:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/sprites/header-sprite-menu-v1-hover.svg")}.bstack-mm-sprite-1::before{background-position:0 center}.bstack-mm-sprite-2::before{background-position:-34px center}.bstack-mm-sprite-3::before{background-position:-69px center}.bstack-mm-sprite-4::before{background-position:-102px center}.bstack-mm-sprite-5::before{background-position:-137px center}.bstack-mm-sprite-6::before{background-position:-170px center}.bstack-mm-sprite-7::before{background-position:-204px center}.bstack-mm-sprite-8::before{background-position:-238px center}.bstack-mm-sprite-9::before{background-position:-273px center}.bstack-mm-sprite-10::before{background-position:-308px center}.bstack-mm-sprite-11::before{background-position:-341px center}.bstack-mm-sprite-12::before{background-position:-376px center}.bstack-mm-sprite-13::before{background-position:-408px center}@media screen and (max-width:979px){.header-habitat,.wrapper{border-bottom:1px solid;border-bottom-color:rgba(255,255,255,0.1)}.header-habitat .ds__container,.wrapper .ds__container{z-index:999}.header-habitat .custom-header-col{padding-left:15px;padding-right:20px}.bstack-mm{display:block}.bstack-mm-container{position:absolute;width:100%;max-width:100%;left:0;top:63px;background-color:#142433;-ms-flex-direction:column;flex-direction:column;min-height:calc(100vh - 63px);z-index:999}.bstack-mm-nav{-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:start;align-items:flex-start;-ms-flex-positive:0;flex-grow:0}.bstack-mm-logo{padding-top:15px;float:left;margin-right:10px;padding-bottom:10px;display:block}.bstack-mm-link,.bstack-mm-btn{padding-top:16px;padding-bottom:16px;width:100%;text-align:left;font-weight:600}.bstack-mm-link:hover,.bstack-mm-link.is-hover,.bstack-mm-link.focussed,.bstack-mm-btn:hover,.bstack-mm-btn.is-hover,.bstack-mm-btn.focussed{color:#42a9ff !important}.bstack-mm-link-products .bstack-mm-down,.bstack-mm-btn-products .bstack-mm-down{display:none}.bstack-mm-li{border-bottom:1px solid;border-bottom-color:rgba(255,255,255,0.1);width:100%}.bstack-mm-li.active .bstack-mm-btn{position:relative;padding-left:35px;font-weight:600;color:#fff !important}.bstack-mm-li.active .bstack-mm-btn-products{padding-left:20px !important}.bstack-mm-li.active .bstack-mm-down{position:absolute;left:20px !important;top:17px !important;-ms-transform:rotate(90deg) !important;transform:rotate(90deg) !important;-webkit-transform:rotate(90deg) !important}.bstack-mm-li.active .bstack-mm-down-svg path{stroke:#fff}.bstack-mm-li.free-trial-btn{margin-left:0;margin-right:0}.bstack-mm-down{-ms-transform:rotate(-90deg) !important;transform:rotate(-90deg) !important;-webkit-transform:rotate(-90deg) !important;top:1px !important}.bstack-mm-cta-white{border:0 !important;padding:16px 20px 12px}.bstack-mm-cta-white:hover{color:#42a9ff;background:transparent}.bstack-mm .doc-search-menu-icon{position:absolute !important;right:44px;cursor:pointer;padding:20px 10px 14px 6px}.bstack-mm .doc-search-menu-icon::before{vertical-align:unset !important;margin-right:0 !important;width:14px !important;height:14px !important}.bstack-mm-sub-nav{position:relative;background:#142433;border:0 !important;box-shadow:none !important;top:0 !important;left:0 !important;width:100% !important}.bstack-mm-sub-nav .bstack-mm-link{padding:16px 20px 12px;color:#fff}.bstack-mm-sub-nav .bstack-mm-sub-li{width:100%}.bstack-mm-sub-nav .bstack-mm-sub-li:not(:last-child){border-bottom:1px solid;border-bottom-color:rgba(255,255,255,0.1)}.bstack-mm-products-nav .bstack-mm-sub-nav{left:0;width:100%;height:100%;display:block}.bstack-mm-products-nav .bstack-mm-sub-nav-holder{-ms-flex-direction:column;flex-direction:column;border-radius:0}.bstack-mm-products-nav .bstack-mm-sub-nav .bstack-mm-sub-li{height:100%}.bstack-mm-products-nav .bstack-mm-sub-nav .bstack-mm-sub-li-tabslist{width:100%;background:#142433;border:0}.bstack-mm-products-nav .bstack-mm-sub-nav .bstack-mm-sub-li-tabs-content{width:100%;background-color:#142433}.bstack-mm-products-nav .bstack-mm-sub-nav-tab{border:0 !important;background-color:#142433 !important;padding:16px 20px 16px !important}.bstack-mm-products-nav .bstack-mm-sub-nav-tab .item-text{color:#fff !important;position:relative;font-size:14px}.bstack-mm-products-nav .bstack-mm-sub-nav-tab .item-text:after{content:"";position:absolute;right:-15px;top:0;bottom:0;margin:auto 0;display:inline-block;height:7px;width:7px;border-style:solid;border-width:0 2px 2px 0;border-color:#fff;-ms-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}.bstack-mm-products-nav .bstack-mm-sub-nav-tab .item-desc{color:#d1d5db !important}.bstack-mm-products-nav .bstack-mm-sub-nav-tab:last-child.active .item-text::before{display:none}.bstack-mm-products-nav .bstack-mm-sub-nav-tab.active .item-text{padding-left:20px !important}.bstack-mm-products-nav .bstack-mm-sub-nav-tab.active .item-text:after{left:0;-ms-transform:rotate(135deg);transform:rotate(135deg);-webkit-transform:rotate(135deg)}.bstack-mm-products-nav .bstack-mm-sub-nav-tab.active .item-desc{display:none}.bstack-mm-products-nav .bstack-mm-sub-nav-tab.active::before{display:none}.bstack-mm-products-nav .bstack-mm-sub-nav-tab.active::after{display:none}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel{padding:0}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel-footer{display:none}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel .item-text{color:#fff !important;line-height:20px}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel .item-desc{color:#fff}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel .bstack-mm-link{padding:16px 20px 12px;margin-bottom:0;margin-left:0}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel .bstack-mm-link:hover .item-text,.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel .bstack-mm-link:hover .item-desc{color:#42a9ff !important}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel-heading{padding:30px 20px 12px;border-bottom:1px solid;border-bottom-color:rgba(255,255,255,0.1);margin-bottom:0}.bstack-mm-products-nav .bstack-mm-sub-nav-tabpanel-heading .item-text{color:#aec3d4 !important;font-weight:400}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol{width:100%}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-fourth-col{display:block}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner{-ms-flex-direction:column;flex-direction:column;border-color:rgba(255,255,255,0.1)}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner-inner{-ms-flex-direction:column;flex-direction:column}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner-inner .item-desc{padding-left:16px;font-size:16px;line-height:20px}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner-inner .bstack-mm-link{padding-top:0}.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner-inner:hover .item-desc,.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner-inner:hover .bstack-mm-link,.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner-inner:focus .item-desc,.bstack-mm-products-nav .bstack-mm-sub-nav-tabcol-liner-inner:focus .bstack-mm-link{color:#42a9ff}.bstack-mm-sprite::before{display:none}}html.doc-search-enabled{overflow:hidden !important}.header-habitat .primary-menu-container .primary-menu .doc-menu-toggle.hide,.header-habitat .doc-menu-toggle.hide{display:none}.header-habitat .campaign-landing-header .primary-menu a{vertical-align:middle}.header-habitat .doc-search-menu{margin-left:15px;background:transparent;border:0;padding:21px 27px !important;height:63px;position:relative;vertical-align:middle}.header-habitat .doc-search-menu::before{content:"";position:absolute;width:14px;height:14px;border:2px solid white;border-radius:50%;margin-right:8px;top:24px;left:15px}.header-habitat .doc-search-menu::after{content:"";position:absolute;border-radius:3px;width:2px;height:9px;background:white;-ms-transform:rotate(-45deg);transform:rotate(-45deg);top:34px;left:28px}.header-habitat .doc-search-menu:hover::before{border-color:#42a9ff}.header-habitat .doc-search-menu:hover::after{background:#42a9ff}@media screen and (min-width:979px){body.docs-search-auth-user .header-habitat .product-nav{margin-right:260px}}@media screen and (min-width:1095px){body.docs-search-auth-user .header-habitat .product-nav{margin-right:290px}}@media screen and (min-width:979px){body.docs-search-auth-user .header-habitat .product-nav.product-nav-without-signin{margin-right:60px}}@media screen and (min-width:1095px){body.docs-search-auth-user .header-habitat .product-nav.product-nav-without-signin{margin-right:60px}}body.docs-search-auth-user .header-habitat .product-nav.product-nav-without-signin .product-menu .product-menu-speedboat{left:-350px}body.docs-search-auth-user .header-habitat .product-nav.product-nav-without-signin .product-menu .product-menu-speedboat .dropdown-menu-arrow{left:439px}@media screen and (min-width:979px) and (max-width:1095px){body.docs-search-auth-user .header-habitat .product-nav.product-nav-without-signin .product-menu .product-menu-dropdown{left:-410px !important}body.docs-search-auth-user .header-habitat .product-nav.product-nav-without-signin .product-menu .product-menu-dropdown .dropdown-menu-arrow{left:490px !important}}.doc-search-mobile-cta{display:none}@media screen and (max-width:979px){.doc-search-mobile-cta{display:block;position:absolute;top:0;right:44px;cursor:pointer;background:transparent;padding:20px 10px 14px 6px;border:0}.doc-search-mobile-cta svg{height:25px}.header-habitat .doc-search-menu{padding:21px 22px !important}}.microsite-templ{font-family:"Inter",helvetica;color:#374151}.microsite-templ h1,.microsite-templ h2,.microsite-templ h3,.microsite-templ h4,.microsite-templ h5,.microsite-templ h6,.microsite-templ .bstack-toc{font-family:"Inter",helvetica}.microsite-templ b,.microsite-templ strong{font-weight:600}.microsite-templ b a,.microsite-templ strong a{color:#0067dd}.microsite-templ b a:hover,.microsite-templ strong a:hover{color:#004b8f}.microsite-templ h1{color:#242424;font-size:48px;font-weight:800;line-height:58px}.microsite-templ h2{color:#242424;font-size:36px;font-weight:700;line-height:44px;margin-top:48px;margin-bottom:20px}.microsite-templ h2 b,.microsite-templ h2 strong{font-weight:700}.microsite-templ h3{color:#242424;font-size:30px;font-weight:700;line-height:36px;margin-top:48px;margin-bottom:20px}.microsite-templ h3 b,.microsite-templ h3 strong{font-weight:700}.microsite-templ h4{color:#242424;font-size:24px;font-weight:700;line-height:28px;margin-top:32px;margin-bottom:16px}.microsite-templ h4 b,.microsite-templ h4 strong{font-weight:700}.microsite-templ h5{color:#242424;font-size:20px;font-weight:600;line-height:24px;margin-top:32px;margin-bottom:12px}.microsite-templ h5 b,.microsite-templ h5 strong{font-weight:600}.microsite-templ h6{color:#242424;font-size:18px;font-weight:600;line-height:24px;margin-top:32px;margin-bottom:12px}.microsite-templ h6 b,.microsite-templ h6 strong{font-weight:600}.microsite-templ p{color:#374151;font-family:"Source Serif 4",helvetica;font-size:20px;font-weight:400;line-height:32px;margin-bottom:32px;margin-top:0}.microsite-templ p:last-child{margin-bottom:0}.microsite-templ p:empty{display:none}.microsite-templ u{text-decoration:underline}.microsite-templ hr{margin-bottom:16px;margin-top:0}.microsite-templ ul{list-style-type:disc}.microsite-templ li{color:#374151;margin-bottom:16px}.microsite-templ ul,.microsite-templ ol{color:#374151;font-family:"Source Serif 4",helvetica;font-size:20px;font-weight:400;line-height:32px;margin-bottom:32px;margin-top:0;padding:0 0 0 20px}.microsite-templ ul li:last-child,.microsite-templ ol li:last-child{margin-bottom:0}.microsite-templ ul li a,.microsite-templ ol li a{color:#0067dd}.microsite-templ ul li a:hover,.microsite-templ ol li a:hover{color:#004b8f !important}.microsite-templ .wp-caption{width:auto !important}.microsite-templ .table-responsive{overflow-x:auto;margin-top:40px;margin-bottom:40px}.microsite-templ table{background:#fff;border:1px solid #e5e7eb;box-shadow:0 1px 2px 0 rgba(16,24,40,0.05);border-radius:6px;overflow:hidden;border-collapse:separate;width:100%;margin-top:40px;margin-bottom:40px}.microsite-templ table th{background:#f8fafc;text-align:left;border-width:0;padding:12px 24px;font-family:"Inter",helvetica;font-style:normal;font-weight:600;font-size:14px;line-height:20px;letter-spacing:1px;color:#242424}.microsite-templ table td{position:relative;border-top:1px solid #e5e7eb;border-width:1px 0 0 0;padding:16px 24px;font-family:"Inter",helvetica;font-style:normal;font-weight:400;font-size:14px;line-height:20px;color:#374151}.microsite-templ table tr td:first-child:before{content:' ';position:absolute;top:0;left:0;width:5px;height:100%;background:transparent;z-index:1}.microsite-templ .table-responsive table{margin-top:0;margin-bottom:0}.microsite-templ__toc+h3{margin-top:0 !important}.microsite-templ-progress-bar{position:fixed;top:63px;left:0;height:5px;background-color:#1b8bff;transition:all linear .1s;min-width:1px;z-index:9}.microsite-templ-hero,.microsite-templ-ctasec{background-size:cover;padding:40px 0;background-color:#fff}.microsite-templ-hero-heading,.microsite-templ-ctasec-heading{margin-bottom:20px;text-align:center;margin-top:0 !important}.microsite-templ-hero-desc,.microsite-templ-ctasec-desc{color:#374151;font-family:"Inter",helvetica;font-size:18px;font-weight:400;line-height:28px;max-width:950px;margin:0 auto 40px;text-align:center}.microsite-templ-hero-btn,.microsite-templ-ctasec-btn{font-family:"Inter",helvetica;font-size:20px;font-weight:400;line-height:32px;max-width:950px;margin:0 auto;text-align:center}.microsite-templ-hero--btn,.microsite-templ-ctasec--btn{margin-right:20px}.microsite-templ-hero--btn:last-child,.microsite-templ-ctasec--btn:last-child{margin-right:0;margin-left:-6px}.microsite-templ-brands{background-color:#f8fafc}.microsite-templ-brands .brands{padding:44px 0}.microsite-templ-brands .brands h3{margin-top:0;margin-bottom:32px;color:#333}.microsite-templ-ctasec{background-color:#f8fafd;padding:64px 0 !important}.microsite-templ-ctasec-desc{color:#666 !important}.microsite-templ-content{position:relative;display:-ms-flexbox;display:flex}.microsite-templ-content--no-sidebar{-ms-flex-pack:center;justify-content:center}.microsite-templ-main-content{padding:64px 60px;max-width:1200px;font-family:"Source Serif 4",helvetica}.microsite-templ-main-content img{width:auto;max-width:100%;height:auto;border-radius:8px;border:1px solid #e4ebf2;margin:8px 0 !important;vertical-align:middle}.microsite-templ-main-content .bstack-main-content-breadcrumbs img,.microsite-templ-main-content .bstack-callout__container img,.microsite-templ-main-content .bstack_c_banner__container img,.microsite-templ-main-content .guide-highlight-section img,.microsite-templ-main-content .no-border img{border:0}.microsite-templ-main-content .bstack-main-content-breadcrumbs{font-family:"Inter",helvetica;margin-bottom:24px;font-size:14px;font-weight:400;line-height:20px;letter-spacing:0;text-align:left;color:#0070f0;text-decoration:none}.microsite-templ-main-content .bstack-main-content-breadcrumbs-separator{margin-left:5px;margin-right:5px;color:#d1d5db}.microsite-templ-main-content .bstack-main-content-breadcrumbs .current{color:#666}.microsite-templ-main-content .bstack-main-content-breadcrumbs a,.microsite-templ-main-content .bstack-main-content-breadcrumbs span,.microsite-templ-main-content .bstack-main-content-breadcrumbs svg{vertical-align:middle;text-decoration:none}.microsite-templ-main-content .bstack-toc{margin-bottom:32px}.microsite-templ-main-content .bstack-toc ul ul{display:none}.microsite-templ-main-content p:first-child{margin-top:0}.microsite-templ figure{margin-bottom:32px;margin-top:32px}.microsite-templ figure img{margin-bottom:0 !important;width:100%}.microsite-templ figure figcaption,.microsite-templ figure .wp-caption-text{display:inline-block;vertical-align:middle;width:100%;font-family:"Inter",helvetica;color:#666;font-size:16px;font-weight:400;line-height:24px;padding:12px 0;border-bottom:1px solid #e5e7eb;margin-bottom:8px}.microsite-templ figure:last-child{margin-bottom:0}.microsite-templ figure:last-child figcaption,.microsite-templ figure:last-child .wp-caption-text{border-bottom:0;margin-bottom:0}.microsite-templ .btn-primary,.microsite-templ .btn-secondary,.microsite-templ .btn-transparent,.microsite-templ .btn-secondary-white{padding:12px 20px}.microsite-templ-sidebar{position:relative;padding:64px 60px;border-right:1px solid #e5e7eb}.microsite-templ-sidebar+.microsite-templ-main-content{max-width:920px}.microsite-templ-sidebar-abs{position:absolute;right:0;width:360px;padding-right:60px}.microsite-templ-sidebar-abs.bs-stick-top{position:fixed;margin-top:0;top:58px;overflow-y:auto;max-height:calc(100% - 84px);left:calc(33.33% - 361px);padding-top:20px}.microsite-templ-sidebar-abs.bs-stick-top.bs-stick-bottom{position:absolute;bottom:64px;top:auto;right:0;left:auto;display:inline-table}.microsite-templ-sidebar-abs.bs-stick-top.scroll-sidebar{overflow-y:auto;bottom:25px}.microsite-templ-sidebar-abs ul{padding:0;margin:0}.microsite-templ-sidebar-abs ul ul{padding:16px 0 0 !important;margin:0}.microsite-templ-sidebar-abs ul ul li:last-child{margin:0}.microsite-templ-sidebar-abs ul li{max-width:300px;overflow:hidden;font-family:"Inter",helvetica;text-overflow:ellipsis;white-space:nowrap;padding:0 !important;margin-bottom:16px !important;line-height:32px}.microsite-templ-sidebar-abs ul li a{color:black !important;font-family:"Inter",helvetica;font-size:18px !important;font-style:normal;font-weight:500;line-height:32px !important;text-decoration:none !important}.microsite-templ-sidebar-abs ul li a:hover,.microsite-templ-sidebar-abs ul li a.active{color:#2769ce !important;text-decoration:underline}.microsite-templ-sidebar .bstack-toc{border:0;border-radius:0;border-bottom:1px solid #e5e7eb;margin-bottom:32px;background:transparent;padding:0}.microsite-templ-sidebar .bstack-toc__heading{position:relative;color:#666;font-size:14px;font-weight:600;line-height:28px;margin-bottom:16px;padding-left:30px}.microsite-templ-sidebar .bstack-toc__heading:before{background-image:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/page/three-bullet-icon.svg");content:'';position:absolute;top:1px;left:0;z-index:1;width:25px;height:24px;background-position:center;background-repeat:no-repeat;background-size:17px 17px}.microsite-templ-sidebar .bstack-toc+h3{padding-top:0 !important}.microsite-templ-sidebar .bstack-toc li:last-child{margin-bottom:32px !important}.microsite-templ-sidebar .bstack-toc li li:last-child{margin-bottom:0 !important}.microsite-templ-sidebar__heading{position:relative;color:#666;font-size:14px;font-weight:600;line-height:28px;margin-bottom:16px;text-transform:uppercase;padding-left:24px}.microsite-templ-sidebar__heading:before{background-image:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/page/other-links-icon.svg");content:'';position:absolute;top:1px;left:0;z-index:1;width:25px;height:24px;background-position:left center;background-repeat:no-repeat;background-size:15px 15px}.microsite-templ-sidebar__other-links li:last-child{margin-bottom:0 !important}.microsite-templ .guide-highlight-section{border-radius:4px;border-left:solid 4px;padding:16px 14px 16px 18px;margin-bottom:40px;margin-top:40px;color:#111827;font-family:"Inter",helvetica}.microsite-templ .guide-highlight-section p{margin-bottom:0;padding-bottom:0 !important}.microsite-templ .guide-highlight-section p,.microsite-templ .guide-highlight-section b,.microsite-templ .guide-highlight-section strong{font-family:inherit}.microsite-templ .guide-highlight-section.green-section{background-color:#f0fdfe;border-color:#00867b}.microsite-templ .guide-highlight-section.blue-section{background-color:#eef8ff;border-color:#0067dd}.microsite-templ .guide-highlight-section.yellow-section{background-color:#fff;border-color:#f5df20}.microsite-templ .guide-highlight-section.red-section{background-color:#ffe9e9;border-color:#fb7373}.microsite-templ .guide-highlight-section a{color:#0067dd}.microsite-templ .guide-highlight-section a:hover{color:#004b8f}.microsite-templ .yt-embed-img{border-radius:8px;width:100%;overflow:hidden}.microsite-templ .yt-embed-img__img{width:100%}@media screen and (max-width:1299px){.microsite-templ-main-content{padding:60px 40px}.microsite-templ-sidebar-abs{width:100%;padding:0 24px}.microsite-templ-sidebar-abs.bs-stick-top{left:0;width:33.33333%}.microsite-templ-sidebar-abs.bs-stick-top.bs-stick-bottom{left:0;right:auto;width:100%}}@media screen and (max-width:979px){.microsite-templ-main-content{width:100%;padding:40px 34px}.microsite-templ-main-content .bstack-toc__accordion{font-family:"Inter",helvetica}.microsite-templ-main-content .bstack-toc__accordion-title{line-height:20px;color:#242424}.microsite-templ-main-content .bstack-toc__accordion-content{margin-top:16px}.microsite-templ-main-content .bstack-toc li{color:#374151}.microsite-templ-main-content .bstack-toc li a{font-family:"Inter",helvetica;font-size:16px !important;line-height:24px !important;color:#0067dd !important;font-weight:400 !important}.microsite-templ h1{font-size:44px;font-weight:700;line-height:48px;color:#242424}.microsite-templ h2{font-size:28px;font-weight:700;line-height:40px;color:#242424}.microsite-templ h2 b,.microsite-templ h2 strong{font-weight:700}.microsite-templ h3{font-size:24px;font-weight:600;line-height:32px;margin-top:32px;color:#242424}.microsite-templ h3 b,.microsite-templ h3 strong{font-weight:600}.microsite-templ h4{font-size:22px;font-weight:600;line-height:30px;color:#242424}.microsite-templ h4 b,.microsite-templ h4 strong{font-weight:600}.microsite-templ h5{font-size:18px;font-weight:600;line-height:24px;color:#242424}.microsite-templ h5 b,.microsite-templ h5 strong{font-weight:600}.microsite-templ h6{font-size:16px;font-weight:600;line-height:24px;color:#242424}.microsite-templ h6 b,.microsite-templ h6 strong{font-weight:600}.microsite-templ p,.microsite-templ ul,.microsite-templ ol{font-size:20px;line-height:32px}.microsite-templ li{font-size:20px;line-height:32px}.microsite-templ ul,.microsite-templ ol{padding-left:32px}.microsite-templ-progress-bar{display:none}.microsite-templ-hero{padding:40px 34px}.microsite-templ-ctasec{padding:40px 0 !important}.microsite-templ-brands .brands{padding:32px 0}.microsite-templ-main-content{margin:0 auto}.microsite-templ-sidebar{display:none}}@media screen and (max-width:639px){.microsite-templ-main-content{padding:40px 20px}.microsite-templ-main-content img{margin:0}.microsite-templ .btn-primary,.microsite-templ .btn-secondary,.microsite-templ .btn-transparent,.microsite-templ .btn-secondary-white{padding:8px 16px}.microsite-templ figure{margin-bottom:32px;margin-top:32px}.microsite-templ figure figcaption,.microsite-templ figure .wp-caption-text{margin-bottom:0}.microsite-templ .bstack-main-content-breadcrumbs{margin-bottom:20px}.microsite-templ .guide-highlight-section{margin-top:32px;margin-bottom:32px}.microsite-templ-hero--btn,.microsite-templ-ctasec--btn{display:block;margin:0 auto 20px}.microsite-templ-hero--btn:last-child,.microsite-templ-ctasec--btn:last-child{margin-right:auto;margin-left:auto;margin-bottom:0}.microsite-templ-hero-desc,.microsite-templ-ctasec-desc{color:#666}.microsite-templ-hero{padding:40px 20px}.microsite-templ-ctasec{padding:32px 20px !important}.microsite-templ p{font-size:18px;font-weight:400;line-height:28px;margin-bottom:32px}.microsite-templ li{font-size:18px;font-weight:400;line-height:28px;margin-bottom:12px}.microsite-templ h1{font-size:32px;line-height:38px}.microsite-templ h2{font-size:28px;line-height:32px;margin-top:36px;margin-bottom:20px}.microsite-templ h3{font-size:24px;line-height:32px;margin-top:28px;margin-bottom:16px}.microsite-templ h4{font-size:22px;line-height:30px;margin-top:28px;margin-bottom:12px}.microsite-templ h5{font-size:18px;line-height:24px;margin-top:28px;margin-bottom:8px}.microsite-templ h6{font-size:16px;line-height:24px;margin-top:20px;margin-bottom:8px}}.microsite-templ-modal-image .tingle-modal-box{margin:auto;display:block;width:100% !important;max-width:1200px;max-height:80%}.microsite-templ-modal-image .tingle-modal-box__content img{background:#fff;width:100%;height:auto;margin:auto;display:block;opacity:1 !important;border-radius:8px}.microsite-templ-modal-image .tingle-modal__close{top:-30px !important;right:-30px !important;position:absolute;color:#fff}@media screen and (max-width:1299px){.microsite-templ-modal-image .tingle-modal-box{max-width:80%}}@media screen and (max-width:639px){.microsite-templ-modal-image .tingle-modal-box{margin:auto}}.scroll-effect-on .faq-support{margin-top:220px}.faq-support{font-family:"source-sans-pro",helvetica}.faq-support__search{position:relative}.faq-support__search-content{background-image:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/support/search-background.jpg");height:200px;padding:96px 16px 64px;background-position:center;background-size:cover;position:relative;-ms-transform:scaleX(1);transform:scaleX(1);transition:transform .2s ease-in-out,background-image .2s ease-in-out,color .2s ease-in-out}.faq-support__search-heading{color:#fff;text-align:center;font-weight:600;font-size:36px;line-height:44px;margin:0}.faq-support__search-form{position:absolute;left:0;right:0;padding:0 16px;margin:0 auto;width:100%;max-width:620px;top:calc(100% - 20px)}.faq-support__search-form:before{background-image:url("https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/support/search-icon.svg");content:'';position:absolute;left:32px;top:12px;z-index:1;width:15px;height:15px;background-position:center;background-repeat:no-repeat;background-size:cover}.faq-support__search-input{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,0.25);border-radius:3px;border:0;width:100%;position:relative;padding:8px 112px 8px 40px;max-width:620px;font-size:16px;line-height:24px}.faq-support__search-input:hover{-ms-transform:all .1s ease;transform:all .1s ease;box-shadow:0 1px 3px rgba(0,0,0,0.5)}.faq-support__search-input::-webkit-input-placeholder{color:#787878;opacity:.75}.faq-support__search-input:-ms-input-placeholder{color:#787878;opacity:.75}.faq-support__search-input::placeholder{color:#787878;opacity:.75}.faq-support__search-submit-clear{position:absolute;top:8px;right:24px;font-size:14px;line-height:16px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.faq-support__search-submit-clear--hidden{visibility:hidden;z-index:-1}.faq-support__search-submit{width:70px;height:24px;background:#e3f3fc;border:0;border-radius:3px;color:#0067dd;font-size:16px;font-weight:400;padding:0 8px;text-align:left;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.faq-support__search-submit img{position:absolute;top:5px;right:5px}.faq-support__search-clear{background:transparent;border:0;padding:0;height:18px;margin-right:12px;display:inline-block;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:.6}.faq-support__search-clear:hover{opacity:1}.faq-support__search-enter-icon{position:absolute;right:24px;font-size:14px;line-height:16px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;text-align:center;color:#666;background:#f9f9f9;border-radius:3px;padding:4px;top:8px}.faq-support__search-enter-icon--hidden{display:none}.faq-support__search.scroll-effect{z-index:1;position:fixed;top:0;left:0;right:0}.faq-support__search.scroll-effect .faq-support__search-content{padding:0;-ms-transform:scaleY(0.75);transform:scaleY(0.75);height:120px}.faq-support__search.scroll-effect .faq-support__search-heading{opacity:0}.faq-support__search.scroll-effect .faq-support__search-form{transition:all .2s ease-in-out;top:calc(100% - 35px)}@media screen and (max-width:1024px){.faq-support__search{top:-20px}}@media screen and (min-width:640px) and (max-width:960px){.faq-support__search.scroll-effect{top:-20px}}@media screen and (max-width:767px){.faq-support__search-enter-icon{display:none}.faq-support__search-input--no-padding{padding-right:8px}.faq-support__search.scroll-effect{top:0}.faq-support__search.scroll-effect .faq-support__search-content{-ms-transform:scaleY(1);transform:scaleY(1);height:60px}}.faq-support__container{width:1264px;max-width:100%;padding:0 16px;margin:64px auto 60px}.faq-support__container--cat-single{margin:48px auto 80px}.faq-support__main{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.faq-support__content{width:60%}.faq-support__sidebar{width:26%;position:relative}.faq-support__sidebar-content{padding-right:80px;max-width:320px;width:320px}.faq-support__sidebar--fixed .faq-support__sidebar-container{position:fixed;top:140px;width:266px;padding-right:16px;padding-left:10px;overflow-y:auto;margin-left:-10px;height:calc(100vh - 140px)}.faq-support__sidebar--bottom-fixed{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end}.faq-support__sidebar--bottom-fixed .faq-support__sidebar-container{position:relative;top:auto;height:-webkit-max-content;height:max-content;overflow:hidden}@media screen and (min-width:1024px) and (max-width:1100px){.faq-support__content-main{padding-left:32px}}@media screen and (max-width:1024px){.faq-support__sidebar{width:30%}.faq-support__sidebar-content{padding-right:64px;width:auto}.faq-support__content{width:70%}}@media screen and (max-width:767px){.faq-support__container{margin:64px auto}.faq-support__main{-ms-flex-direction:column-reverse;flex-direction:column-reverse}.faq-support__sidebar{width:100%}.faq-support__sidebar-container{padding-top:64px}.faq-support__sidebar:before{background:#f0f4f7;content:'';height:auto;position:absolute;z-index:-1;left:-15px;right:-15px;bottom:-64px;top:0}.faq-support__sidebar-content{padding-right:0;max-width:100%}.faq-support__content{width:100%;padding-bottom:72px}}</style> <script type="text/javascript"> var stage_env_cookie_prefix = ''; var enableTrustArcCCM = 1; function getCookieVal(e,t){for(var a=(t?(stage_env_cookie_prefix+e).trim():e.trim())+"=",r=document.cookie.split(";"),i=0;i<r.length;i++){for(var o=r[i];" "==o.charAt(0);)o=o.substring(1,o.length);if(0===o.indexOf(a))return o.substring(a.length,o.length)}return null}function setCookieVal(e,t,a,r){var i=new Date,o=window.location.hostname.substr(window.location.hostname.indexOf("."));i.setTime(i.getTime()+864e5*a),document.cookie=(r?(stage_env_cookie_prefix+e).trim():e.trim())+"="+t+";path=/;domain="+o+";expires="+i.toGMTString()}var bs_user_details=bs_user_details_obj="",wpUserLoggedIn=!1,updateHeaderCTA=vwoShowSignInState=!1,csfSignedInStateExp=!1,demoModalSignedInStateExp=!1,bstackCheckAcceptCookie=!1,freeTrialUserFlag=!0,freeTrialListParams=["Trial","Extended Trial","Freemium"];if(getCookieVal("bs_logging_id",!0)){wpUserLoggedIn=!0;try{if(getCookieVal("bs_user_details",!0)){bs_user_details=getCookieVal("bs_user_details",!0);var u_detail=JSON.parse(bs_user_details);u_detail&&"object"==typeof u_detail&&void 0!==u_detail.plan_details&&(bs_user_details_obj=u_detail)}}catch(error){}}bs_user_details_obj?Object.keys(bs_user_details_obj.plan_details).forEach(function(e){if(bs_user_details_obj.plan_details.hasOwnProperty(e)&&freeTrialListParams.indexOf(bs_user_details_obj.plan_details[e].type)===-1)return void(freeTrialUserFlag=!1)}):freeTrialUserFlag=!1,freeTrialUserFlag&&null!==getCookieVal("bs_logging_id",!0)&&(vwoShowSignInState=!0);try{var freshChatLocalVal=localStorage.getItem("set_freshchat_state");freshChatLocalVal&&(new Date).getTime()>JSON.parse(freshChatLocalVal)&&localStorage.removeItem("set_freshchat_state");var cookieNotificationVal=getCookieVal("UserOptCookie",!0);cookieNotificationVal&&(bstackCheckAcceptCookie=!0)}catch(e){}var header_3_1_experiment_v3=getCookieVal("header_3_1_experiment_v3",!0),header_3_1_exp_vwo=getCookieVal("_vis_opt_exp_713_combi",!1);header_3_1_experiment_v3&&header_3_1_experiment_v3!=header_3_1_exp_vwo?setCookieVal("_vis_opt_exp_713_combi",header_3_1_experiment_v3,30,!1):header_3_1_exp_vwo&&header_3_1_experiment_v3!=header_3_1_exp_vwo&&setCookieVal("header_3_1_experiment_v3",header_3_1_exp_vwo,30,!0),enableTrustArcCCM&&!wpUserLoggedIn&&!function(e,t,a){if(!t.getElementById("truste-consent-js")){var r=t.getElementsByTagName(a)[0],i=t.createElement(a);i.async=!0,i.id="truste-consent-js",i.src="https://consent.trustarc.com/v2/notice/gufq6p",r.parentNode.insertBefore(i,r)}}(window,document,"script");var cookieValue=enableTrustArcCCM?"true":"false";setCookieVal(stage_env_cookie_prefix+"is_trustarc_enabled",cookieValue,30,!0); </script> <link onload="this.media == 'none'?this.media='all':''" rel="stylesheet" href="https://browserstack.wpenginepowered.com/wp-content/cache/css/bstack_47656e23e373daa4585215943c5f37e0.css?v=1730962262" media="none"/><noscript><link rel="stylesheet" href="https://browserstack.wpenginepowered.com/wp-content/cache/css/bstack_47656e23e373daa4585215943c5f37e0.css?v=1730962262" media="all"/></noscript><script id="bstack_preload_css" type="text/javascript"> /** Objects and variables defined so they are always defined when required */ var BrowserStackEnterprise = false, existingRows = 0, js_theme_path = {'templateUrl': 'https://browserstack.wpenginepowered.com/wp-content/themes/browserstack' }, loadWebTrackerEvents = [], EDS = {webEvents: "web_events", webEventsPii: "web_events_pii"}, bsLib = {}, pageLoadEventProps = {}, homepageLiveForTeamsExp = 0, headerMenuExpProps = {"header_menu":"control"}; if (typeof userDetails === 'undefined') { var userDetails = { location: {city: '', country: '', ip: '', region: '', longitude: '', latitude: ''} };} var loadScriptEvtSelctor = { "html": {JS:["https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/js/dist/bstack-load-scripts-header-js.js?v=1730119740"],CSS:[]}, "#header-habitat": {JS:["https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/js/dist/bstack-load-global-search-js.js?v=1712672333"],CSS:["https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/css/docs-search-var.css?v=1714401225"]}, }; </script> <script> var sentry_custom_tags = {"wp-post-type":"page","wp-page":"test-on-page"}; </script> <script> (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-KX7NTRZ'); </script> <script> var bsGaDomain = 'browserstack'; var EdsConfig = { "server": "eds.browserstack.com", "port": "443", "api": "5PJymLNdWrOwzQNC7J6SXBuUFQGWq4Vuw" }; </script> <script> // Add all acf variables here. // Freshchat Events var FreshChatConfig = { api : "624243d8-8006-4cae-a3f5-54cdaa3c156a", show : true, host: "https://wchat.freshchat.com", tags: ["free_user"], cookieName: "show_freshchat", inactivityTimer: 30000, scrollY: 1200, vwoShow: 0, startWorkingHours: "02:00:00", endWorkingHours: "22:00:00", customWidgetValue : false, chatBubble: { visible: true, text: "Hi there! Need any assistance?", timer: 0 }, customWidgetChat: { visible: true, text: "Talk to an Expert" }, enableFreshChatOnPage: 0, enableFreshChatFullTime : false, bs_freshchat_auto_open_experiment: true, bs_freshchat_email_experiment: false, //adding for email experiment bs_freshchat_dg_email_experiment: false //adding for dg email fc overlay experiment } //enable zoominfo JS var enableZoomInfoJs = 1; var floatingBannerEvents = { interact: "InteractedWithFloatingBanner", click: "Get Started Free", close: "close" } var popUpCSFOptions = { ref: "", cta_ref: "", source: "", vwoShow: 0, calendly: "", vwoShowCalendly: 0 }, popUpSignUpOptions = { source: "", vwoShow: 0 }; var pageProductMapping = { 'live': 'Live', 'live-product': 'Live', 'automate': 'Automate', 'accessibility-testing': 'Accessibility Testing', 'automate-turboscale': 'Automate TurboScale', 'accessibility-automation': 'Accessibility Automation', 'percy': 'Percy', 'percy-product': 'Percy', 'low-code-automation': 'Low Code Automation', 'app-live': 'App Live', 'app-automate': 'App Automate', 'app-automate-product': 'App Automate', 'app-accessibility-testing': 'App Accessibility Testing', 'app-percy': 'App Percy', 'test-management': 'Test Management', 'test-observability': 'Test Observability', 'performance-testing': 'Performance Testing' }, pageProductFullSlug = window.location.pathname, pageProductSlug = pageProductFullSlug.replace(/^\/|\/$/g, ''), pageProductName = getProductName(pageProductSlug); function getProductName(pageProductName) { if (pageProductName !== '') { var lowerCasePageSlug = pageProductName.toLowerCase(), startingProductName = pageProductFullSlug.split('/')[1]; // Check if the pageSlug starts with the product name if (lowerCasePageSlug.startsWith(startingProductName) && pageProductMapping.hasOwnProperty(startingProductName)) { return pageProductMapping[startingProductName]; } else { return 'Generic'; } } else { return 'Generic'; } } var AlgoliaSearchConfig = 'prod_global_search_reindex'; </script> <meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1'/> <link rel="preconnect" href="https://dev.visualwebsiteoptimizer.com"/> <script type='text/javascript' id='vwoCode'> if (window.innerWidth > 979) { window._vwo_code || (function () { var account_id = 366135, version = 2.1, settings_tolerance = 5000, hide_element = 'body', hide_element_style = 'opacity:0 !important;filter:alpha(opacity=0) !important;background:none !important', /* DO NOT EDIT BELOW THIS LINE */ f = false, w = window, d = document, v = d.querySelector('#vwoCode'), cK = '_vwo_' + account_id + '_settings', cc = {}; try { var c = JSON.parse(localStorage.getItem('_vwo_' + account_id + '_config')); cc = c && typeof c === 'object' ? c : {} } catch (e) { } var stT = cc.stT === 'session' ? w.sessionStorage : w.localStorage; code = { use_existing_jquery: function () { return typeof use_existing_jquery !== 'undefined' ? use_existing_jquery : undefined }, library_tolerance: function () { return typeof library_tolerance !== 'undefined' ? library_tolerance : undefined }, settings_tolerance: function () { return cc.sT || settings_tolerance }, hide_element_style: function () { return '{' + (cc.hES || hide_element_style) + '}' }, hide_element: function () { if (performance.getEntriesByName('first-contentful-paint')[0]) { return '' } return typeof cc.hE === 'string' ? cc.hE : hide_element }, getVersion: function () { return version }, finish: function (e) { if (!f) { f = true; var t = d.getElementById('_vis_opt_path_hides'); if (t) t.parentNode.removeChild(t); if (e) (new Image).src = 'https://dev.visualwebsiteoptimizer.com/ee.gif?a=' + account_id + e } }, finished: function () { return f }, addScript: function (e) { var t = d.createElement('script'); t.type = 'text/javascript'; if (e.src) { t.src = e.src } else { t.text = e.text } d.getElementsByTagName('head')[0].appendChild(t) }, load: function (e, t) { var i = this.getSettings(), n = d.createElement('script'), r = this; t = t || {}; if (i) { n.textContent = i; d.getElementsByTagName('head')[0].appendChild(n); if (!w.VWO || VWO.caE) { stT.removeItem(cK); r.load(e) } } else { var o = new XMLHttpRequest; o.open('GET', e, true); o.withCredentials = !t.dSC; o.responseType = t.responseType || 'text'; o.onload = function () { if (t.onloadCb) { return t.onloadCb(o, e) } if (o.status === 200) { _vwo_code.addScript({ text: o.responseText }) } else { _vwo_code.finish('&e=loading_failure:' + e) } }; o.onerror = function () { if (t.onerrorCb) { return t.onerrorCb(e) } _vwo_code.finish('&e=loading_failure:' + e) }; o.send() } }, getSettings: function () { try { var e = stT.getItem(cK); if (!e) { return } e = JSON.parse(e); if (Date.now() > e.e) { stT.removeItem(cK); return } return e.s } catch (e) { return } }, init: function () { if (d.URL.indexOf('__vwo_disable__') > -1) return; var e = this.settings_tolerance(); w._vwo_settings_timer = setTimeout(function () { _vwo_code.finish(); stT.removeItem(cK) }, e); var t; if (this.hide_element() !== 'body') { t = d.createElement('style'); var i = this.hide_element(), n = i ? i + this.hide_element_style() : '', r = d.getElementsByTagName('head')[0]; t.setAttribute('id', '_vis_opt_path_hides'); v && t.setAttribute('nonce', v.nonce); t.setAttribute('type', 'text/css'); if (t.styleSheet) t.styleSheet.cssText = n; else t.appendChild(d.createTextNode(n)); r.appendChild(t) } else { t = d.getElementsByTagName('head')[0]; var n = d.createElement('div'); n.style.cssText = 'z-index: 2147483647 !important;position: fixed !important;left: 0 !important;top: 0 !important;width: 100% !important;height: 100% !important;background: white !important;'; n.setAttribute('id', '_vis_opt_path_hides'); n.classList.add('_vis_hide_layer'); t.parentNode.insertBefore(n, t.nextSibling) } var o = 'https://dev.visualwebsiteoptimizer.com/j.php?a=' + account_id + '&u=' + encodeURIComponent(d.URL) + '&vn=' + version; if (w.location.search.indexOf('_vwo_xhr') !== -1) { this.addScript({ src: o }) } else { this.load(o + '&x=true') } } }; w._vwo_code = code; code.init(); })(); } </script> <meta name="description" content="What is Mobile App Testing? How to perform mobile app testing? What are different types of mobile apps and testing strategies? Read our detailed guide."/> <link rel="canonical" href="https://www.browserstack.com/mobile-app-testing"/> <meta property="og:locale" content="en_US"/> <meta property="og:type" content="article"/> <meta property="og:title" content="Mobile App Testing: Definition, Why it is Important, How to do it"/> <meta property="og:description" content="What is Mobile App Testing? How to perform mobile app testing? What are different types of mobile apps and testing strategies? Read our detailed guide."/> <meta property="og:url" content="https://browserstack.wpengine.com/mobile-app-testing/"/> <meta property="og:site_name" content="BrowserStack"/> <meta property="article:publisher" content="https://www.facebook.com/BrowserStack/"/> <meta property="article:modified_time" content="2022-02-17T11:10:39+00:00"/> <meta name="twitter:card" content="summary_large_image"/> <meta name="twitter:site" content="@browserstack"/> <noscript><style> .wpb_animate_when_almost_visible { opacity: 1; }</style></noscript> <script> AmplitudeAnalytics = { "api_key": "985eaa9c45d824a94344e64a2a3ca724" }; var googleAuthClientID = "1066772918720-olim1a4ub186pm1siktrubbkg7mkvom9.apps.googleusercontent.com"; </script> <style id="bstack-load-error-css" type="text/css" media="none">.wrapper>main{visibility:visible}.footer-habitat,.secondary-nav,.page-wrapper-on-load{visibility:visible}.contact-pill,.bs-modal,.docs--container{display:block}.header-habitat .secondary-nav .product-name{font-size:28px}.header-habitat .secondary-nav .show-logo{font-size:21px;padding-left:20px}</style> <script id="bstack-cookie-remove" type="text/javascript"> var cookiesRemovalConfig = { enable_cookie_removal_feature : "1", add_cookies_to_remove : "_vis_opt_exp_899_combi,_vis_opt_exp_873_combi,_vis_opt_exp_874_combi,_vis_opt_exp_911_combi,_vis_opt_exp_919_combi", }; </script> </head> <body class="page-template page-template-templates page-template-page-microsite page-template-templatespage-microsite-php page page-id-31276 mobile-app-testing persistent-header enable-support-v2 bstack-wp docs-search-auth-user wpb-js-composer js-comp-ver-7.7.2 vc_responsive"> <div id="consent-banner"></div> <script type="text/javascript"> try { var intS = 0; if (bstackCheckAcceptCookie) { document.body.classList.add("cookie-notification-hide"); } var eTimeVar = setInterval(function() { var promoBar = document.getElementById("promo-notification"), cookieNotification = document.getElementById("cookie-notification"), cookieConsentInfo = getCookieVal("ConsentGeoDetail", true) ? JSON.parse(getCookieVal("ConsentGeoDetail", true)) : {}, promoBarCookie = getCookieVal("closePromoNotification", true), isSupported = false; if (promoBar) { if (promoBarCookie || window.innerWidth <= 979) { promoBar.remove(); } else if (promoBar && !promoBarCookie) { promoBar.classList.remove('hide'); } } if (getCookieVal("UserOptCookie", true) && cookieNotification && cookieConsentInfo.showNewBanner) { cookieNotification.classList.remove("hide"); } if (++intS >= 10) { clearInterval(eTimeVar); } }, 100); } catch (e) {} </script> <noscript><iframe class="b-lazy b-lazy-hidden" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzIDInPjwvc3ZnPg==" data-lazysrc="https://www.googletagmanager.com/ns.html?id=GTM-KX7NTRZ" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <div class="wrapper" id="page__wrapper"> <a href="#main-content" class="skip-link">Skip to main content</a> <header id="header-habitat" class="header-habitat marketing-header "> <div class="container"> <div class="row"> <div class="col-xs-12 custom-header-col"> <div class="bstack-mm "> <a class="bstack-mm-logo" href="/" title="BrowserStack Logo"> <img src="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/bstack-logo-global.svg" data-skiplazy="1" width="188" height="32" alt="BrowserStack Logo"/> </a> <button class="bstack-mm-search-menu doc-search-menu dropdown-toggle doc-search-cta doc-search-menu-icon doc-menu-toggle hide-md hide-lg hide-xl" aria-label="Search"></button> <button class="collapse-toggle pull-right bs-collapse-toggle" data-target="primary-menu" id="primary-menu-toggle" aria-label="Menu Toggle"> <div class="bar bar1"></div> <div class="bar bar2"></div> <div class="bar bar3"></div> </button> <div class="hide-sm hide-xs bstack-mm-container" id="primary-menu-container"> <div class="bstack-mm-nav"><div class="bstack-mm-products-nav bstack-mm-li"><button class="bstack-mm-btn bstack-mm-btn-products" data-target="products-dd-menu" id="products-dd-toggle" aria-label="Products" aria-expanded="false" aria-haspopup="true">Products<span class="bstack-mm-down"><svg class="bstack-mm-down-svg" role="presentation" width="10" height="6" viewBox="0 0 10 6" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 1.5L5 5L1.5 1.5" stroke="#fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg> </span></button><div id="products-dd-menu" class="bstack-mm-sub-nav" aria-label='Products' ><div class='bstack-mm-sub-nav-holder'> <div role="tablist" aria-labelledby="products-dd-toggle" class="bstack-mm-sub-li bstack-mm-sub-li-tabslist"> <button title="Web Testing" aria-label="Web Testing" id="products-dd-tab-1" type="button" role="tab" aria-selected="true" aria-controls="products-dd-tabpanel-1" class="bstack-mm-sub-nav-tab active " ><span class="item-text">Web Testing</span> <div class="item-desc">Test websites or web apps on real browsers</div></button> <button title="App Testing" aria-label="App Testing" id="products-dd-tab-2" type="button" role="tab" aria-selected="false" aria-controls="products-dd-tabpanel-2" class="bstack-mm-sub-nav-tab " ><span class="item-text">App Testing</span> <div class="item-desc">Test iOS & Android mobile apps on real devices</div></button></div> <div class="bstack-mm-sub-li bstack-mm-sub-li-tabs-content"> <div class="bstack-mm-sub-nav-tabpanel-wrapper"> <div role="tabpanel" id="products-dd-tabpanel-1" aria-labelledby="products-dd-tab-1" class="bstack-mm-sub-nav-tabpanel" > <div id="products-dd-tabpanel-1-inner-1" class="bstack-mm-sub-nav-tabpanel-inner bstack-mm-sub-nav-tabpanel-inner-v1"> <div class=" bstack-mm-sub-nav-tabcol"><div class="bstack-mm-sub-nav-tabpanel-heading "><span class="item-text">Manual Testing</span></div> <div ><a title="Live" href="/live" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-8 " aria-label="Live"><span class="item-text">Live</span> <div class="item-desc">Cross-browser testing </div></a></div> <div ><a title="Bug Capture" href="/bug-capture" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-13 " aria-label="Bug Capture"><span class="item-text">Bug Capture</span> <div class="item-desc">Report & resolve bugs faster</div></a></div> <div ><a title="Accessibility Testing" href="/accessibility-testing" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-1 " aria-label="Accessibility Testing"><span class="item-text">Accessibility Testing</span> <div class="item-desc">Test WCAG compliance</div></a></div></div> <div class=" bstack-mm-sub-nav-tabcol"><div class="bstack-mm-sub-nav-tabpanel-heading "><span class="item-text">Test Automation</span></div> <div ><a title="Automate" href="/automate" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-2 " aria-label="Automate"><span class="item-text">Automate</span> <div class="item-desc">Browser automation grid</div></a></div> <div ><a title="Automate TurboScale" href="/automate-turboscale" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-11 " aria-label="Automate TurboScale"><span class="item-text">Automate TurboScale</span> <div class="item-desc">Automation on your Cloud</div></a></div> <div ><a title="Accessibility Automation" href="/accessibility-testing/features/automated-tests" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-12 " aria-label="Accessibility Automation"><span class="item-text">Accessibility Automation</span> <div class="item-desc">Automate WCAG testing</div></a></div> <div ><a title="Percy" href="/percy" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-5 " aria-label="Percy"><span class="item-text">Percy</span> <div class="item-desc">Visual testing & review</div></a></div> <div ><a title="Low Code Automation" href="/low-code-automation" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-10 " aria-label="Low Code Automation"><span class="item-text">Low Code Automation</span> <div class="item-desc">Automation without coding</div></a></div></div> <div class="bstack-mm-sub-nav-tabcol-third-col bstack-mm-sub-nav-tabcol"><div class="bstack-mm-sub-nav-tabpanel-heading "><span class="item-text">Management & Optimization</span></div> <div ><a title="Test Management" href="/test-management" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-7 " aria-label="Test Management"><span class="item-text">Test Management</span> <div class="item-desc">Unify & track all test cases</div></a></div> <div ><a title="Test Observability" href="/test-observability" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-9 " aria-label="Test Observability"><span class="item-text">Test Observability</span> <div class="item-desc">Test debugging & insights</div></a></div></div> <div class="bstack-mm-sub-nav-tabcol-fourth-col bstack-mm-sub-nav-tabcol"><div class="bstack-mm-sub-nav-tabpanel-heading "><span class="item-text">For Teams</span></div> <div ><a title="Enterprise" href="/enterprise?ref=header-web-testing" class=" bstack-mm-link " aria-label="Enterprise"><span class="item-text">Enterprise</span></a></div> <div class="hide"><a title="Code Quality" href="/codequality?ref=header-web-testing" class=" bstack-mm-link " aria-label="Code Quality"><span class="item-text">Code Quality</span></a></div></div></div> <div id="products-dd-tabpanel-1-inner-2" class="bstack-mm-sub-nav-tabpanel-inner bstack-mm-sub-nav-tabpanel-inner-v2"> <div class="tab-inner-2-heading bstack-mm-sub-nav-tabcol"> <div ><a title="Live" href="/live" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-8 " aria-label="Live"><span class="item-text">Live</span> <div class="item-desc">Manual cross-browser testing</div></a></div> <div ><a title="Percy" href="/percy" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-5 " aria-label="Percy"><span class="item-text">Percy</span> <div class="item-desc">Automated visual testing</div></a></div> <div ><a title="Test Observability" href="/test-observability" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-9 " aria-label="Test Observability"><span class="item-text">Test Observability</span> <div class="item-desc">Test debugging & insights</div></a></div> <div ><a title="Low Code Automation" href="/low-code-automation" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-10 " aria-label="Low Code Automation"><span class="item-text">Low Code Automation</span> <div class="item-desc">Automation without coding</div></a></div> <div ><a title="Accessibility Automation" href="/accessibility-testing/features/automated-tests" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-12 " aria-label="Accessibility Automation"><span class="item-text">Accessibility Automation</span> <div class="item-desc">Automate WCAG & ADA testing</div></a></div></div> <div class="tab-inner-2-heading bstack-mm-sub-nav-tabcol"> <div ><a title="Automate" href="/automate" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-2 " aria-label="Automate"><span class="item-text">Automate</span> <div class="item-desc">Browser automation grid</div></a></div> <div ><a title="Accessibility Testing" href="/accessibility-testing" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-1 " aria-label="Accessibility Testing"><span class="item-text">Accessibility Testing</span> <div class="item-desc">Test WCAG & ADA compliance</div></a></div> <div ><a title="Test Management" href="/test-management" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-7 " aria-label="Test Management"><span class="item-text">Test Management</span> <div class="item-desc">Unify & track all test cases</div></a></div> <div ><a title="Automate TurboScale" href="/automate-turboscale" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-11 " aria-label="Automate TurboScale"><span class="item-text">Automate TurboScale</span> <div class="item-desc">Grid management at scale</div></a></div></div></div></div> <div role="tabpanel" id="products-dd-tabpanel-2" aria-labelledby="products-dd-tab-2" class="bstack-mm-sub-nav-tabpanel" > <div id="products-dd-tabpanel-2-inner-1" class="bstack-mm-sub-nav-tabpanel-inner bstack-mm-sub-nav-tabpanel-inner-v1"> <div class=" bstack-mm-sub-nav-tabcol"><div class="bstack-mm-sub-nav-tabpanel-heading "><span class="item-text">Manual Testing</span></div> <div ><a title="App Live" href="/app-live" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-4 " aria-label="App Live"><span class="item-text">App Live</span> <div class="item-desc">Real device testing</div></a></div> <div ><a title="App Accessibility Testing" href="/app-accessibility-testing" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-1 " aria-label="App Accessibility Testing"><span class="item-text">App Accessibility Testing</span> <div class="item-desc">Test WCAG compliance</div></a></div></div> <div class=" bstack-mm-sub-nav-tabcol"><div class="bstack-mm-sub-nav-tabpanel-heading "><span class="item-text">Test Automation</span></div> <div ><a title="App Automate" href="/app-automate" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-3 " aria-label="App Automate"><span class="item-text">App Automate</span> <div class="item-desc">Real device automation cloud</div></a></div> <div ><a title="App Percy" href="/app-percy" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-5 " aria-label="App Percy"><span class="item-text">App Percy</span> <div class="item-desc">Visual testing for mobile apps</div></a></div></div> <div class="bstack-mm-sub-nav-tabcol-third-col bstack-mm-sub-nav-tabcol"><div class="bstack-mm-sub-nav-tabpanel-heading "><span class="item-text">Management & Optimization</span></div> <div ><a title="Test Management" href="/test-management" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-7 " aria-label="Test Management"><span class="item-text">Test Management</span> <div class="item-desc">Unify & track all test cases</div></a></div> <div ><a title="Test Observability" href="/test-observability" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-9 " aria-label="Test Observability"><span class="item-text">Test Observability</span> <div class="item-desc">Test debugging & insights</div></a></div></div> <div class="bstack-mm-sub-nav-tabcol-fourth-col bstack-mm-sub-nav-tabcol"><div class="bstack-mm-sub-nav-tabpanel-heading "><span class="item-text">For Teams</span></div> <div ><a title="Enterprise" href="/enterprise?ref=header-web-testing" class=" bstack-mm-link " aria-label="Enterprise"><span class="item-text">Enterprise</span></a></div> <div class="hide"><a title="Code Quality" href="/codequality?ref=header-web-testing" class=" bstack-mm-link " aria-label="Code Quality"><span class="item-text">Code Quality</span></a></div></div></div> <div id="products-dd-tabpanel-2-inner-2" class="bstack-mm-sub-nav-tabpanel-inner bstack-mm-sub-nav-tabpanel-inner-v2"> <div class="tab-inner-2-heading bstack-mm-sub-nav-tabcol"> <div ><a title="App Live" href="/app-live" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-4 " aria-label="App Live"><span class="item-text">App Live</span> <div class="item-desc">Manual real device testing</div></a></div> <div ><a title="App Percy" href="/app-percy" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-5 " aria-label="App Percy"><span class="item-text">App Percy</span> <div class="item-desc">Automated visual testing</div></a></div> <div ><a title="Test Management" href="/test-management" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-7 " aria-label="Test Management"><span class="item-text">Test Management</span> <div class="item-desc">Unify & track all test cases</div></a></div></div> <div class="tab-inner-2-heading bstack-mm-sub-nav-tabcol"> <div ><a title="App Automate" href="/app-automate" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-3 " aria-label="App Automate"><span class="item-text">App Automate</span> <div class="item-desc">Automate on real device cloud</div></a></div> <div ><a title="Test Observability" href="/test-observability" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-9 " aria-label="Test Observability"><span class="item-text">Test Observability</span> <div class="item-desc">Test debugging & insights</div></a></div> <div ><a title="App Accessibility Testing" href="/app-accessibility-testing" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-1 " aria-label="App Accessibility Testing"><span class="item-text">App Accessibility Testing</span> <div class="item-desc">Test WCAG compliance</div></a></div></div></div></div> </div><div class="bstack-mm-sub-nav-tabpanel-footer"> <div class="bstack-mm-sub-nav-tabcol-liner bstack-mm-sub-nav-tabcol-liner-web"><div class="bstack-mm-sub-nav-tabcol-liner-inner "><div class="item-desc">Empower teams with </div><a title="BrowserStack for Enterprise ->" href="/enterprise?ref=header-web-testing" class=" bstack-mm-link " aria-label="BrowserStack for Enterprise ->"><span class="item-text">BrowserStack for Enterprise -></span></a></div><div class="bstack-mm-sub-nav-tabcol-liner-inner vwo-hide"><div class="item-desc">Explore </div><a title="BrowserStack Code Quality ->" href="/codequality?ref=header-web-testing" class=" bstack-mm-link " aria-label="BrowserStack Code Quality ->"><span class="item-text">BrowserStack Code Quality -></span></a></div></div> <div class="bstack-mm-sub-nav-tabcol-liner bstack-mm-sub-nav-tabcol-liner-app hide"><div class="bstack-mm-sub-nav-tabcol-liner-inner "><div class="item-desc">Empower teams with </div><a title="BrowserStack for Enterprise ->" href="/enterprise?ref=header-app-testing" class=" bstack-mm-link " aria-label="BrowserStack for Enterprise ->"><span class="item-text">BrowserStack for Enterprise -></span></a></div><div class="bstack-mm-sub-nav-tabcol-liner-inner vwo-hide"><div class="item-desc">Explore </div><a title="BrowserStack Code Quality ->" href="/codequality?ref=header-app-testing" class=" bstack-mm-link " aria-label="BrowserStack Code Quality ->"><span class="item-text">BrowserStack Code Quality -></span></a></div></div></div></div></div></div></div><div class="bstack-mm-solutions-nav vwo-hide bstack-mm-li"><button class="bstack-mm-btn bstack-mm-btn-solutions" data-target="solutions-dd-menu" id="solutions-dd-toggle" aria-label="Solutions" aria-expanded="false" aria-haspopup="true">Solutions<span class="bstack-mm-down"><svg class="bstack-mm-down-svg" role="presentation" width="10" height="6" viewBox="0 0 10 6" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 1.5L5 5L1.5 1.5" stroke="#fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg> </span></button><div id="solutions-dd-menu" class="bstack-mm-sub-nav" aria-label='Solutions' ><div class='bstack-mm-sub-nav-holder'> <div class="bstack-mm-sub-li bstack-mm-sub-li-mm-sub-nav-tabpanel-heading"><div class=" bstack-mm-sub-nav-heading"><span class="item-text">Use Cases</span></div> <div ><a title="Test Your Websites" href="/web-testing-solutions" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-sol bstack-mm-sprite-sol-2 " aria-label="Test Your Websites"><span class="item-text">Test Your Websites</span> <div class="item-desc">Deliver bug-free web experiences</div></a></div> <div ><a title="Test Your Apps" href="/app-testing-solutions" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-sol bstack-mm-sprite-sol-3 " aria-label="Test Your Apps"><span class="item-text">Test Your Apps</span> <div class="item-desc">Deliver bug-free app experiences</div></a></div> <div ><a title="Scale Test Automation" href="/scale-automation-solutions" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-sol bstack-mm-sprite-sol-4 " aria-label="Scale Test Automation"><span class="item-text">Scale Test Automation</span> <div class="item-desc">Stable builds & faster releases</div></a></div> <div ><a title="Test on Real Devices" href="/real-device-cloud-page" class=" bstack-mm-link bstack-mm-sprite bstack-mm-sprite-sol bstack-mm-sprite-sol-1 " aria-label="Test on Real Devices"><span class="item-text">Test on Real Devices</span> <div class="item-desc">20,000+ real iOS & Android devices</div></a></div></div> <div class="bstack-mm-sub-li bstack-mm-sub-li-tabscontent-footer"><div class=" bstack-mm-sub-nav-heading"><span class="item-text">Tab Content Footer</span></div> <div class="bstack-mm-sub-nav-tabcol-sol"><div class="bstack-mm-sub-nav-tabcol-sol-inner "><div class="item-desc">Have a doubt?</div><button data-sourceval="solutions_top_nav_ttu" data-refval="solutions_top_nav_ttu" title="Talk to Us ->" class=" bstack-mm-link open-csf-form-v2 bstack-mm-sub-nav-tabcol-sol-btn " aria-label="Talk to Us ->"><span class="item-text">Talk to Us -></span> <div class="item-desc">Have a doubt?</div></button></div></div></div></div></div></div><div class="bstack-mm-developers-nav bstack-mm-li"><button class="bstack-mm-btn bstack-mm-btn-developers" data-target="developers-dd-menu" id="developers-dd-toggle" aria-label="Developers" aria-expanded="false" aria-haspopup="true">Developers<span class="bstack-mm-down"><svg class="bstack-mm-down-svg" role="presentation" width="10" height="6" viewBox="0 0 10 6" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 1.5L5 5L1.5 1.5" stroke="#fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg> </span></button><div id="developers-dd-menu" class="bstack-mm-sub-nav" aria-label='Developers' ><div class='bstack-mm-sub-nav-holder'> <div class="bstack-mm-sub-li"><a title="Documentation" href="/docs" class=" bstack-mm-link bstack-mm-dev-link-documentation " aria-label="Documentation"><span class="item-text">Documentation</span></a></div> <div class="bstack-mm-sub-li"><a title="Support" href="/support" class=" bstack-mm-link bstack-mm-dev-link-support " aria-label="Support"><span class="item-text">Support</span></a></div> <div class="bstack-mm-sub-li"><a title="Status" href="https://status.browserstack.com" class=" bstack-mm-link bstack-mm-dev-link-status " aria-label="Status"><span class="item-text">Status</span></a></div> <div class="bstack-mm-sub-li"><a title="Release Notes" href="/release-notes" class=" bstack-mm-link bstack-mm-dev-link-release-notes " aria-label="Release Notes"><span class="item-text">Release Notes</span></a></div> <div class="bstack-mm-sub-li"><a title="Open Source" href="/open-source" class=" bstack-mm-link bstack-mm-dev-link-open-source " aria-label="Open Source"><span class="item-text">Open Source</span></a></div> <div class="bstack-mm-sub-li"><a title="Events" href="/events" class=" bstack-mm-link bstack-mm-dev-link-events " aria-label="Events"><span class="item-text">Events</span></a></div> <div class="bstack-mm-sub-li"><a title="Meetups" href="/meetups" class=" bstack-mm-link bstack-mm-dev-link-meetups " aria-label="Meetups"><span class="item-text">Meetups</span></a></div> <div class="bstack-mm-sub-li"><a title="Test University Beta" href="/test-university" class=" bstack-mm-link bstack-mm-dev-link-test-university " aria-label="Test University Beta"><span class="item-text">Test University <span class="btn-badge btn-primary">Beta</span></span></a></div> <div class="bstack-mm-sub-li"><a title="Champions" href="/browserstack-champions" class=" bstack-mm-link bstack-mm-dev-link-browserstack-champions " aria-label="Champions"><span class="item-text">Champions</span></a></div></div></div></div><div class="bstack-mm-li"><a title="Live for Teams" href="/live-for-teams" class=" bstack-mm-link bstack-mm-main-link-live-for-teams " aria-label="Live for Teams"><span class="item-text">Live for Teams</span></a></div><div class="bstack-mm-li"><a title="Pricing" href="/pricing" class=" bstack-mm-link bstack-mm-main-link-pricing " aria-label="Pricing"><span class="item-text">Pricing</span></a></div></div><div class="bstack-mm-nav bstack-mm-nav--right"><div class="contact-sales-cta bstack-mm-li"><button data-sourceval="Primary_Header_Resources_Demo_CTA" data-refval="Primary_Header_Resources_Demo_CTA" title="Contact Sales" class=" bstack-mm-link open-csf-form-v2 btn-secondary-white " aria-label="Contact Sales"><span class="item-text">Contact Sales</span></button></div><div class="sign-in-link bstack-mm-li"><a title="Sign in" href="/users/sign_in" class=" bstack-mm-link bstack-mm-main-link-sign-in " aria-label="Sign in"><span class="item-text">Sign in</span></a></div><div class="free-trial-btn bstack-mm-li"><a title="Free Trial" href="/users/sign_up" class=" bstack-mm-link bstack-mm-cta-white bstack-mm-main-link-free-trial " aria-label="Free Trial"><span class="item-text">Free Trial</span></a></div></div> </div> <button class="bstack-mm-search-menu doc-search-menu dropdown-toggle doc-search-cta doc-search-menu-icon doc-menu-toggle hide-sm hide-xs" aria-label="Search"></button> </div> </div> </div></div><div class="ds__container" id="doc-search-container"> <div class="ds__overlay" id="doc-search-overlay"></div> <nav class="ds__top-bar" style="display:none;"> <div class="container"> <div class="ds__input__container input-box-focused"> <div id="doc-search-box" class="doc-search-box"> <div class="ais-SearchBox"> <form action="/search" method="get" role="search" class="ais-SearchBox-form" onsubmit="return validateSearchForm()"> <input class="ais-SearchBox-input" id="doc-search-box-input" name="query" type="search" placeholder="Search across browserstack.com" autocomplete="off" autocorrect="off" autocapitalize="off" maxlength="512" autofocus aria-label="Search across browserstack.com"> <ul class="global-search" id="global-search-autocomplete" role="listbox" aria-labelledby="search-input"></ul> <input type="hidden" value="all" name="type"> <div class="ds__input__handle hide" id="ds-input-handle"> <button class="ds__input__handle--btn ds__input__handle--reset" type="reset" title="Clear the search query." role="button"> <img class="b-lazy b-lazy-hidden ds__input__handle--btn__clear-image ds__input_handle__clear-image" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzIDInPjwvc3ZnPg==" data-lazy-type="image" data-id="" data-lazy-src="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/docs-search/ic-clear.svg" width="20" height="20" alt="Clear"/><noscript><img class="ds__input__handle--btn__clear-image ds__input_handle__clear-image" src="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/docs-search/ic-clear.svg" width="20" height="20" alt="Clear"/></noscript> </button> <button class="ds__input__handle--btn ds__input__handle--submit" type="submit" title="Submit the search query." role="button"> Press </button> </div> </form> </div> </div> </div> <button aria-label="Close Search Filter" class="ds--close"></button> </div> </nav></div> </header> <div class="microsite-templ-progress-bar"></div><main role="main" id="main-content"> <article id="post-31276" class="post-31276 page type-page status-publish hentry"> <div class="microsite-templ"> <div class="microsite-templ-hero" data-lazy-style="background-image: url(https://browserstack.wpenginepowered.com/wp-content/uploads/2024/10/SEO-long-Form-Background@2x.png);"data-lazy-mob-style="background-image: url(https://browserstack.wpenginepowered.com/wp-content/uploads/2024/10/SEO-long-Form-Background@2x-640x144.png);"> <div class="container"> <div class="row"> <div class="col-xs-12 no-pad"> <h1 class="microsite-templ-hero-heading">Mobile App Testing</h1> <div class="microsite-templ-hero-desc">Mobile App Testing involves analyzing mobile apps for functionality, usability, visual appeal, and consistency across multiple mobile devices. It helps ensure an optimal user experience, irrespective of the device used to access the app.</div> <div class="text-center microsite-templ-hero-btn"> <a class="btn btn-lg col-center microsite-templ-hero--btn btn-primary " href="https://www.browserstack.com/responsive?ref=lf-responsive-design-get-started-free-hero">Get Started for Free</a> </div> </div> </div> </div> </div> <div class="microsite-templ-brands"> </div> <div class="microsite-templ-content "> <aside class="col-sm-4 microsite-templ-sidebar"> <div id="microsite-templ-sidebar-abs" class="microsite-templ-sidebar-abs"> <div class="bstack-toc " > <div class="bstack-toc__accordion"><div class="bstack-toc__heading"><span class="bstack-toc__heading-title hide-xs hide-sm">IN THIS ARTICLE</span><button type="button" aria-expanded="false" class="bstack-toc__accordion-trigger hide-md hide-lg hide-xl" aria-controls="toc_sec_content_674ebea5c1a1a" id="accordion674ebea5c1a1aid"><span class="bstack-toc__accordion-title">IN THIS ARTICLE<span class="accordion-icon"></span></span></button></div><div class="bstack-toc__list bstack-toc__accordion-content" id="toc_sec_content_674ebea5c1a1a" role="region" aria-labelledby="accordion674ebea5c1a1aid" ><ul></li><li><a class="active" data-scrollto="#toc0" href="#toc0">What is Mobile App Testing?</a></li><li><a data-scrollto="#toc1" href="#toc1">Why is Mobile App Testing critical?</a></li><li><a data-scrollto="#toc2" href="#toc2">How does App Testing benefit your business?</a></li><li><a data-scrollto="#toc3" href="#toc3">How is Mobile App Testing different from Web App Testing?</a></li><li><a data-scrollto="#toc4" href="#toc4">Types of Mobile Apps</a></li><li><a data-scrollto="#toc5" href="#toc5">When is Cross Browser Testing Done?</a></li><li><a data-scrollto="#toc6" href="#toc6">What features are analyzed in an App Test?</a></li><li><a data-scrollto="#toc7" href="#toc7">Who performs Mobile App Testing?</a></li><li><a data-scrollto="#toc8" href="#toc8">How do I select the right devices for Mobile App Testing?</a></li><li><a data-scrollto="#toc9" href="#toc9">Common mistakes to avoid while running Mobile App Tests</a></li><li><a data-scrollto="#toc10" href="#toc10">Strategies for Mobile App Testing</a></li><li><a data-scrollto="#toc11" href="#toc11">How does BrowserStack help with Mobile App Testing?</a></li></ul></div></div> </div> <div class="microsite-templ-sidebar__heading">Other Links</div> <ul class="microsite-templ-sidebar__other-links"> <li> <a target="_blank" href="/selenium?ref=lf-mobile-app-testing-to-selenium-ql">Selenium</a> </li> <li> <a target="_blank" href="/emulators-simulators?ref=lf-mobile-app-testing-to-emulators-simulators-ql">Emulators & Simulators</a> </li> <li> <a target="_blank" href="/android-emulators?ref=lf-mobile-app-testing-to-android-emulators-ql">Android Emulators</a> </li> <li> <a target="_blank" href="/responsive-design?ref=lf-mobile-app-testing-to-responsive-design-ql">Responsive Design</a> </li> <li> <a target="_blank" href="/cross-browser-testing?ref=lf-mobile-app-testing-to-cross-browser-testing-ql">Cross Browser Testing</a> </li> </ul> </div> </aside> <div class="col-sm-8 microsite-templ-main-content"> <div class="bstack-main-content-breadcrumbs" role="navigation"><a href="/" title="BrowserStack Home"><svg width="14" height="15" viewBox="0 0 16 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.2105 15.5H2.78947C1.80117 15.5 1 14.6988 1 13.7105V7.74214C1 7.22522 1.22353 6.73355 1.61305 6.39372L7.12821 1.58202C7.8293 0.970359 8.88214 0.997989 9.55017 1.64558L14.4561 6.40128C14.8037 6.73833 15 7.2019 15 7.68614V13.7105C15 14.6988 14.1988 15.5 13.2105 15.5Z" stroke="#0070F0" stroke-width="1.2"/> <path d="M4.91455 12.564H11.5692" stroke="#0070F0" stroke-width="1.2" stroke-linecap="round"/></svg></a> <span class="bstack-main-content-breadcrumbs-separator"> / </span> <span class="current">Mobile App Testing: Definition, Why it is Important, How to do it</span></div> <div class="hide-md hide-lg hide-xl microsite-templ__toc"> <div class="bstack-toc " > <div class="bstack-toc__accordion"><div class="bstack-toc__heading"><span class="bstack-toc__heading-title hide-xs hide-sm">IN THIS ARTICLE</span><button type="button" aria-expanded="false" class="bstack-toc__accordion-trigger hide-md hide-lg hide-xl" aria-controls="toc_sec_content_674ebea66ec99" id="accordion674ebea66ec99id"><span class="bstack-toc__accordion-title">IN THIS ARTICLE<span class="accordion-icon"></span></span></button></div><div class="bstack-toc__list bstack-toc__accordion-content" id="toc_sec_content_674ebea66ec99" role="region" aria-labelledby="accordion674ebea66ec99id" ><ul></li><li><a class="active" data-scrollto="#toc0" href="#toc0">What is Mobile App Testing?</a></li><li><a data-scrollto="#toc1" href="#toc1">Why is Mobile App Testing critical?</a></li><li><a data-scrollto="#toc2" href="#toc2">How does App Testing benefit your business?</a></li><li><a data-scrollto="#toc3" href="#toc3">How is Mobile App Testing different from Web App Testing?</a></li><li><a data-scrollto="#toc4" href="#toc4">Types of Mobile Apps</a></li><li><a data-scrollto="#toc5" href="#toc5">When is Cross Browser Testing Done?</a></li><li><a data-scrollto="#toc6" href="#toc6">What features are analyzed in an App Test?</a></li><li><a data-scrollto="#toc7" href="#toc7">Who performs Mobile App Testing?</a></li><li><a data-scrollto="#toc8" href="#toc8">How do I select the right devices for Mobile App Testing?</a></li><li><a data-scrollto="#toc9" href="#toc9">Common mistakes to avoid while running Mobile App Tests</a></li><li><a data-scrollto="#toc10" href="#toc10">Strategies for Mobile App Testing</a></li><li><a data-scrollto="#toc11" href="#toc11">How does BrowserStack help with Mobile App Testing?</a></li></ul></div></div> </div> </div> <p>Here’s what you need to know to understand mobile app testing, how to do it right, and its significance for developers and teams trying to build more device-agnostic mobile apps.</p><h3>What is Mobile App Testing?</h3><p>As the term suggests, Mobile App Testing refers to the process of validating a mobile app (Android or iOS) for its functionality and usability before it is released publicly. Testing mobile apps help verify whether the app meets the expected technical and business requirements.</p><p>For successful mobile app testing, teams need to test apps across numerous screen resolutions, operating system versions, and distinct network bandwidths. This helps ensure that the app performs flawlessly across numerous device configurations when released publicly.</p><p>At a high level, testing mobile apps includes the following:</p><ul><li>Testing apps performance across distinct OS versions (for example Android 7.0, 8.0, etc)</li><li>Testing apps appearance in both Portrait and Landscape mode</li><li>Validating apps compatibility and performance when operated on specific settings</li><li>Testing whether the app is compatible with mobile sensors like Gyroscope, Accelerometer, GPS, etc.</li><li>Testing the app’s GUI (Menus, dropdown, navigation buttons, etc) for functionality</li></ul><p><a class="btn-primary" title="Start a Mobile App Test" href="https://www.browserstack.com/users/sign_up?ref=lf-mobile-app-testing-start-mobile-app-test-top" target="_blank" rel="noopener">Start a Mobile App Test</a></p><h3>Why is Mobile App Testing critical?</h3><p>The ultimate goal of developing mobile apps is to increase business outreach to more users across the globe. However, users are unlikely to use the app if it is faulty or difficult to use. Naturally, no businesses would like their customers to uninstall their apps and switch to a competitor.</p><p>If mobile apps are not thoroughly tested, there are high chances of users encountering critical bugs on their device that may lead to a bad user experience, particularly for new users. Bear in mind that first impressions are extremely critical for the success of any mobile app. Any unexpected app crash or functionality bug can lead to immediate uninstallation of that app. This also results in the loss of potential customers and revenue.</p><p>Listed below are some key stats that prove why mobile app testing matters:</p><ul><li><a title="80% of customers" href="http://techrepublic.com/article/digital-transformation-reality-80-of-customers-delete-apps-that-dont-meet-expectations/" target="_blank" rel="nofollow noopener">80% of customers</a> delete or uninstall an app that doesn’t meet their expectations</li><li><a title="50% of customers" href="https://www.dotcominfoway.com/blog/infographic-why-users-uninstall-your-app/#gref" target="_blank" rel="nofollow noopener">50% of customers</a> tend to uninstall an app that occupies too much space in the device</li><li><a title="48% of customers" href="https://www.freecodecamp.org/news/top-reasons-why-your-mobile-app-is-slow-and-how-to-fix-it-f0f7ce524934/" target="_blank" rel="nofollow noopener">48% of customers</a> uninstall or abandon an app if it is slow.</li></ul><h3>How does App Testing benefit your business?</h3><p>There are <a title="9000+ distinct mobile devices" href="https://www.browserstack.com/blog/understanding-browser-os-and-device-fragmentation/" target="_blank" rel="noopener">9000+ distinct mobile devices</a> and end-users in the real world can install and use the app on any device. Needless to say, the app needs to be optimized enough for that particular device to be able to run smoothly.</p><p>The constant proliferation of smartphones has led to an increased usage of mobile devices. The number of mobile users across the globe is expected to <a title="hit 7.5 billion by 2026" href="https://www.statista.com/statistics/330695/number-of-smartphone-users-worldwide/" target="_blank" rel="nofollow noopener">hit 7.5 billion by 2026</a>. That’s twice the growth when compared to 3.6 billion smartphone users in 2016.</p><p>The numbers clearly indicate the significant growth in the usage of mobile devices in the near future. The growth of mobile devices will also foster the development of advanced mobile apps aimed at making business services more accessible. Naturally, businesses will need to ensure that their mobile apps are optimized and future-ready for advanced smartphones. This can be achieved only by testing and optimizing apps on the latest mobile devices.</p><p>Mobile app testing helps validate the appearance, performance, and functionality of apps across multiple devices. Optimizing apps for mobile-OS combinations popular among the target audience helps the app provide a seamless user experience, irrespective of device or OS. It helps deliver a robust and customer-centric experience for new users. In a nutshell, the better the user experience, the higher the probability of increased outreach.</p><p><a class="btn-primary" title="Start App Testing Now" href="https://www.browserstack.com/users/sign_up?ref=lf-mobile-app-testing-start-testing-now-mid" target="_blank" rel="noopener">Start App Testing Now</a></p><h3>How is Mobile App Testing different from Web App Testing?</h3><p>Mobile applications are specifically designed and developed for operating on mobile devices. On the other hand, web applications are software applications that reside on web servers and are accessed through web browsers.</p><p>Web apps and mobile apps differ significantly in terms of how they are built. Moreover, users’ way of interacting with them also differs as mobile users use gestures like scrolling, pinch, and zoom on their touch screen mobiles. Naturally, the methods to test both differ as well.</p><p>At a high level, mobile app testing refers to testing an app across numerous mobile devices whereas web app testing focuses on validating the appearance and functionality of websites across multiple browsers.</p><p>Learn about the <a title="differences between mobile app testing and web app testing" href="https://www.browserstack.com/guide/differences-between-mobile-application-testing-and-web-application-testing" target="_blank" rel="noopener">differences between mobile app testing and web app testing</a> in detail.</p><h3>Types of Mobile Apps</h3><p>At a high level, mobile apps are categorized into three types:</p><ul><li>Mobile Web App</li></ul><p>Mobile web apps are responsive versions of websites that are wrapped in a web view or directly viewed through mobile browsers. They can work on any mobile operating system or mobile device. They are also known as Progressive Web Apps.</p><ul><li>Native App</li></ul><p>Native apps are developed specifically for mobile devices and their operating systems. As native apps are developed using specific SDKs they offer a more reliable, faster, and intuitive user experience.</p><ul><li>Hybrid App</li></ul><p>Hybrid apps are a combination of native and mobile web apps that are deployed in native containers. Hybrid apps are developed using a mixture of web technologies and native APIs. They are economical and can be developed more quickly as compared to native apps.</p><h3>When is Cross Browser Testing Done?</h3><p>Prior to getting started with mobile app testing, it is vital for teams to analyze their current audience on their platform. Analyzing the current audience helps evaluate the following:</p><ul><li>Popular mobile devices for specific geographies</li><li>Widely preferred Android or iOS versions</li><li>Highly preferred screen resolutions</li><li>Device-OS combinations that are most commonly used by the target audience</li></ul><p>Once the required research is done, teams can start testing apps by preparing a list of device-OS combinations to test on priority. Teams can either run tests via an on-premise mobile device lab or opt for a cloud-based platform like BrowserStack that offers a <a title="real device cloud" href="https://www.browserstack.com/real-device-cloud" target="_blank" rel="noopener">real device cloud</a> for testing mobile apps in real user conditions.</p><p>BrowserStack’s infrastructure supports both manual and <a href="https://www.browserstack.com/app-automate" target="_blank" rel="noopener">automated app testing</a>. This means once can either choose to test their apps manually on selected Android or iOS devices or leverage automation frameworks like <a title="Appium" href="https://www.browserstack.com/guide/appium-tutorial-for-testing" target="_blank" rel="noopener">Appium</a> to run automated app tests across devices.</p><p>To run manual app tests on selected real devices, follow the steps below:</p><ol><li><a title="Signup for free" href="https://www.browserstack.com/users/sign_up?product=app-live" target="_blank" rel="noopener">Signup for free</a> on BrowserStack App-Live</li><li>Navigate to the App-live dashboard</li><li>Upload the app (.apk or .ipa) from the system or directly load from Playstore / Appstore</li><li>Choose the desired platform (Android / iOS) and handset (for example iPhone X)</li><li>Start app testing</li></ol><p>Refer to this detailed guide to learn more about <a title="how to test mobile apps manually" href="https://www.browserstack.com/guide/how-to-test-mobile-applications-manually" target="_blank" rel="noopener">how to test mobile apps manually</a> using BrowserStack in detail.</p><p>Testing on on-premise device labs becomes quite tedious at times as it demands constant updates of handsets and OS versions at regular intervals. Moreover, it requires huge investment for setting up an on-premise device lab which is not feasible for small and medium-scale organizations. All these challenges can be addressed by opting a cloud-based testing platform like BrowserStack.</p><p><a class="btn-primary" title="Start a Free Trial" href="https://www.browserstack.com/users/sign_up?ref=lf-cross-browser-testing-start-free-trial-bottom" target="_blank" rel="noopener">Start a Free Trial</a></p><h3>What features are analyzed in an App Test?</h3><p>Realistically, it is not possible to test every single feature of an app before releasing it. Due to high user expectations, developers have to release apps on restricted deadlines, which doesn’t allow them much time for all-encompassing QA operations in one go.</p><p>To with, identify the features that are most important to the app’s target audience. Common features that should take priority are UI, design, theme, security, and basic functionality.</p><p>For example, let’s consider an eCommerce app. The most important features would be the product catalog, the Cart, and the payment mechanism. These need to be tested first, and as comprehensively as possible given the timelines at hand.</p><p>To systematize the process, start the QA process with a structured plan that categorizes features in order of priority. If possible, ask a control group of potential users what they think matters most in the app being developed, and structure the test plan accordingly.</p><p>Then, test the app in real-world circumstances i.e. real mobile devices. If QAs are not asking themselves “how to test a mobile app on multiple devices”, they need to start doing so. Without real device testing, QAs may miss out on significant aspects of the user journey that must be tested on priority.</p><p>If possible, get the app tested by a few potential customers/users. Potential users can better detect issues/anomalies in the app’s workflow or design because they are the ones who will actually use it to accomplish day-to-day tasks.</p><h3>Who performs Mobile App Testing?</h3><p>Anyone who wants to release a successful, optimized mobile app performs mobile app testing. Typically, app development teams have a dedicated set of QAs who conduct mobile apps tests in each sprint. However, often non-QA stakeholders (developers, management, product owners, potential users) also participate in mobile app testing.</p><p>In fact, widespread participation in mobile app tests is quite beneficial, as it takes multiple perspectives into account. Product owners will be able to offer non-technical insights that QA managers cannot. Since a good app must be much more than just technically efficient, having people from different roles give opinions on app functionality will help it become a more well-rounded product likely to appeal to more users.</p><p>If you are not a coder and are wondering how to do mobile app testing, BrowserStack is the answer. You don’t have to know coding to make use of interactive cross-device testing tools. <a title="BrowserStack App Live" href="https://www.browserstack.com/app-live" target="_blank" rel="noopener">BrowserStack App Live</a>, for instance, is also used by marketers and web designers, who are quickly testing apps for cross-device rendering and responsiveness.</p><p>Usually, QA teams execute test scenarios on multiple devices to make sure the build meets device compatibility benchmarks.</p><h3>How do I select the right devices for Mobile App Testing?</h3><p>In a word, research. Start with analyzing your target audience for the app being developed. Get an in-depth understanding of those users’ geographic locations, preferred devices, operating systems, and general preferences. This will allow QAs to streamline their activities in order to tailor the app for users’ needs and expectations.</p><p>In order to make an informed decision specific to your target audience, refer to your traffic stats and combine those insights with our <a title="Test on The Right Mobile Devices report" href="https://www.browserstack.com/test-on-the-right-mobile-devices" target="_blank" rel="noopener">Test on The Right Mobile Devices report</a>—which compiles device usage data in different markets.</p><p>The decision of which devices to test on is usually in the hands of Business and Marketing teams (or the client). Goals defined by these teams help focus the product/testing team’s efforts in areas that will be most rewarding with the least effort.</p><h3>Common mistakes to avoid while running Mobile App Tests</h3><ul><li>Don’t start testing without being clear on the purpose of the app. What is it meant to do? Who are the target users? What are users’ expectations? What are the product managers’ and other management-level expectations from the app? These questions must be answered before QA activities can be undertaken.</li><li>Don’t try testing everything at once. As explained above, that is not humanly possible in modern-day release timelines. Test what’s important first.</li><li>Testing only on emulators and simulators. They have serious drawbacks with regard to replicating real device functions, which means compatibility and performance tests cannot give conclusive results when run on them. Apps need to be tested on real mobile devices from different manufacturers with different OS and OS versions. This is only possible on a real device cloud.</li><li>Don’t focus only on the UI. Now, the UI is definitely the most important aspect because it is literally the face of the app. It requires meticulous testing. However, don’t forget to vet the APIs and backend services equally well. A great UI doesn’t mean much if the weak backend leads the <a title="app to crash constantly" href="https://www.browserstack.com/guide/why-mobile-apps-crash" target="_blank" rel="noopener">app to crash constantly</a>.</li><li>Don’t proceed without a plan. Decide which features must be tested in each sprint, what tests are to be run, have scripts prepared, and know exactly what the expected results are. Modern apps have far too many features, and cannot be comprehensively tested without a structure in place.</li></ul><p><a class="btn-primary" title="Try App Testing for Free" href="https://www.browserstack.com/users/sign_up?ref=lf-mobile-app-testing-try-app-testing-for-free-now-mid" target="_blank" rel="noopener">Try App Testing for Free</a></p><h3>Strategies for Mobile App Testing</h3><p>The following approaches can make mobile app testing more efficient, and can be considered part of a success-driven QA strategy:</p><ul><li>Be clear about the challenges – mainly the extent of device fragmentation and the need for the right tools and frameworks.</li><li>Ask the right questions before putting a plan to paper – “how to test mobile app on desktop”, “how unit testing of mobile apps can be done”, etc.</li><li>Use emulators/simulators only for testing in the initial stages. There is no way to publish a successful app without testing it on real devices. Without testing in real user conditions, an app is likely to malfunction in key areas and provide bad user experiences.</li><li>Invest in Beta Testing. Just as real device testing is the best way to gauge the real-world performance of an app, beta testing is the best way to judge user reception.</li><li>Along with business and product teams, involve QA teams from early phases of development.</li></ul><p>To explore mobile app testing strategies in detail, have a look at our article on <a title="Strategies for efficient Mobile App Testing" href="https://www.browserstack.com/guide/mobile-app-testing-strategies" target="_blank" rel="noopener">Strategies for efficient Mobile App Testing</a>.</p><h3>How does BrowserStack help with Mobile App Testing?</h3><p>Simple. BrowserStack lets you test mobile apps on real mobile devices. As explained above, it is impossible to release a mobile without verifying its performance in real-world circumstances (real mobile devices). Instead of setting up, maintaining, and updating a massive on-premise device lab, teams, individual testers can simply log in to BrowserStack and access 3000+ real Android and iOS devices on the cloud for manual and automated testing.</p><p>Here’s a glimpse of BrowserStack’s app testing offerings:</p><ol><li><a title="App Live" href="https://www.browserstack.com/app-live" target="_blank" rel="noopener">App Live</a></li></ol><p>An Interactive Mobile App Testing tool that offers instant, on-demand access to thousands of real Android and iOS devices on the cloud.</p><p>Here’s a list of features testers can leverage with App Live:</p><ul><li>Test on a range of real devices including iPhone, Samsung Galaxy, Pixel, Nexus, and more on multiple Android and iOS versions.</li><li>Leverage 15+ native device features like GPS, network simulation, localization and more to replicate real user conditions.</li><li>Interact with your mobile app on the remote device, just as you would with a device in hand. Tap, scroll, zoom, swipe, and more.</li><li>Debug your app, view crash reports, and logs, inspect UI elements, and use stacktrace to find and fix bugs instantly.</li><li>Test your native and hybrid apps out of the box on internal development and staging environments.</li><li>Upload, test, and collaborate on your dev APK/AAB/IPA files. Or install production apps from Play Store/App Store and start testing.</li></ul><ol start="2"><li><a title="App Automate" href="https://www.browserstack.com/app-automate" target="_blank" rel="noopener">App Automate</a></li></ol><p>An Automated Mobile App Testing tool offers instant, on-demand access to thousands of real Android and iOS devices on the cloud.</p><p>Here’s a list of features testers can leverage with App Automate:</p><ul><li>Test your native and hybrid apps on a wide range of physical mobile and tablet devices including iPhone, iPad, Samsung Galaxy, Pixel, Nexus, etc.</li><li>Integrate effortlessly with popular testing frameworks like Appium, Espresso, XCUITest or EarlGrey.</li><li>Test native device features – Geolocation testing, Push Notifications, Pre-loaded images, In-app purchases, Network Simulation, Timezones, and more.</li><li>Reduce build times by more than 10x through parallel test execution on BrowserStack cloud.</li><li>Test apps on your internal development or staging environments.</li><li>Automate gestures and touch actions on our remote devices, including tap, swipe, scroll, and more.</li><li>Debug your Apps instantly using device logs, text logs, video recordings, and screenshots for every test you run.</li><li>Add unlimited users from your organization to your account so the entire team can collaborate better and share results faster.</li></ul> </div> </div> <div class="microsite-templ-ctasec"> <div class="container"> <div class="row"> <div class="col-xs-12"> <h2 class="microsite-templ-ctasec-heading">Get started with Testing on Real Devices</h2> <div class="microsite-templ-ctasec-desc"></div> <div class="microsite-templ-ctasec-btn"> <a class="btn btn-lg col-center microsite-templ-ctasec--btn btn-primary " target="_blank" href="https://www.browserstack.com/users/sign_up?ref=lf-responsive-design-free-trial-bottom">Free Trial</a> <a class="btn btn-lg col-center microsite-templ-ctasec--btn btn-secondary " target="_blank" href="https://www.browserstack.com/pricing?ref=lf-selenium-pricing-bottom">View Pricing</a> </div> </div> </div> </div> </article> </main> <footer class="bg-inverse footer-habitat footer-habitat--v3" id="footer-habitat"> <div class="container"> <div class="row footer-top-section"> <div class="footer-habitat--v3-column"> <div id="nav_menu-17" class="widget_nav_menu"><p class="footer-habitat--v3-heading">PRODUCTS</p><ul id="menu-footer-product-v3" class="menu"><li id="menu-item-91784" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91784"><a href="/live"><span class="item-text">Live</span></a></li><li id="menu-item-91785" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91785"><a href="/automate"><span class="item-text">Automate</span></a></li><li id="menu-item-91786" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91786"><a href="/automate-turboscale"><span class="item-text">Automate TurboScale</span></a></li><li id="menu-item-91787" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91787"><a href="/percy"><span class="item-text">Percy</span></a></li><li id="menu-item-91788" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91788"><a href="/app-live"><span class="item-text">App Live</span></a></li><li id="menu-item-91789" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91789"><a href="/app-automate"><span class="item-text">App Automate</span></a></li><li id="menu-item-91790" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91790"><a href="/app-percy"><span class="item-text">App Percy</span></a></li><li id="menu-item-91791" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91791"><a href="/test-management"><span class="item-text">Test Management</span></a></li><li id="menu-item-91792" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91792"><a href="/test-observability"><span class="item-text">Test Observability</span></a></li><li id="menu-item-91793" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91793"><a href="/app-accessibility-testing"><span class="item-text">Accessibility Testing</span></a></li><li id="menu-item-91794" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91794"><a href="/accessibility-testing/features/automated-tests"><span class="item-text">Accessibility Automation</span></a></li><li id="menu-item-109221" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-109221"><a href="/app-accessibility-testing"><span class="item-text">App Accessibility Testing</span></a></li><li id="menu-item-91795" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91795"><a href="/low-code-automation"><span class="item-text">Low Code Automation</span></a></li><li id="menu-item-108294" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-108294"><a href="/bug-capture"><span class="item-text">Bug Capture</span></a></li></ul></div> </div> <div class="footer-habitat--v3-column"> <div id="nav_menu-11" class="widget_nav_menu"><p class="footer-habitat--v3-heading">WHY BROWSERSTACK</p><ul id="menu-footer-why-browserstack-v3" class="menu"><li id="menu-item-91767" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91767"><a href="/customers"><span class="item-text">Customers</span></a></li><li id="menu-item-91768" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91768"><a href="/case-study"><span class="item-text">Case Studies</span></a></li><li id="menu-item-91769" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91769"><a href="/list-of-browsers-and-platforms/live"><span class="item-text">Browsers & Devices</span></a></li><li id="menu-item-91770" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91770"><a href="/enterprise?ref=footer"><span class="item-text">Enterprise</span></a></li><li id="menu-item-91771" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91771"><a href="/data-centers"><span class="item-text">Data Centers</span></a></li><li id="menu-item-91772" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91772"><a href="/real-device-features"><span class="item-text">Real Device Features</span></a></li><li id="menu-item-91773" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91773"><a href="/security"><span class="item-text">Security</span></a></li></ul></div> </div> <div class="footer-habitat--v3-column"> <div id="nav_menu-13" class="widget_nav_menu"><p class="footer-habitat--v3-heading">RESOURCES</p><ul id="menu-footer-resources-v3" class="menu"><li id="menu-item-91774" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91774"><a href="/support"><span class="item-text">Support</span></a></li><li id="menu-item-91775" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91775"><a href="https://status.browserstack.com"><span class="item-text">Status</span></a></li><li id="menu-item-91776" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91776"><a href="/release-notes"><span class="item-text">Release Notes</span></a></li><li id="menu-item-91777" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91777"><a href="/blog"><span class="item-text">Blog</span></a></li><li id="menu-item-91778" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91778"><a href="/events"><span class="item-text">Events</span></a></li><li id="menu-item-108295" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-108295"><a href="/meetups"><span class="item-text">Meetups</span></a></li><li id="menu-item-91779" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91779"><a href="/browserstack-champions"><span class="item-text">Champions</span></a></li><li id="menu-item-91780" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91780"><a href="/guide"><span class="item-text">Guide</span></a></li><li id="menu-item-91781" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91781"><a href="/partners"><span class="item-text">Partners</span></a></li><li id="menu-item-91782" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91782"><a href="/partners/find-a-partner"><span class="item-text">Find a partner</span></a></li><li id="menu-item-91783" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91783"><a href="/test-university"><span class="item-text">Test University (Beta)</span></a></li></ul></div> </div> <div class="footer-habitat--v3-column"> <div id="nav_menu-18" class="widget_nav_menu"><p class="footer-habitat--v3-heading">COMPANY</p><ul id="menu-footer-company-v3" class="menu"><li id="menu-item-91758" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91758"><a href="/company"><span class="item-text">About Us</span></a></li><li id="menu-item-91759" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91759"><a href="/careers"><span class="item-text">Careers</span></a></li><li id="menu-item-91760" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91760"><a href="/open-source"><span class="item-text">Open Source</span></a></li><li id="menu-item-91761" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91761"><a href="/press"><span class="item-text">Press</span></a></li><li id="menu-item-91762" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91762"><a href="/blog/tag/newsletter"><span class="item-text">Newsletter</span></a></li></ul></div> </div> <div class="col-xs-12 col-sm-4 col-md-4 col-lg-8 col-xl-8 custom-footer-size custom-footer-social-row"> <div class="custom-footer-wrapper"> <div class="custom-footer-brand"> <a class="brand custom-btn-amp-events" title="BrowserStack Logo" href="/" data-btn-eventname="ClickedOnFooter" data-btn-ampjson='{"value":"BrowserStack Logo"}'> <img class="b-lazy b-lazy-hidden" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzIDInPjwvc3ZnPg==" data-lazy-type="image" data-id="" data-lazy-src="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/bstack-logo-global.svg" width="219" height="47" alt="BrowserStack Logo"/><noscript><img src="https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/img/bstack-logo-global.svg" width="219" height="47" alt="BrowserStack Logo"/></noscript> </a> </div> <p class="custom-footer-wrapper__heading">Social</p> <ul class="horizontal-list footer-menu social-menu"> <li> <a class="social-link custom-btn-amp-events" href="https://twitter.com/browserstack" target="_blank" rel="noopener noreferrer" title="Twitter" data-btn-eventname="ClickedOnFooter" data-btn-ampjson='{"value":"Twitter","group":"Social"}'> <span class="icon-twitter"><svg width="19" height="17" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" aria-labelledby="footerSocialTwitterIconTitle footerSocialTwitterIconDesc"><title id="footerSocialTwitterIconTitle">BrowserStack Twitter Account</title><desc id="footerSocialTwitterIconDesc">An illustration of white twitter Logo</desc><path d="M14.0955 10.3165L22.2864 1H20.3456L13.2303 9.08768L7.55141 1H1L9.58949 13.2311L1 23H2.94072L10.4501 14.4571L16.4486 23H23L14.0955 10.3165ZM11.4365 13.3385L10.5649 12.1198L3.64059 2.43161H6.62193L12.2117 10.2532L13.0797 11.4719L20.3447 21.6381H17.3634L11.4365 13.3385Z" fill="white"/></svg></span> </a> </li> <li> <a class="social-link custom-btn-amp-events" href="https://www.facebook.com/pages/BrowserStack/305988982776051" target="_blank" rel="noopener noreferrer" title="Facebook" data-btn-eventname="ClickedOnFooter" data-btn-ampjson='{"value":"Facebook","group":"Social"}'> <span class="icon-facebook"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 19 17" style="enable-background:new 0 0 19 17;" xml:space="preserve" aria-labelledby="footerSocialFaceBookIconTitle footerSocialFaceBookIconDesc" role="img"><title id="footerSocialFaceBookIconTitle">BrowserStack FaceBook Account</title><desc id="footerSocialFaceBookIconDesc">An illustration of white FaceBook Logo</desc><style type="text/css"> .sfacebook{fill:#FFFFFF;}</style><path class="sfacebook" d="M7.38,5.67H5.25V8.5h2.12V17h3.54V8.5h2.58l0.25-2.83h-2.83V4.49c0-0.68,0.14-0.94,0.79-0.94h2.04V0h-2.7 C8.51,0,7.38,1.12,7.38,3.27V5.67z"/></svg></span> </a> </li> <li> <a class="social-link custom-btn-amp-events" href="https://www.linkedin.com/company/browserstack/" target="_blank" rel="noopener noreferrer" title="LinkedIn" data-btn-eventname="ClickedOnFooter" data-btn-ampjson='{"value":"LinkedIn","group":"Social"}'> <span class="icon-linkedin"><svg version="1.1" id="linkedInIconLayer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 459.5 450.7" xml:space="preserve" fill="#fff" aria-labelledby="footerSocialLinkedInIconTitle footerSocialLinkedInIconDesc" role="img"><title id="footerSocialLinkedInIconTitle">BrowserStack LinkedIn Account</title><desc id="footerSocialLinkedInIconDesc">An illustration of white LinkedIn Logo</desc><path d="M3.4,146.6l92.8-1.2v303.8l-92.8,1.2L3.4,146.6L3.4,146.6z"/><path d="M173.9,146.6l88.7-1.1v38.6l0,10.9c26.3-25.7,53.3-45.2,96.6-45.2c51,0,100.4,21.4,100.4,91v208.4l-90,1.3 V291.5c0-35.1-8.8-57.7-50.7-57.7c-36.9,0-52.4,6.6-52.4,55.2v160.4l-92.5,1.1L173.9,146.6L173.9,146.6z"/><path d="M101.6,50.8c0,28.1-22.7,50.8-50.8,50.8S0,78.8,0,50.8C0,22.7,22.7,0,50.8,0C78.8,0,101.6,22.7,101.6,50.8 L101.6,50.8z"/></svg></span> </a> </li> <li> <a class="social-link custom-btn-amp-events" href="https://www.youtube.com/c/browserstack" target="_blank" rel="noopener noreferrer" title="YouTube" data-btn-eventname="ClickedOnFooter" data-btn-ampjson='{"value":"YouTube","group":"Social"}'> <span class="icon-youtube"><svg enable-background="new 0 0 176 124" viewBox="0 0 176 124" xmlns="http://www.w3.org/2000/svg" aria-labelledby="footerSocialYoutubeIconTitle footerSocialYoutubeIconDesc" role="img"><title id="footerSocialYoutubeIconTitle">BrowserStack Youtube Channel</title><desc id="footerSocialYoutubeIconDesc">An illustration of white youtube Logo</desc><path d="m172.3 19.4c-2-7.6-8-13.6-15.6-15.7-13.7-3.7-68.7-3.7-68.7-3.7s-55 0-68.8 3.7c-7.6 2-13.5 8-15.6 15.7-3.6 13.8-3.6 42.6-3.6 42.6s0 28.8 3.7 42.6c2 7.6 8 13.6 15.6 15.7 13.7 3.7 68.7 3.7 68.7 3.7s55 0 68.8-3.7c7.6-2 13.5-8 15.6-15.7 3.6-13.8 3.6-42.6 3.6-42.6s0-28.8-3.7-42.6zm-102.3 68.8v-52.4l46 26.2z" fill="#fff"/></svg></span> </a> </li> <li> <a class="social-link custom-btn-amp-events" href="https://www.instagram.com/browserstack" target="_blank" rel="noopener noreferrer" title="Instagram" data-btn-eventname="ClickedOnFooter" data-btn-ampjson='{"value":"Instagram","group":"Social"}'> <span class="icon-instagram"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="18" height="18" viewBox="0 0 18 18" aria-labelledby="footerSocialInstagramIconTitle footerSocialInstagramIconDesc" role="img"><title id="footerSocialInstagramIconTitle">BrowserStack Instagram Account</title><desc id="footerSocialInstagramIconDesc">An illustration of white instagram Logo</desc> <defs> <path id="prefix__a" d="M0 0.006L17.994 0.006 17.994 17.998 0 17.998z"/> </defs> <g fill="none" fill-rule="evenodd"> <mask id="prefix__b" fill="#fff"> <use xlink:href="#prefix__a"/> </mask> <path fill="#FFF" d="M8.997.006c-2.443 0-2.75.01-3.71.054-.957.043-1.611.196-2.183.418-.592.23-1.094.538-1.594 1.038S.702 2.518.472 3.109C.25 3.682.098 4.336.054 5.293.01 6.253 0 6.56 0 9.003c0 2.443.01 2.75.054 3.71.044.957.196 1.611.418 2.183.23.592.538 1.094 1.038 1.594s1.002.808 1.594 1.038c.572.222 1.226.374 2.184.418.96.044 1.266.054 3.71.054 2.443 0 2.749-.01 3.709-.054.957-.044 1.611-.196 2.184-.418.591-.23 1.093-.538 1.593-1.038s.808-1.002 1.038-1.594c.222-.572.375-1.226.418-2.184.044-.96.054-1.266.054-3.71 0-2.443-.01-2.749-.054-3.709-.044-.957-.196-1.611-.418-2.184-.23-.591-.538-1.093-1.038-1.593S15.482.708 14.891.478C14.318.256 13.664.104 12.707.06c-.96-.044-1.266-.054-3.71-.054zm0 1.62c2.402 0 2.687.01 3.636.053.877.04 1.353.187 1.67.31.42.163.72.358 1.035.673.315.315.51.615.673 1.035.123.317.27.793.31 1.67.043.949.052 1.234.052 3.636s-.009 2.687-.052 3.635c-.04.878-.187 1.354-.31 1.671-.163.42-.358.72-.673 1.035-.315.314-.615.51-1.035.673-.317.123-.793.27-1.67.31-.949.043-1.233.052-3.636.052-2.402 0-2.687-.01-3.635-.053-.878-.04-1.354-.186-1.671-.31-.42-.163-.72-.358-1.035-.672-.314-.315-.51-.615-.673-1.035-.123-.317-.27-.793-.31-1.67-.043-.95-.052-1.234-.052-3.636s.01-2.687.053-3.636c.04-.877.186-1.353.31-1.67.163-.42.358-.72.672-1.035.315-.315.615-.51 1.035-.673.317-.123.793-.27 1.67-.31.95-.043 1.234-.052 3.636-.052z" mask="url(#prefix__b)"/> <path fill="#FFF" d="M8.997 12.002c-1.656 0-2.999-1.343-2.999-3 0-1.656 1.343-2.998 3-2.998 1.655 0 2.998 1.343 2.998 2.999 0 1.656-1.343 2.999-2.999 2.999zm0-7.62c-2.551 0-4.62 2.07-4.62 4.62 0 2.553 2.069 4.621 4.62 4.621 2.552 0 4.62-2.068 4.62-4.62s-2.068-4.62-4.62-4.62zM14.88 4.2c0 .596-.484 1.08-1.08 1.08-.596 0-1.08-.484-1.08-1.08 0-.596.484-1.08 1.08-1.08.596 0 1.08.484 1.08 1.08"/> </g></svg></span> </a> </li> </ul> <div class="custom-footer-btn custom-footer-contact-btn"> <a id="customFooterContactBtn" href="/contact?ref=footer" data-btn-eventname="ClickedOnFooter" data-btn-ampjson='{"value": "Contact Us", "group": "Social"}' class="btn btn-primary btn-md col-md-2 custom-btn-amp-events"><span class="custom-footer-btn-icon"><svg width="24" height="24" alt="Contact Us" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" aria-labelledby="footerContactUsIconTitle footerContactUsIconDesc" role="img"><title id="footerContactUsIconTitle">BrowserStack Contact Us Icon</title><desc id="footerContactUsIconDesc">An illustration of white contact us icon</desc><path d="M19 3H18V1H16V3H8V1H6V3H5C3.89 3 3 3.9 3 5V19C3 20.1 3.89 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3ZM12 6C13.66 6 15 7.34 15 9C15 10.66 13.66 12 12 12C10.34 12 9 10.66 9 9C9 7.34 10.34 6 12 6ZM18 18H6V17C6 15 10 13.9 12 13.9C14 13.9 18 15 18 17V18Z" fill="white"/></svg></span><span class="custom-footer-btn-text">Contact Us</span></a> </div> </div> </div> <div class="bottom-section__links-v3"> <div id="nav_menu-15" class="widget_nav_menu"><p class="footer-habitat--v3-heading">More Resources</p><ul id="menu-footer-more-resources-v3" class="menu"><li id="menu-item-91745" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91745"><a href="/cross-browser-testing"><span class="item-text">Cross Browser Testing</span></a></li><li id="menu-item-91746" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91746"><a href="/selenium"><span class="item-text">Selenium</span></a></li><li id="menu-item-91747" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91747"><a href="/test-management/what-is-test-management"><span class="item-text">Test Management</span></a></li><li id="menu-item-91748" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91748"><a href="/emulators-simulators"><span class="item-text">Emulators vs Real Device</span></a></li><li id="menu-item-91749" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item menu-item-91749"><a href="/mobile-app-testing" aria-current="page"><span class="item-text">Mobile App Testing</span></a></li></ul></div> <div id="nav_menu-16" class="widget_nav_menu"><p class="footer-habitat--v3-heading">Test on Devices</p><ul id="menu-footer-test-on-devices-v3" class="menu"><li id="menu-item-91750" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91750"><a href="/test-on-iphone"><span class="item-text">Test on iPhone</span></a></li><li id="menu-item-91751" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91751"><a href="/test-on-ipad"><span class="item-text">Test on iPad</span></a></li><li id="menu-item-91752" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91752"><a href="/test-on-galaxy"><span class="item-text">Test on Galaxy</span></a></li><li id="menu-item-91753" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91753"><a href="/test-in-internet-explorer"><span class="item-text">Test In IE</span></a></li><li id="menu-item-91754" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91754"><a href="/android-testing"><span class="item-text">Test on Android</span></a></li><li id="menu-item-91755" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91755"><a href="/ios-testing"><span class="item-text">Test on iOS</span></a></li><li id="menu-item-91756" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91756"><a href="/test-on-the-right-mobile-devices"><span class="item-text">Test on Right Devices</span></a></li><li id="menu-item-91757" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91757"><a href="/mobile-browser-emulator"><span class="item-text">Mobile Emulators</span></a></li></ul></div> <div id="nav_menu-12" class="widget_nav_menu"><p class="footer-habitat--v3-heading">Tools</p><ul id="menu-footer-free-tools-v3" class="menu"><li id="menu-item-91763" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91763"><a href="/speedlab"><span class="item-text">SpeedLab</span></a></li><li id="menu-item-91764" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91764"><a href="/screenshots"><span class="item-text">Screenshots</span></a></li><li id="menu-item-91765" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91765"><a href="/responsive"><span class="item-text">Responsive</span></a></li><li id="menu-item-91766" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-91766"><a target="_blank" rel="noopener" href="https://nightwatchjs.org"><span class="item-text">Nightwatch.js</span></a></li></ul></div> </div> </div> <div class="row footer-bottom-section"> <div class="footer-bottom-section__child col-xs-12 col-md-6 col-lg-8 col-xl-8 copyright"> <p>© 2024 BrowserStack. All rights reserved.</p> </div> <div class="footer-bottom-section__child col-xs-12 col-md-6 col-lg-8 col-xl-8"> <ul class="horizontal-list legal"> <li class="legal-list"> <a class="custom-btn-amp-events" href="/terms" data-btn-eventname="ClickedOnFooter" data-btn-ampjson='{"value":"Terms of Service"}'>Terms of Service</a> </li> <li class="legal-list"> <a class="custom-btn-amp-events" href="/privacy" data-btn-eventname="ClickedOnFooter" data-btn-ampjson='{"value":"Privacy Policy"}'>Privacy Policy</a> </li> <li class="legal-list"> <a class="custom-btn-amp-events" href="/cookie-policy" data-btn-eventname="ClickedOnFooter" data-btn-ampjson='{"value":"Cookie Policy"}'>Cookie Policy</a> </li> <li class="legal-list"> <div id="teconsent"></div> </li> <li class="legal-list"> <a class="custom-btn-amp-events" href="/sitemap" data-btn-eventname="ClickedOnFooter" data-btn-ampjson='{"value":"Sitemap"}'>Sitemap</a> </li> </ul> </div> </div> </div> </footer> </div> <div class="freshchat-bubble hide" id="freshchat-bubble"> <span class="freshchat-bubble--cancel" id="freshchat-bubble--cancel"> <svg width="10px" height="10px" viewBox="0 0 10 10" fill="#aeaeae" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <g> <path d="M6.43835616,5.15981735 C6.34703196,5.06849315 6.34703196,4.93150685 6.43835616,4.84018265 L9.8630137,1.41552511 C9.9543379,1.32420091 10,1.18721461 10,1.09589041 C10,1.00456621 9.9543379,0.867579909 9.8630137,0.776255708 L9.22374429,0.136986301 C9.13242009,0.0456621005 8.99543379,0 8.90410959,0 C8.76712329,0 8.67579909,0.0456621005 8.58447489,0.136986301 L5.15981735,3.56164384 C5.06849315,3.65296804 4.93150685,3.65296804 4.84018265,3.56164384 L1.41552511,0.136986301 C1.32420091,0.0456621005 1.18721461,0 1.09589041,0 C1.00456621,0 0.867579909,0.0456621005 0.776255708,0.136986301 L0.136986301,0.776255708 C0.0456621005,0.867579909 0,1.00456621 0,1.09589041 C0,1.18721461 0.0456621005,1.32420091 0.136986301,1.41552511 L3.56164384,4.84018265 C3.65296804,4.93150685 3.65296804,5.06849315 3.56164384,5.15981735 L0.136986301,8.58447489 C0.0456621005,8.67579909 0,8.81278539 0,8.90410959 C0,8.99543379 0.0456621005,9.13242009 0.136986301,9.22374429 L0.776255708,9.8630137 C0.867579909,9.9543379 1.00456621,10 1.09589041,10 C1.18721461,10 1.32420091,9.9543379 1.41552511,9.8630137 L4.84018265,6.43835616 C4.93150685,6.34703196 5.06849315,6.34703196 5.15981735,6.43835616 L8.58447489,9.8630137 C8.67579909,9.9543379 8.81278539,10 8.90410959,10 C8.99543379,10 9.13242009,9.9543379 9.22374429,9.8630137 L9.8630137,9.22374429 C9.9543379,9.13242009 10,8.99543379 10,8.90410959 C10,8.81278539 9.9543379,8.67579909 9.8630137,8.58447489 L6.43835616,5.15981735 L6.43835616,5.15981735 Z"></path> </g> </svg> </span> <p class="freshchat-bubble--text" id="freshchat-bubble--text"></p> </div> <button id="custom-fc-frame" class="hide"> <img class="b-lazy b-lazy-hidden" id="chat-icon" width="20" height="20" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzIDInPjwvc3ZnPg==" data-lazy-type="image" data-id="29962" data-lazy-src="https://browserstack.wpenginepowered.com/wp-content/uploads/2021/03/chat-icon.svg" alt="" title="chat-icon" data-id="29962" ><noscript><img id="chat-icon" width="20" height="20" src="https://browserstack.wpenginepowered.com/wp-content/uploads/2021/03/chat-icon.svg" alt="" title="chat-icon" data-id="29962" ></noscript> Talk to an Expert </button> <div class="fc-overlay" id="fc-overlay"> <div class="fc-overlay-bg"> <form action="" id="fc-overlay-form" class="fc-overlay-content" method="post"> <div class="input-placeholder input-placeholder__email"> <label for="fc-overlay-email-label" class="fc-overlay-email-label">Your business email<span class="color-red">*</span></label> <div class="fc-overlay-email-wrapper" id="fc-overlay-email-wrapper"> <input autocomplete="off" class="fc-overlay-email__input input-md text input-primary" name="email" placeholder="name@company.com" type="text" id="fc-overlay-email"/> <input class="fc-overlay-email__submit btn btn-primary btn-lg" id="fc-overlay-submit" name="SubmitButton" type="submit" value="Submit" data-btndisabled="Validating..." data-btntext="Submit"/> </div> </div> <div class="input-placeholder"> <span class="fc-overlay-email-notify-msg" id="email-notify-msg"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none" class="fc-overlay-email-notify-msg-icon"> <path d="M7.99967 1.33325C4.31967 1.33325 1.33301 4.31992 1.33301 7.99992C1.33301 11.6799 4.31967 14.6666 7.99967 14.6666C11.6797 14.6666 14.6663 11.6799 14.6663 7.99992C14.6663 4.31992 11.6797 1.33325 7.99967 1.33325ZM8.66634 11.3333H7.33301V9.99992H8.66634V11.3333ZM8.66634 8.66659H7.33301V4.66659H8.66634V8.66659Z" fill="#666666"/> </svg> Provide your business email to continue</span> </div> </form> </div> </div> <script type="text/javascript"> window.addEventListener("load", function() { var script = document.createElement('script');script.src = "https://js.sentry-cdn.com/c9636320258848db994911a8f578111c.min.js";script.setAttribute("async", "");script.setAttribute("crossorigin", "anonymous");document.getElementsByTagName('head')[0].appendChild(script); var script = document.createElement('script');script.src = 'https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/js/dist/bstack-load-scripts.js?v=1731413938';script.setAttribute("defer","defer");document.getElementsByTagName('head')[0].appendChild(script); }); function fnLoadMobileScript() { var mobileScriptElem = document.getElementById('load-mobile-script-js'); if (!mobileScriptElem) { var script = document.createElement('script');script.id = 'load-mobile-script-js';script.src = 'https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/js/dist/bstack-load-scripts-mobile.js?v=1712672333';script.setAttribute("defer","defer");document.getElementsByTagName('head')[0].appendChild(script); } } window.addEventListener("resize", function() { if (window.innerWidth < 980) { fnLoadMobileScript(); } }); if (window.innerWidth < 980) { fnLoadMobileScript(); } if (window.innerWidth > 979 && !getCookieVal("bs_logging_id", true) && bstackCheckAcceptCookie) { var script=document.createElement("script");script.src="https://accounts.google.com/gsi/client",script.setAttribute("id","google-one-tap-lib-js"),script.setAttribute("defer","defer"),document.getElementsByTagName("head")[0].appendChild(script); var script=document.createElement("script");script.src='https://browserstack.wpenginepowered.com/wp-content/themes/browserstack/js/google-one-tap-widget.js?v=1731657839',script.setAttribute("id","google-one-tap-widget-js"),script.setAttribute("defer","defer"),document.getElementsByTagName("head")[0].appendChild(script); } </script> <script type="text/javascript" id="main-js-extra"> /* <![CDATA[ */ var ajax_initialize_script = {"ajaxurl":"https:\/\/browserstack.wpengine.com\/wp-admin\/admin-ajax.php","ajax_nonce":"d5e4153f34"}; /* ]]> */ </script><script defer="defer" src="https://browserstack.wpenginepowered.com/wp-content/cache/js/bstack_5f94906e1c5f3abaa78254dabf59c667.js?v=1731658735" ></script><script>(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'8ec6c2c72d17a135',t:'MTczMzI2MjUwNi4wMDAwMDA='};var a=document.createElement('script');a.nonce='';a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script></body></html>