Colantonio's Report: What I learned at SeleniumConf 2017
This year's Selenium Conference was the largest to date, with about 500 people in attendance, according to conference organizer Dave Haeffner. I covered a lot of ground, attended plenty of sessions, and spoke with many attendees about the state of Selenium and how people are using it. Here's what I learned.
The state of the Selenium project union is strong
At this point, it has been widely reviewed and satisfies the Working Group's technical requirements. And that means that if they haven't already done so, browser vendors can now create their own implementations of WebDriver that follow the W3C specification. This is important because once WebDriver passes the next W3C phase (sometime around September), Selenium 4 can ship.
Expect a painless transition to Selenium 4
With Selenium 4, browser vendors will now be responsible for owning their own Selenium implementations, and that's a big deal. Another plus, said Simon, is that the move from Selenium 3 to Selenium 4 will be painless for end users.
Aside from all the buzz around Selenium 4, some of the more popular sessions at this year’s conference revolved around continuous integration (CI), continuous delivery (CD), culture, and ways to create better automation.
I'm an introvert, so one technique I like to use to break the ice when meeting new people at a conference is to ask them about their favorite session. Based on my informal polling, here are some of the subjects and sessions that were on people's minds.
The build that cried broken
Angie Jones rocked a packed room with her session, The Build That Cried Broken: Building Trust in Your Continuous Integration Tests. What was unique about Jones' session was that she built her talk around Aesop’s fables and the ways in which lessons from those stories apply to CI.
For example, she referenced the story of the shepherd boy who cried wolf until villagers ignored him. This, of course, became a problem when a wolf actually appeared. That's what happens when your tests are failing in CI but no one pays attention to them anymore because your tests are always so flaky.
Of course, similar stories could also apply to what many of us face because of our respective company cultures.
How to transform your culture
The things that create issues with automation often have nothing to do with automation itself, but with the culture. That's what Ashley Hunsberger, a test automation architect at Blackboard, covered during her session on transformative culture.
Culture is the No. 1 thing that is holding teams back from succeeding with test automation, she said, and her session highlighted several ways to address those cultural issues.
Blackboard's end goal is to enable development teams to own testing and quality. Her team even stopped calling itself QA. That doesn’t mean that quality is no longer a priority; quality assurance is more important than ever. But now everyone is responsible for quality, not just some other team that used to be called QA.
The rest of her session covered the other steps her team took to help transform their culture into a "whole-team” approach to creating quality software.
Red-meat sessions for test automation techies
What would a Selenium conference be without some technical meat for the automation nerd? My favorites included these:
You’d be surprised at the insights you can get just from listening in on conversations between sessions. As I shadowed presenter Andrew Krug, I overheard other attendees speaking with him about how much they liked his session, Fun with Fluent Testing.
A Fluent testing pattern consists of practices such as method chaining, which ensures that every method you have returns an object. Krug also demonstrated another approach, method cascading, that he described as allowing your methods to flow into one another. This, in turn, allows you to write code that is very readable. Krug talked about how you can achieve better readability using Fluent Assertions, database queries, and generics.
Andrew’s session drove home the point that automation engineers are developers. As such, they need to start developing scripts that follow normal development practices.
Best of show: Appium is the future
I enjoyed most of the sessions this year, but Dan Cuellar's presentation on how to automate Windows and Mac Apps with the WebDriver protocol was my favorite.
With the help of Yosef Durr from Microsoft and Stuart Russell from Intuit, Cuellar demonstrated how to automate desktop apps using Appium. In one of the demos, Yosef showed how to use WebAppDriver to automate an old Visual Basic 6 application.
Cuellar is calling this the “Star-Driver” vision, some of the characteristics of which are:
It uses one protocol to automate everything.
It continues generalizing the WebDriver specification.
It lets vendors bring their own implementation of the protocol.
How cool is that? Imagine the ability to automate everything, not just browsers, seamlessly in your language and IDE of choice using one protocol. Looking at some of the features on the Star-Driver roadmap, I'd say that this is the future of automation.
Got Selenium? Pay it forward
Another tradition (and attendee favorite) at a Selenium conference is the closing Q&A with the Selenium committers. It was clear from this year's Q&A that there are many areas where the Selenium project needs your help, so consider giving back to the community.
It's easy to forget that Selenium is an open-source tool and that most of the contributors to the Selenium project—and the conference volunteers—do so on their own time, for free. So show some love, and invest some of your own time back into the community.
For more on SeleniumConf
So that's the wrap for this year: Selenium is moving forward with W3C Candidate Recommendation status, Selenium 4 should be a relatively painless migration, and Appium is poised to play an even bigger role in your future. I summarized some of the practical advice given as the best sessions last week, but there's more to tell.
If you missed the conference, or you just want to revisit one of the sessions describe above, well, you can. All of the sessions (including the ones I touched on in this article) are available free in the SeleniumConf YouTube channel.
What were your favorite presentations and biggest takeaways? I look forward to your comments.