Appium Setup in Mac for iOS App Automation :
We need Macbook(MAC OS X 10.7 (minimum version required)) for iOS automation.This cannot be done on Windows machine as Xcode will run only on Macbook
[1] Java JDK
[i] Download Java JDK from download link
[ii]Environment variables set up for Java JDK :
How to install Appium on MAC OS (2019 Update) with all external tools and components. I will try to explain each step respectively. To Install Appium for Mac: 1. Download a release and unzip the application into your /Applications folder 2. Follow the brief supplemental installation instructions to enable Appium to have access to OS X's Accessibility APIs (For more information on using AppiumForMac, check out the docs). Open Appium.io and click on Download Appium button. Now download the latest.dmg file and once downloaded, double click on the.dmg file. It will open a new window where you need to drag and drop Appium into the application folder. Search for Appium and double click on the Appium icon. For Linux/Mac: Run python -version to see which python version is currently installed, make sure it is 2.5.X or above. OS X, Ubuntu and most other Linux distro's come with Python pre-installed. Getting Started. With TestingBot you can easily run automated tests with Python against your mobile app. For large uploads, we recommend using the API. Get instructions. Downloads; Tags; Branches; Name Size Uploaded by Downloads Date; Download repository.
[a]echo export “JAVA_HOME=$(/usr/libexec/java_home)” >> ~/.bash_profile
and restart your shell (Close the terminal and open)
[b]If you have multiple JDK versions installed and you want it to be a specific one, you can use the -v flag to java_home like so:
echo export “JAVA_HOME=$(/usr/libexec/java_home -v 1.7)” >> ~/.bash_profile
[c]Checking bash_profile page – In terminal “vim ~/.bash_profile” will open the bash_profile page which contains :
export JAVA_HOME=$(/usr/bin/java)
export JAVA_HOME=$(/usr/libexec/java_home)
“:wq” to quit from bash_profile page
Bluefire reader kindle. [2] Xcode
Download Xcode from download link
[3] Node.js
Install node js from download link and download link1
[4]ideviceinstaller
Install ideviceinstaller on Mac OSX
About the App
- App name: ideviceinstaller
- App description: Cross-platform library and tools for communicating with iOS devices
- App website: http://www.libimobiledevice.org/
Install the App
- Press Command+Space and type Terminal and press enter/return key.
- Run in Terminal app:
- ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)” /dev/null
- and press enter/return key. Wait for the command to finish.
- Run:
- brew install ideviceinstaller
Done! You can now use ideviceinstaller.
[5] Appium App
Download Appium Client
Download appium.dmg (GUI) from Download link and install it
[6]Install appium via cmd line tools
Using Appium from Command Line
Installation
- Open a terminal session
- Install homebrew (instructions)
- Run the below commands
$ brew install node # install node and npm
$ npm install -g appium # globally install appium
$ npm install wd
$ appium # Launch your appium server!
Usage (Optional)
Whenever you want to begin an appium server session, type appium to run the server.
Arguments can be added to that command.
appium –app path/to/app –device-name “iPhone Simulator”
Using Appium.app inspector with server (Optional)
In my development env setup, I don’t use the Appium.app server, but I DO use the inspector.
- Start your Appium server with the –app and –device-name arguments
- Click on the Appium.app inspector icon
- The iPhone Simulator will launch, and may give you an authorization prompt for Instruments to control it
[7] Appium Dependencies Check
Launch the Appium(GUI) and select Appium Doctor,Appium Doctor will checks for all dependencies and display a message “Everything looks good, bye!” if all dependencies are installed
If some dependencies are not installed it will ask to install and we can install from pop up shown
[8]Application(.ipa file)
[i]For automation we need app signed with a Development certificate(Not enterprise, not from the app store, not release).You can ask any of your developer to give the build in development mode)
or
[i] In Xcode, make sure the Debug Code Signing Identity in Build Settings->Code Signing is set to Developer provisioning profile.
[ii] Build and run (⌘R) the app directly to the real device/Simulator from Xcode. After that stop the running.
[iii] Build the app (⌘B) so it will generate the .app file
[iv]Note down the build path of your application where your ‘.app’ file will be created
[i]Make sure you are automating a .ipa file but not .app file
[9]Device settings:
[i]In your iOS device, Go to Settings -> Developer and Enable the UI Automation (instructions)
[ii] Your device may not be enabled for development.Go to Xcode ->Click Open Developer Tools-> Click Instruments->In top of the Instruments tab you can find Choose a profiling template(Choose your iPhone device)->Select Automation->Click Choose button andClick the Play button.
[iii]Device should be unlocked
[10]Launch Appium and start Inspector
[i]Get device udid from iTunes
[ii] I launched Appium and then started Inspector. I got errors that “A session could not be started” with different original errors. The one that stuck around most, said: “instruments crash on startup”. workaround for it is:
- Start Appium GUI app
- Open Developer Settings of Appium GUI app
- Put a tick in Enabled
- Put a tick in Custom Server Flags
- In the text field of Custom Server Logs put –native-instruments-lib
- Open General Settings and make sure Server Address is 0.0.0.0 and Port is 4725
- Open iOS Settings
- In iOS Settings, Basic tab
- Add App Path (App location in the machine)
- Force Device, mine is iPhone 5, Platform 9.2, if you still get errors, in the appium log available devices are listed, find them and select to force device with data from the list or find device from xcode simulators list
- In iOS Settings, Advanced tab
- Put a tick in Use Native Instruments Library
- Put a tick in Instruments Launch Timeout, add 900,000 ms
- Press Launch btn in Appium GUI app
- Press Inspector btn in Appium GUI app
Finally the Inspector loads the app in a simulator of the forced device
[11] Appium Project creation in Eclipse :
Download Eclipse for Java from download link
[i]Launch Eclipse
[ii]Top left ->File->New->Select Java Project
[iii]Add Project name and select Finish
[iv]Java Project will be created
[v]Select Created Project,Right click on Src->New and select Package
[vi]Add Package name and select Finish
[vii]Right click on Src->New and select Class
[viii]Add Class name and select FinishNow we Created a Appium Project. Add jars mentioned at steps [12] &[13] (Appium Client library and Selenium Server Jar) to Appium Project (Right click on project ->Properties->Add External Jars)
[12]Appium client library-Java (download)
[13]Selenium Server jar (download)
[14]TestNG -optional (download)
Appium has been a solid test automation framework for some time, but with the release of Appium desktop it's now even easier to use!
Join the DZone community and get the full member experience.
Join For FreeWe’ve talked about this many times, but Appium has been one of the most solid open source test automation frameworks during the few past years. And despite significant changes in Appium iOS, it seems that this framework is going (again) full steam ahead.
The latest addition is the Appium Desktop tool that enables users to work with Appium on their desktops and use Inspector for yet better analysis of their app. Let’s take a look at how to get Appium Desktop installed and how to work with it.
Appium Desktop is a great new tool for Appium users that actually makes the use of Appium test automation framework easier. However, Appium Desktop doesn’t replace any Appium components itself – but it adds great capabilities to work with Appium Server and Appium Inspector to explore your application. Furthermore, it also enhances the way test scripts can be built and we’re pretty sure this will help many of you with the script creation.
Appium Desktop for Mac, Windows, and Linux
Appium Desktop is an open source application running on Mac OS X, Windows, and Linux operating systems. Appium Desktop combines two essential components of Appium:
- Appium Server: Server instance for enabling testing (and test automation) of apps.
- Appium Inspector: For inspecting UI elements of your app and getting all details of those.
Appium desktop provides a graphical user interface for these two components that makes test script creation easy, setting up an Appium test server quickly, and even setting up the whole Appium environment with Appium Desktop installation.
One significant benefit introduced with Appium Desktop is that you don’t need Mac anymore to efficiently develop Appium test scripts. With the help of Appium Desktop, you can use Windows or Linux as well.
How to Get Started with Appium Desktop
First, download the right package for your platform (Mac, Win, Linux) from Appium Desktop release page. After the download has completed install the package as you install any application on your OS.
Run the application and the following options will be available in the main menu:
Advanced options, such as server address, ports for Android and iOS agents etc. can be configured here but it’s highly recommended to read product documentation before doing so.
If you want to use local devices, start the Appium Server with preferred configurations and the server console will be launched on the host and port you specified. NOTE! If you use cloud services (such as Bitbar Public Cloud) you don’t need to start the Appium Server.
With Appium Desktop you don’t need to work with command line, but in case you have to or you have integrated your Appium environment with some tools, you can also work with the command line to get things done.
Now, you can click ‘Start New Session’ on console view and this will enable the use of Appium Inspector on recently the launched server. Furthermore, the new window opened enables you to build desired capabilities for an Appium test run/session, as follows:
TIP! When drafting desired capabilities for your test, Appium Desktop is capable of returning specific desired capabilities that are missing. For example: “testdroid_target”; “testdroid_project”; “testdroid_testrun”; etc.
TIP 2! When you have entered your desired capabilities do remember to save them (by clicking Save As…). This is very handy as those desired capabilities will be in use in next sessions with the Appium Desktop (e.g. if you close Appium Desktop your desired capabilities will be removed if not saved).
The Appium Desired Capabilities for your Appium tests, devices and additional configuration is fairly simple, but if you look for more information about how to master desired capabilities take a look at the Appium Ebook that provides you plenty of tips and tricks on how to use Appium efficiently.
Appium Inspector provides a graphical user interface tool to inspect your application with the ability to exercise certain interactions for it. Appium Inspector, which now uses XCUITest as the Appium foundation, looks like this with Bitbar Sample App:
When a user clicks any element on the screenshot Appium Desktop automatically updates “Selected element” view to reflect the user’s interactions. After this, users can implement different functions, like tap, write (send keys), etc.
Install Appium Mac
Are you looking for a comprehensive list of tips and tricks for Appium? Take a look at our best practices, tips, and tricks provided with those blogs!
Enjoy Appium Desktop!
Published at DZone with permission of Ville-Veikko Helppi, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments are closed.