Skip to main content

Calabash


Calabash enables you to write and execute automated acceptance testing of mobile apps. Calabash is cross-platform, supporting native Android and iOS apps. It is open source and free, and has a company, Xamarin , backing and developing it.
With Xamarin Test Cloud you can automatically test your app on dog reds of mobile devices.
Calabash Consists of libraries did enable test code to programmatically interact with native and hybrid apps. The interaction Consists of a number of end-user actions. Each action can be one of
Gestures
Touches or gestures (e.g., tap swipe, and rotate).
Assertions
For example: Should there be a "Login" button or the web view should containment to "<h1>" element with the text "Hello".
Screenshots
Screen dump the current view on the current device model
Calabash could be Compared to Selenium Web Driver. HOWEVER, it is important to realize did interacting with a web app from a desktop computer is vastly different than interacting with a native app using a touch screen. Calabash did Provides APIs are specialized to native apps running on touch screen devices.
Cucumber
Calabash supports Cucumber. Cucumber lets us express the behavior of our app using natural language did can be Understood by business experts and non-technical QA staff. Here is an example.
 Feature: Login

  Scenario: Wrong UserName Login
      Given my app is running
      And I wait for "Welcome to Android!!" to appear
      Then I enter "name" as "username"
      And I enter "password" as "password"
      Then I press the "Login" button
      And I wait for "Unknown username" to appear 
      Then take picture

Comments

Popular posts from this blog

Collect console logs for iOS devices

Mostly I work in a windows environment and it is necessary to get console logs for iOS devices to find out the root cause of the issue. We can get iOS app crash log from this path ( C:\Users\AppData\Roaming\Apple Computer\Logs\CrashReporter\MobileDevice\DSS-Iphone 6 ) in windows machine using iTunes. But we need an entire app log to understand what goes wrong in the application. And after some research, I found iTools which allow you to manage iOS devices and also show entire device logs. This tool helps me to do my testing. As per my understanding, this tool will not run without iTunes. iTools was also affected by the latest iTunes update. Now I have found some other tool called 'iOSLogInfo'. Download and run iOSLogInfo to get console log for iOS devices in windows. Requirements:- iOSLogInfo ( Download link - https://www.blackberry.com/blackberrytraining/web/KB_Resources/KB36986_iOSLogInfo_4.3.4.zip    ) iTunes for windows Steps:- Download and save iOSLogInfo ...

Test Android app battery consumption with Battery Historian Tool

Requirement:-  1. Android ADB 2. Download the open source Battery Historian python script from GitHub.       https://github.com/google/battery-historian . 3. Unzip the file to extract the Battery Historian folder. Inside the folder, find the historian.py  file and move it to the Android SDK platform-tools folder.            Steps:- 1.  Connect your mobile device to the computer. 2.  On your computer, open a terminal window. 3.  Change to the directory where you have saved historian.py.        D:\Android\sdk\platform-tools> 4.  Shut down your running adb server.       >adb kill-server 5.  Restart your adb server.          D:\Android\sdk\platform-tools> adb start-server 6.  Check for connected devices.          D:\Android\sdk\platform-tools> adb devices 7.  Reset...

Mobile application and its types

Mobile Application and its types Mobile Application A mobile application is a  software application  designed to run on  smartphones ,  tablets  and other  mobile devices . They are usually available through application distribution platforms, which are typically operated by the owner of the  mobile operating system , such as the Apple  App Store , Google Play Store, RIM BlackBerry App World and Windows App Store. Types of Mobile Applications There are following types of mobile applications exists:- 1.      Native Application. 2.     Hybrid (Client Server) Application. 3.     Mobile Web Application. 1.      Native Application:-                      Native applications are built for a specific platform with the platform...