0

To setup Calabash-iOS I have followed below steps:

  • Installing using command gem install calabash-cucumber
  • In project folder, I have executed calabash-ios download

I have followed links like: this and this.

Now, since I don't want different target for my application, I have followed this link which explains the steps to create different scheme for Calabash integration.

I have changed all the Build Setting values like Other Linker Flags & Framework Search Path.

Finally, running the project doesn't start the server as described in their post. It seems that calabash framework is not loaded.

Am I missing any thing that needs to be done in source code? How will calabash framework be loaded in project?

DShah
  • 9,768
  • 11
  • 71
  • 127

2 Answers2

0

I am not really sure what exactly may be the problem. But which I feel as it is available on Cocoapods you should use it using pod. Which is much easier way and also easy to update. For reference Using CocoaPods

aman.sood
  • 872
  • 7
  • 19
  • I had thought of using this approach but as per the link: http://angelolloqui.com/blog/25-Acceptance-testing-with-Calabash-and-CocoaPods. I thought not to go with this approach as their may be issues. Also, the Calabash itself don't recommend the approach as mentioned in https://github.com/calabash/calabash-ios – DShah Aug 12 '15 at 12:30
  • Just gone through readme on git. Reason why they are not recommending cocoapods is as you cant upload you app to app store with it as it might get rejected (reason may be undocumented api use). So there are ways to handle these using different configuration in project build. But if looks too much then you can just remove it from pod file just before app store upload. But still will recommend to do it using different schema in Xcode project. – aman.sood Aug 12 '15 at 12:36
  • posted by mistake. You can check its edited version :) – aman.sood Aug 12 '15 at 12:43
  • RE: Calabash + AppStore - It will be rejected because the Calabash iOS server uses private Apple APIs and frameworks. – jmoody Aug 18 '15 at 07:52
  • RE: CocoaPods - We don't recommend CocoaPods if you are not already using CocoaPods. The reasons are: the pod spec is not updated as often as we release (we don't own the spec) and CocoaPods adds an unnecessary amount of complexity to a very simple task - linking a framework. We don't want users to get the impression that they need a lot of machinery to get started with Calabash. Also, if we advocated CocoaPods, we'd have to do a lot of CocoaPods support. CocoaPods + Calabash's 2nd target can be tricky to configure. – jmoody Aug 18 '15 at 07:55
  • I dont agree much to your comment. Mine is a big and diversified organisation, and we found Cocoapod very much useful. If 3rd party vendor is working as open source with Github, Cocoapod is best as you get anytime update code by just install pod command. Now there may be some vendor who are reluctant to share code and don't maintain github then that's their business model. Also as we have centralised build systems so we prefer separate dev, distribution and final app store release configuration as these help us reduce a lot of human errors and automate out build system. – aman.sood Aug 18 '15 at 08:45
0

You can find a very simple example in one of the Calabash repos: calabash/ios-iphone-only-app. The iPhone Only project has one target and that target links the calabash.framework.

You can find a more advanced example in the Calabash iOS Smoke Test app which uses the Calabash dylibs. Instructions can be found in this pull-request. The Calabash iOS Smoke Test project loads the calabash dylibs into the production target when the configuration is Debug.

jmoody
  • 2,480
  • 1
  • 16
  • 22