After a successful tutorial session in 2011, Brian Jones is back this year with a talk on a booming topic: mocking. Testing has always been fairly popular in the Python community, but it seems like more developers than ever are really on board with testing. The difference between unit testing and functional testing is getting more coverage. Test-driven development is becoming a more popular methodology. Continuous integration is getting easier to setup and use. It seems like every corner of the testing world is improving at a nice pace. Mocking in particular has been blowing up with more widespread use and more options than ever. Brian's talk, Fake It Til You Make It: Unit Testing Patterns With Mocks and Fakes, aims to help developers get to the next level of testing by sharing best practices in the test design.
While Brian has long been a fan of mocking, the last several years have seen enough mocking libraries produced to get him to switch from his home-grown tools to try what the community has to offer. Although he’s a former user of the Mox project, the choice of library for this talk will be the aptly named Mock. However, the choice of Mock is less about the library and more about being able to easily convey ideas behind mocking. "I suspect that Mock's 'action->assertion' approach to mocking will be more intuitive to pick up 'on the fly', in the course of a talk, than the 'record->replay' approach taken by other modules," says Brian.
"I want people to think of testing as being more like a fun little puzzle than...calculus," he said when asked what caused him to submit the proposal for this talk. Mocking, he feels, is a huge help in getting testing to fit inside the minds of newcomers to the arena. With the talk he hopes to introduce the techniques and the tools, then put it all together in practice. The 45-minute session includes several types of example applications, from a datetime abstraction library to a command shell program, to show how Brian’s best practices with test design and mocking can be used.
Speaking is just one of the fun parts of PyCon for Brian. In his second year on PyCon's program committee, he helped review a record number of talk proposals. Sometimes meeting two times a day, the program committee had a busy fall between online reviews and voting, then the various IRC-based discussions on later rounds of reviews. Being a part of the program committee for a second year allowed him to "further [his] conviction that the Python community is the most welcoming, open and inclusive group [he's] ever had the pleasure of being involved with."
When it comes to getting on-site at the conference, last year Brian volunteered some of his time to help out around the event. The evenings may be one of his favorite parts: he's a huge fan of the BoFs, or Birds of a Feather meetings. “I've been to conferences where I'm really just not that interested in *any* of the BoF sessions, but at PyCon '11 I actually had conflicts: I wanted to attend multiple BoFs in the same time slot," he says.
One of the best benefits he says of the conference is the ability meet up with the people he had been interacting with online for years. Now that he’s been to a PyCon in the past, meeting up with those same friends and meeting many more in 2012 is an incredible experience. In closing, he remarked that "The community around Python is unbelievable, and attending PyCon is a great way to be bombarded by that fact on a continual basis for a few days, which is good for the soul."
Be sure to check out Brian's talk on Friday March 9 at 2:55!