PageSourceSearch

https://appiumator.github.io/2018/10/08/introduction

html appiumator.github.io collected 2026-10-03 08:38:30 UTC 8,815 bytes, 152 lines download raw bytes

1<!DOCTYPE HTML>
2<!--
3Prologue by HTML5 UP
4html5up.net | @ajlkn
5Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
6Jekyll integration by Chris Bobbe | chrisbobbe.github.io
7-->
8<html><head><!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 64 bytes, lines 8-9
8
9<script async src="https://www.googletagmanager.com/gtag/js?id=
9UA-128630156-1
vendor: 12 bytes, line 9
9"></script>
10<script>
11  
vendor: 133 bytes, lines 11-14
11window.dataLayer = window.dataLayer || [];
12  function gtag(){dataLayer.push(arguments);}
13  gtag('js', new Date());
14  gtag('config', '
14UA-128630156-1
vendor: 4 bytes, line 14
14');
15</script>
15<!-- Robots -->
16  <meta name="robots" content="index, follow" /><link rel="canonical" href="/2018/10/08/introduction.html" /><!-- Title, description, author --><title>Introduction | Appiumator - Free guide</title>
17  <meta name="description" content="This is the demo site for a Jekyll theme version of HTML5 UP&#39;s sleek, responsive site template Prologue." />
18  <meta name="author" content="GG" />
19  
20  <!-- Open Graph -->
21  <meta property="og:title" content="Introduction | Appiumator - Free guide" />
22  <meta property="og:type" content="website" />
23  <meta property="og:image" content="/assets/images/avatar.jpg" />
24  <meta property="og:url" content="/2018/10/08/introduction.html" />
25  <meta property="og:site_name" content="Appiumator" />
26  <meta property="og:description" content="This is the demo site for a Jekyll theme version of HTML5 UP&#39;s sleek, responsive site template Prologue." />
27  
28  <!-- Styles -->
29  <meta charset="utf-8" />
30  <meta name="viewport" content="width=device-width, initial-scale=1" />
31  <!--[if lte IE 8]>
31<script src="/assets/js/ie/html5shiv.js" defer></script>
31<![endif]-->
32  <link rel="stylesheet" href="/assets/css/main.css" />
33  <!--[if lte IE 8]><link rel="stylesheet" href="/assets/css/ie8.css" /><![endif]-->
34  <!--[if lte IE 9]><link rel="stylesheet" href="/assets/css/ie9.css" /><![endif]-->
35  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.0/css/all.css">
36
37  <!-- Scripts -->
38  
38<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js" defer></script>
38
39  
39<script src="/assets/js/jquery.scrolly.min.js" defer></script>
39
40  
40<script src="/assets/js/jquery.scrollzer.min.js" defer></script>
40
41  
41<script src="/assets/js/skel.min.js" defer></script>
41
42  
42<script src="/assets/js/util.js" defer></script>
42
43  <!--[if lte IE 8]>
43<script src="/assets/js/ie/respond.min.js" defer></script>
43<![endif]-->
44  
44<script src="/assets/js/main.js" defer></script>
44
45  
45<script async src="https://just-comments.com/w.js"></script>
45
46  
47  <link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.2/cookieconsent.min.css" />
48<script async defer src="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.2/cookieconsent.min.js"></script>
vendor: 1 bytes, line 48
48
49<script>
50window.addEventListener("load", function(){
51window.cookieconsent.initialise({
52  "palette": {
53    "popup": {
54      "background": "#424242"
55    },
56    "button": {
57      "background": "#2a7ae2"
58    }
59  },
60  "content": {
61    "href": "http://ec.europa.eu/ipg/basics/legal/cookies/index_en.htm"
62  }
63})});
64</script>
64
65
66</head><body><!-- Header -->
67<div id="header">
68  <div class="top"><!-- Logo -->
69<div id="logo">
70  <a href="/" id="home-link">
71    <span class="image avatar48"><img src="/assets/images/avatar.jpg" alt="Avatar of GG" /></span>
72    <h1 id="title">Appiumator</h1>
73    <p>Free guide</p>
74  </a>
75</div><!-- Nav -->
76<nav id="nav">
77  <ul><li><a href="/about/" id="about-link">
78            <span class="icon fa-link">About</span>
79          </a></li><li><a href="/" id="appiumator-link">
80            <span class="icon fa-home">Appiumator</span>
81          </a></li><li><a href="/blog.html" id="appiumator-your-way-to-automate-mobile-testing-link">
82            <span class="icon fa-pencil-alt">Appiumator - your way to automate mobile testing!</span>
83          </a></li></ul>
84</nav></div>
85  <div class="bottom"><!-- Social Icons -->
86<ul class="icons"><li><a href="mailto:[email protected]" class="icon fa-envelope"><span class="label">Email</span></a></li></ul>
87</div>
88</div>
89<!-- Main -->
90<div id="main">
91	<!-- Post -->
92	<article class="shade-two">
93	  <div class="container">
94			<header>
95				<h2>Introduction</h2>
96				<p>GG, 08 October 2018</p>
97			</header><h3>1. Reason.</h3>
98
99<p>By living in 21st century our lives are a way different than they ware before. Over the years of constant development in sharing informations it is now unbreakable standard of our lives to posses information via internet.
100Thanks to some smart guys in companies like Apple or Samsung we are now able to do in anytime anywhere by using mobiles. This fact pushed the IT companies to adapt to this trends and most of modern web apps are now responsive and fully accesable via mobile phones. 
101This very convinient way made a great impact in a way of designing apps. To make sure such a great market demands are reachable there is a great chellange for QA lads, to achive the best possible product quality as it it possible. How to achive it?</p>
102
103<p>We need to answer a most important question - how we wanna make sure that our app is fully working on every mobile OS and every mobile. Well, the best solution would be to test it one by one on every availiable on a availiable on market model of mobile phone. 
104Sounds hecktig, doesn’t it? Let’s try to find some other way.</p>
105
106<h3>2. Idea.</h3>
107
108<p>Let’s state then - we need some automation to achive this great goal. How we gonna do it? There are two ways. We can simulate environments, and then probably we we’ll cover more possible devices but IMHO that approach does not gives me enough confidance in term of reliability when working with simulators.
109 I believe it is better to cover the most popular devices and OS and make a good assumption that behaviour of application will be the same on other models(kind of equivalent classes method) and make a tests on selected real devices. I did it in my project and I can sign under this solution with both hands(and other precious parts of body).</p>
110
111<p>In my project I am using 4 mobiles, one IPhone with latest IOS version, and three mobiles with android OS versions as follows 5, 6 , 7. That gives me a good picture of how the app can look like when some block will be viewing it on his mobile.</p>
112
113<h3>3. Solutions.</h3>
114
115<p>The next question is how we can automate mobile tests? TBH it is easier than can be imagined. The most important thing is to choose correct for your needs test tool which will be a great tool in QA’s hand but not become a great friend with no benefits(then it is not a friend any more in this case, correct?). 
116First of all we need something which will allow us to use existing tests written in one of the most popular programming languages availiable plus additionally if it is a frontend App it will support a Selenium Webdriver. Second thing is which needs to be doable is to select a mobile easy enought to don’t get crazy while running tests.
117 And the last condition is to run tests remotely to make sure that you are not the only person in who can run the test. So what’s gonna be the best tool to get this requirements done? There are two answers:</p>
118
119<dl>
120		<dt>Solution 1</dt>
121		<dd>
122			<p>Go to cloud solutions. I don't want to link here to any service which provides this 
122solution. It's easy to google. That is a great way if you have got some spare money to spent or your boss is very open-minded. But be sure this solutions is not cheap. If that's is not a problem for you, you are not gonna find this blog as interesting, rather waste of time. I did not have this money to proof my concept of automating tests for mobile devices so I jumped straight to second solution.</p>
123		</dd>
124		<dt>Solution 2</dt>
125		<dd>
126			<p>Create your own platform. Considering 3 AC I stated above my choice was easy - I decided to use Appium framework. And this decision redifined my testing that they became fascinating like never before.</p>
127		</dd>
128</dl>
129
130<p>If You got so far in reading this article that means I have got your interest. I promise to take care of this gift and describe as easy and detailed as possible how to run the automated tests using Appium for real devices. Shall we… ?</p>
131
132<center><a href="https://appiumator.github.io/2018/10/19/first-mobile-test-on-android.html">Next post - "First mobile test on android device"</a></center>
133</div>
134	 <center><div
135		class="just-comments"
136		data-apikey="fa7789ae-f129-42c1-8af3-c28666835a64">
137	</div></center>
138	</article>
139</div><!-- Footer -->
140<div id="footer">
141  
142  <!-- Copyright -->
143  <ul class="copyright">
144    
145      <li>&copy;Appiumator. All rights reserved.</li>
146    
147    <li>Design: <a href="http://html5up.net">HTML5 UP</a></li>
148    <li>Jekyll integration: <a href="https://chrisbobbe.github.io/">Chris Bobbe</a></li>
149  </ul>
150  
151</div></body>
152</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.