Month: May 2014
Thursday, June 12, 2014
Come as early as 6:00pm for pizza and salad and informal networking and discussion before the presentations begin, and join us after the meeting for less formal discussion at Four Peaks Brewing Company down the road.
Unit Testing and Mocking in IOS — Matt Ganski
After the premature release of a large scale software project, Shutterfly brought in Agile Software Management expert (Uncle) Bob Martin to share ideas in a post mortem talk. This day had the largest impact on my professional software career to date. Since then, I have pledged to never write or support a software project that has less than 95% unit test coverage.
The existence of unit tests in a software project surely slows development at first, but the eventual exponential growth of team velocity from having tests should not be discounted. Some software platforms are easier to test than others. Some cultures have differing opinions on testing. IOS started with a very negative opinion, but it is dramatically improving. If there is no way to achieve basic mocking and unit testing, it is our responsibility as professional engineers to resolve this. In the age of open source software, this is easier than ever to contribute and help better your software culture.
There are good ways and bad ways to write tests. Writing bad tests is a waste of time. I will be showing specific code examples that show how apparent this is. I will be sharing tidbits that I’ve learned specifically for testing IOS code, including testing for views and storyboard outlets. These pointers will hopefully save listeners hours of time and have a greater appreciation of automated tests.
The unit testing framework I have chosen for IOS is called Kiwi. I chose it because it gives me full power over testing and mocking my IOS code. I have not tried many other frameworks for testing IOS because I have always been able to achieve 100% test coverage with my code and Kiwi mocking.
I will also be talking about a library I wrote, MockInject, that solves some mocking problems that Kiwi did not provide.
Hype My Code — Joe Ballard
Joe Ballard will show some code he’s been working on lately, looking for feedback, suggestions, and ideas.
WWDC will be a week in the past by the time of this meeting. We’ll talk about what’s new and what everyone’s most excited about.