
- Mobile Testing - Home
- Mobile Testing - Overview
- Mobile Testing - Platforms
- Mobile Testing - Device Types
- Native Vs Hybrid Vs Mobileweb
- Mobile Testing - Device Vs Application
- Emulator Vs Simulator
- Mobile Testing - Application
- Mobile Testing - UI
- Mobile Testing - Planning & Tools
- Hardware Perspective
- Mobile Device Testing - Types
- Mobile Testing - Framework Overview
- Mobile Testing - Android Frameworks
- Mobile Testing - IOS Frameworks
- Robotium Framework
- Selendroid Framework
- Mobile Testing - Appium Framework
- Mobile Testing - Zucchini Framework
Mobile Testing - Zucchini Framework
Zucchini is a new testing framework that uses a BDD-style domain-specific language (DSL). One of its focus areas is simplifying the acceptance tests written with Selenium.
It is not a replacement for JBehave or the Robot Framework, as you will see later on. Here, we will give you a glimpse of Zucchinis concepts by describing an example step by step.
How to install Zucchini
The prerequisites to install Zucchini is XCode 4.2. In addition, a few command line tools are required such as brew update && brew install imagemagick && brew install coffee-script.
How to Use Zucchini
gem install zucchini-ios
Start by creating a project scaffold
Create a feature scaffold for your first feature
Start hacking by modifying features/my_feature/feature.zucchini and features/support/screens/welcome.coffee.
Zucchini doesn't involve making any modifications to your application code. You might as well keep your Zucchini tests in a separate project.
zucchini generate --project /path/to/my_project
zucchini generate --feature /path/to/my_project/features/my_feature
Alternatively, 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.
-
Running on the iOS Simulator. We strongly encourage you to run your Zucchini features on real hardware. However, you can run them on the iOS Simulator, if you must.
-
First off, modify your features/support/config.yml to include a full path to your compiled app. For example,
app:/Users/vaskas/Library/Developer/Xcode/DerivedData/CoreDataBooks-ebeqiuqksrwwoscupvxuzjzrdfjz/Build/Products/Debug-iphonesimulator/CoreDataBooks.app
Secondly, add an 'iOS Simulator' entry to the devices section (no UDID needed) and make sure you provide the actual value for 'screen' based on your iOS Simulator settings −
-
-
Run it like −
ZUCCHINI_DEVICE="iOS Simulator" zucchini run /path/to/my_feature
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
Result Display
