I spent this last weekend at AWTA, the Austin Workshop on Test Automation. Our official topic was Open Source Testing Frameworks. Before the meeting, I figured we’d discuss experience reports about how folks used Watir/Selenium/xUnit/CruiseControl/etc. and Ruby/Perl/Python/etc. to cobble together totally automated, lights out, acceptance testing solutions.
We did discuss topics like that. Bob Cotton showed us some very cool code integrating SeleniumRC and rspec. Jeff Fry showed some excellent Ruby code that generated tests on the fly. Some folks got together and spiked an integration of Selenium and Watir. (Brian Marick dubbed it “Mineral Watir.” Oooh. Bubbly.) Paul Rogers and David Crosby both spent time pairing with me to improve my Web 2.0 testing example, digging into JSUnit, Selenium, and the unittest.js library from Prototype. (Yes, I’ll get around to posting code sometime soon.)
And we did talk about how any given Open Source test automation approach intevitably involves integrating multiple pieces.
But what I didn’t expect to happen is that the discussion would turn to how developers are becoming testers and testers are becoming developers. In retrospect, I should have known it would happen. The subject is bound to come up when a bunch of developers who are passionate about testing hang out with a bunch of testers who spend a lot of their time writing code.
And it seems we weren’t the only ones thinking about this topic. Chris McMahon kindly alerted me to Steve Rowe’s excellent post about Test Developers.
So this has me thinking.
Tester-developers and developer-testers aren’t new. But we seem to be a hidden sub-community. We sometimes have titles like “Tool Smith,” but more often we have titles that look like most other tester or developer titles: “Senior Test Engineer” or somesuch.
But the role is growing.
I think that’s partly because large, successful companies are leading the way. Microsoft has a special job class and title: “Software Development Engineer in Test.” And I have heard unsubstantiated rumors that interviewing for a test position with Google involves answering questions about algorithm design.
I also think Agile is contributing to the growth in the role. Agile teams tend to blur the distinction between jobs, particularly developers and testers. Agile developers are test infected, and Agile testers tend to spend time mucking about in code. As Agile grows, so the hyphenated tester-developer/developer-tester role grows.
So, if the number of people doing both test and development growing, where are we gathering as a community?
One gathering place is online communities. The agile-testing mail list is chock full of folks who both test and develop.
Another natural place for a community to gather is at a conference. AWTA was a gathering place on a small scale. But when I look at the major conferences, they’re pitched to Developers (SDWest), Testers (STAR), or Everyone (Agile, Better Software).
I want more opportunities to share experiences, write code together, and learn from each other.
So, if you’re a tester-developer/developer-tester, where do you go to share test code, talk about test refactoring strategies, or exchange notes on test frameworks and scripting languages?
Oh, and if you have a blog related to ( testing && development ), please post a link in the comments!