Git Product home page Git Product logo

zucchini's Introduction

Zucchini

Build Status Coverage Status Gem Version

Requirements

  1. Mac OS X 10.6 or newer
  2. XCode 4.2 or newer
  3. Ruby 1.9.3 or newer
  4. A few command line tools which can be installed with homebrew:
brew update && brew install imagemagick node
npm install -g coffee-script

Start using Zucchini

gem install zucchini-ios

Using Zucchini doesn't involve making any modifications to your application code. You might as well keep your Zucchini tests in a separate project.

To create a project scaffold:

zucchini generate --project /path/to/my_project

Then to create a feature scaffold for your first feature:

zucchini generate --feature /path/to/my_project/features/my_feature

Start developing by editing features/my_feature/feature.zucchini and features/support/screens/welcome.coffee.

Make sure you check out the zucchini-demo project featuring an easy to explore Zucchini setup around Apple's CoreDataBooks sample.

Running on the device

Add your device to features/support/config.yml.

The udidetect utility comes in handy if you plan to add devices from time to time: udidetect -z.

ZUCCHINI_DEVICE="My Device" zucchini run /path/to/my_feature

You can set one of the devices to be used by default in config.yml so that you can avoid setting ZUCCHINI_DEVICE each time:

devices:
  My Device:
	default: true
	...

Running on the iOS Simulator

We encourage you to run your Zucchini features on real hardware. However you can also run them on the iOS Simulator.

First off, modify your features/support/config.yml to include the path to your compiled app (relative or absolute), e.g.

app: ./Build/Products/Debug-iphonesimulator/CoreDataBooks.app

Secondly, add a simulator device entry (no UDID needed) and make sure you provide the actual value for screen based on your iOS Simulator settings:

devices:
  My Simulator:
    screen: retina_ios7
    simulator: iPhone (Retina 4-inch)
    ...

You can also override the app path per device:

devices:
  iPad2:
    screen: ipad_ios6
    app: ./Build/Products/Debug-iphoneos/CoreDataBooks.app

Note that config.yml is compiled through ERB so that you can use environment variables, e.g.

app: <%= ENV['ZUCCHINI_APP'] %>

Run Zucchini and watch the simulator go!

ZUCCHINI_DEVICE="My Simulator" zucchini run /path/to/my_feature

See also

Built-in help

zucchini --help
zucchini run --help
zucchini generate --help

Further reading

Credits

zucchini's People

Contributors

insanehunter avatar phatmann avatar rainzoo avatar richardpfisk avatar shaune avatar

Watchers

 avatar  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.