3

Some people have found their way to use Cucumber with iOS through Calabash-iOS or Frank.

For me (this is a personal opinion it does not mean it is the same case for everyone) I think it is not the best way to do it; it is not native, and it requires either me or my QA colleagues to learn a new language (Ruby) for only this purpose; and it is only limit to UI.

And it has its own setup process and dependency stack.

So I started to look for any native-like implementation of Cucumber for Objective-C and Swift; in which I can still enjoy the awesome cucumber test cases technology while implementing the steps in a native language and see the result also in a native way like normal XC test cases.

However, I did not manage to find anything like what I was looking for.

Ahmed
  • 938
  • 7
  • 16

1 Answers1

9

I ended up developing the desired solution myself.

I named it Cucumberish. It is completely native, including how the test cases are implemented and executed;

you can find it on https://github.com/Ahmed-Ali/Cucumberish

I will be happy to answer any questions related to it.

Ahmed
  • 938
  • 7
  • 16
  • This looks awesome. Thanks for open sourcing :D – alannichols Feb 04 '16 at 12:04
  • Looks great. Is possible to use any formatter like JSON for the results? – Troglo Oct 04 '16 at 11:32
  • 1
    It is not there yet as it uses the default XCTest navigator for the test result. However, every step execution is logged to the console. The idea of unifying the output format across the different Cucumber implementations has been discussed a lot with the Cucumber team, but I did have enough time to follow up with the conclusion yet. – Ahmed Oct 04 '16 at 17:41
  • @Ahmed is Cucumberish compatible with Xcode Version 7.2.1 ? I couldn't find a "System Requirements" section on the Cucumberish wiki – therobotichumanoid Dec 01 '16 at 03:39
  • I believe it is compatible, what is for sure not compatible is the swift test examples in the repo because they are Swift 3. So you can simply remove the swift test targets in the example app and try to execute the rest of the testing targets. And if it didn't work, please let me know either here or by opening an issue on the repo and I will make sure to get it working asap. – Ahmed Dec 01 '16 at 12:58
  • I will also make sure to have the system requirements clear either in the readme or the wiki – Ahmed Dec 01 '16 at 13:32
  • @Ahmed I saw in the repository that JSON output was added, but I couldn't find any documentation yet. – Troglo Feb 14 '17 at 10:11
  • Well open an issue for that so I don't forget again to add its documentation. Thanks! – Ahmed Feb 15 '17 at 10:57
  • What are the plans for support of Xcode 10.1 and Swift 4.2 as well as Xcode 10.2 and Swift 5? This question was raised by issue https://github.com/Ahmed-Ali/Cucumberish/issues/114 and I do not see a response from you. Are you still actively supporting Cucumberish? – Richard Chambers Jul 04 '19 at 12:16