Month: May 2014

June 2014 iOS Developer Group Meeting

Posted on

Thursday, June 12, 2014
7:00pm–9:00pm

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.

Matt Ganski is the Founder of FitNerds LLC, a startup that provides software as a service to group fitness facilities like Crossfit gyms. He is also a Senior Software Engineer at Shutterfly Inc, where he has worked for the Photobooks organization since 2010. Matt has been working in IOS since 2006, but has worked with a wide variety of programming technologies (Javascript, CoffeeScript, ActionScript/Flash, Python, Java, Groovy, …) all of which required different approaches to unit testing. In four years at Shutterfly, Matt has experienced large and small teams as well as failed and successful corporate projects. These experiences have led to first hand knowledge of positive and negative management techniques on software projects.

Hype My Code — Joe Ballard

Joe Ballard will show some code he’s been working on lately, looking for feedback, suggestions, and ideas.

WWDC Discussion

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.

Location

Software Ops, LLC
15030 N Hayden Rd
Suite 120 (north end of the building)
Scottsdale, AZ 85260

Map and Directions

Advertisements