How to create or define a new target in a custom Xcode project template

TL;DR: What XML snippets do I add to my TemplateInfo.plist files, to create a second compiler target when creating a new Xcode project?

While working on my own Xcode project template, I’m trying to have KIF integration testing working in a ‘out of the box’ sort of way. KIF requires you to duplicate your regular target and then modify some properties. This is normally done manually, but it both takes time and leaves a margin for error, while it’s so mundane it could be automated.

  • -: unrecognized selector sent to instance 0x7b731ac0
  • Any way to pull out session key from access token returned by Facebook iOS SDK?
  • openURL in APPDelegate conversion error NSString -> String (Swift & iOS8)
  • How to set-up In App Purchase free trial period in iOS app
  • Change App Localization Based on User Selection
  • “Cannot assign to property: ”any“ is immutable” error
  • For clarity, I’m looking to create the second target in this screenshot automatically:

    Screenshot after manual duplication

    I got quite far with the whole template customization, but I just can’t figure out how to create another target, even though the templates create one for unit testing if you hit that checkbox. How does Apple do that?

    Have a look at the template project over at my github repository. If you want to see what I’m doing with KIF (even though for the answer of this question this is should not be necessary), have a look at the plist in the KIF Integrations.xctemplate folder.

    Solutions Collect From Internet About “How to create or define a new target in a custom Xcode project template”

    If I understand your question correctly…

    To duplicate the Build Target automatically without manually creating a new one and setting it up select the one you want to duplicate and press CMD+D


    (Instructions on how to do the same things but with (the more likely) build schemes (for future users who wonder to this question) are below:

    In xCode click Product (top bar… across from File, Edit, View, etc.) and then at the bottom of the drop-down menu click “New Scheme”.

    To duplicate your scheme (like you suggested) click “Edit Scheme” instead of “New Scheme” then click “Duplicate Scheme”