Giter Site home page Giter Site logo

illuminator's Introduction

ILLUMINATOR - the iOS Automator

Illuminator enables continuous integration for iOS apps. It makes it easy (well, easier) to write and debug sophisticated app tests. Additionally, it makes the entire UIAutomation apparatus more capable of handling high-volume automated testing -- providing features that are missing from Apple's "Instruments" application.

Top 3 features

1. Ease of accessing and interacting with UI elements

Illuminator is inspired by tuneup.js and mechanic.js, combining and improving the best features of both. Accessing UI elements can be done relative to a root element, by a fuzzy search of the element tree (easily extensible for app-specific capabilities), or by some combination of the two -- even if the element has not yet appeared on the screen.

2. Ease of scripting and executing test scenarios across different target devices

Test scenarios in Illuminator are easy to create and easy to read (and if you need to generate hundreds of test cases, it can be done programmatically instead of manually). Managing a large test bank is simple as well; Illuminator can run test scenarios by name or by tag, and (intelligently) on either iPad or iPhone targets. Illuminator can even complete test runs in which the app crashes during one of the tests.

3. The ability to remote-control your app

There are some test actions that can't be done through screen interactions alone (e.g. events that would put your app into the background; anything involving the camera, microphone, or other external devices; triggering network events to happen at planned intervals). Illuminator provides an RPC channel to expose these interactions -- enabling data to be passed betweent the app and the test script as appropriate.

Other Features

  • JUnit-formatted test reports
  • Cobertura-formatted coverage reports
  • Screenshot comparison capability with the ability to mask certain screen areas

Installation

  • Run bundle install to set up ruby gems

Further Documentation

Help

Where-to-post summary:

illuminator's People

Contributors

ianfixes avatar kviksilver avatar jbai2012 avatar griffinschneider avatar mpavlinsky avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.