-
Notifications
You must be signed in to change notification settings - Fork 45
/
Copy pathindex.old.html
executable file
·187 lines (130 loc) · 6.53 KB
/
index.old.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link href='https://fonts.googleapis.com/css?family=Architects+Daughter' rel='stylesheet' type='text/css'>
<link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen" />
<link rel="stylesheet" type="text/css" href="stylesheets/pygment_trac.css" media="screen" />
<link rel="stylesheet" type="text/css" href="stylesheets/print.css" media="print" />
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<title>Appium</title>
</head>
<body>
<header>
<div class="inner">
<h1>Appium</h1>
<h2>Automation for Apps</h2>
<a href="https://github.com/appium/appium" class="button"><small>View project on</small>GitHub</a>
</div>
</header>
<div id="content-wrapper">
<div class="inner clearfix">
<section id="main-content">
<h1>Appium</h1>
<p><a href="https://travis-ci.org/appium/appium"><img src="https://api.travis-ci.org/appium/appium.png?branch=master" alt="Build Status"></a></p>
<p>Appium is a test automation tool for use with native and hybrid iOS applications. It uses the webdriver JSON wire protocol to drive Apple's UIAutomation. Appium is based on <a href="http://github.com/penguinho">Dan Cuellar's</a> work on iOS Auto.</p>
<p>There are two big benefits to testing with Appium:</p>
<ol>
<li> Appium uses Apple's UIAutomation library under the hood to perform the automation, which means you do not have to recompile your app or modify in any way to be able to test automate it.</li>
<li> With Appium, you are able to write your test in your choice of programming language, using the Selenium WebDriver API and language-specific client libraries. If you only used UIAutomation, you would be required to write tests in JavaScript, and only run the tests through the Instruments application. With Appium, you can test your native iOS app with any language, and with your preferred dev tools.</li>
</ol><h2>Requirements</h2>
<pre><code>> Mac OSX 10.6 +
> XCode
> Apple Developer Tools (iphone simulator, command line tools)
</code></pre>
<h2>(FOR USERS): Ninja-speed Setup</h2>
<p>Install <a href="http://nodejs.org/">node.js</a> which come with its package manager <a href="https://npmjs.org/">npm</a>.</p>
<pre><code>> sudo npm install appium -g
> appium --app /path/to/your/ios/app &
> node your-appium-test.js
</code></pre>
<a href="https://github.com/appium/appium/tree/master/sample-code/examples">See example tests.</a>
<hr>
<h2>(FOR DEVELOPMENT): Prerequisite</h2>
<p>Install <a href="http://nodejs.org/">node.js</a> which come with its package manager <a href="https://npmjs.org/">npm</a>.
Change into your local repo clone and install packages using following commands:</p>
<pre><code>> sudo npm install -g mocha
> sudo npm install -g grunt
> npm install
</code></pre>
<p>First two commands will make test and build tools available (sudo may not be necessary if you installed node.js through homebrew). The third command will install all app dependencies.</p>
<p>To avoid a security dialog that can appear when launching your iOS app, you need to modify your /etc/authorization file. You can do this by settings the element following <allow-root> under <key>system.privilege.taskport</key> to <true/> or by running the supplied grunt task (at your own risk)</p>
<pre><code>> sudo grunt authorize
</code></pre>
<h2>Quick Start</h2>
<p>Download UICatalog:</p>
<pre><code>> grunt downloadApp
</code></pre>
<p>Build an app:</p>
<pre><code>> grunt buildApp:UICatalog
> grunt buildApp:TestApp
</code></pre>
<p>Run functional tests against TestApp:</p>
<pre><code>> grunt functional
</code></pre>
<p>Run unit tests against TestApp:</p>
<pre><code>> grunt unit
</code></pre>
<p>Run tests against UICatalog:</p>
<pre><code>> grunt uicatalog
</code></pre>
<p>Run all tests against TestApp and UICatalog:</p>
<pre><code>> grunt test
</code></pre>
<p>Before commiting code please run grunt to run test and check your changes against code quality standards:</p>
<pre><code>> grunt
Running "lint:all" (lint) task
Lint free.
Done, without errors.
</code></pre>
<h2>More things, low-level things</h2>
<p>If you want to run the appium server and have it listen indefinitely, you can
do one of the following:</p>
<pre><code>> grunt appium:TestApp
> grunt appium:UICatalog
</code></pre>
<p>Then you can, e.g., run individual testfiles using Mocha directly:</p>
<pre><code>> mocha -t 60000 -R spec test/functional/simple.js
</code></pre>
<p>Do you like getting close to the metal? Or are you trying to run this from
a script with a custom app? Start appium without grunt from the
command line (see parser.js for more CLI arguments):</p>
<pre><code>> node server.js --app /absolute/path/to/app -V 1
</code></pre>
<p>In this case, the app has to be compiled for the iphone simulator, e.g., by
doing this in the Xcode project:</p>
<pre><code>> xcodebuild -sdk iphonesimulator6.0
</code></pre>
<p>This will create a directory called build/Release-iphonesimulator in your Xcode
project, and this dir will contain the .app package you need to send to the
server.</p>
<p>You can also run against an app on an actual device by plugging the device in
and passing the udid argument to server.js in the command above.</p>
<h2>Using with a <a href="http://bitbeam.org">Bitbeambot</a>
</h2>
<p>AWAITING THE FUTURE</p>
<h2>Contributing</h2>
<p>Fork the project, make a change, and send a pull request!</p>
<h2>Mailing List</h2>
<p><a href="https://groups.google.com/d/forum/appium-discuss">Discussion Group</a></p>
</section>
<aside id="sidebar">
<a href="https://github.com/appium/appium/zipball/master" class="button">
<small>Download</small>
.zip file
</a>
<a href="https://github.com/appium/appium/tarball/master" class="button">
<small>Download</small>
.tar.gz file
</a>
<p class="repo-owner"><a href="https://github.com/appium/appium"></a> is maintained by <a href="https://github.com/appium">appium</a>.</p>
<p>This page was generated by <a href="pages.github.com">GitHub Pages</a> using the Architect theme by <a href="http://twitter.com/jasonlong">Jason Long</a>.</p>
</aside>
</div>
</div>
</body>
</html>