If necessary I can run tests on actual iPhone hardware by changing the sdk (`-sdk iphoneos4.0`) but I am not yet sure how I could specify which one of multiple devices would run the tests. TeamCity will also save the artifacts for each build so I can easily retrieve the dSYM for a particular ad-hoc build to symbolicate a crashlog for that build on any developer’s machine. Now my ad-hoc builds are produced automatically, always up to date with my working code changes, and available as an easy download from my TeamCity server. Users/teamcity/xcode_builds/Distribution-iphoneos/ => Users/teamcity/xcode_builds/Distribution-iphoneos/ExampleProject.app => ExampleProject.zip Once the ad-hoc build has been created I want to save the resulting app and its debug symbols so I add these as build artifacts under the TeamCity build configuration’s General Settings: Artifact paths: project example_project.xcodeproj -target “ExampleProject” -configuration “Distribution” -sdk iphoneos4.0 project example_project.xcodeproj -target “Unit Tests” -configuration “Debug” -sdk iphonesimulator4.0Īd-hoc builds run with a similar command: Command executable: Running these tests with a TeamCity build agent just requires a command line build runner which calls the `xcodebuild` command and specifies the project, built target, and configuration to build. I have been using GTM to run iPhone unit tests as part of the build process for a “Unit Tests” build target (see Alon’s post on our iPhone Unit Testing Toolkit). Each of the build configurations below then requires that compatible build agents be running on OS X. In order to build an iPhone project I need a build runner running on an OS X machine with Xcode installed so I added a remote build agent on a mac mini. Out continuous integration environment monitors the git repository used by each project, runs the project’s tests each time a change is pushed to the repository, and can automatically produce an ad-hoc build of an app each time the tests pass. Carbon Five has been using TeamCity as our continuous integration server for most of our recent projects, including our iPhone work.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |