<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Selenium – smattering</title><link>https://trunk--polite-jelly-cc0866.netlify.app/tags/smattering/</link><description>Recent content in smattering on Selenium</description><generator>Hugo -- gohugo.io</generator><lastBuildDate>Sun, 18 Aug 2013 00:00:00 +0000</lastBuildDate><atom:link href="https://trunk--polite-jelly-cc0866.netlify.app/tags/smattering/index.xml" rel="self" type="application/rss+xml"/><item><title>Blog: A Smattering of Selenium #157</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-157/</link><pubDate>Sun, 18 Aug 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-157/</guid><description>
&lt;p>Trying to find every excuse not to cut the grass … including apparently closing some browser tabs.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://idtus.com/blog/interoperability-standardized-test-information-interchange/">Interoperability – Standardized Test Information Interchange&lt;/a> has me so full of ‘meh’ as to be hilarious. Commercially driven standards rarely are and/or I am just too much of an open source person to accept this model for standards development&lt;/li>
&lt;li>&lt;a href="http://lucumr.pocoo.org/2013/7/23/licensing/">Licensing in a Post Copyright World&lt;/a> – important&lt;/li>
&lt;li>&lt;a href="https://segment.io/blog/how-to-make-async-requests-in-php/">How to Make Async Requests in PHP&lt;/a> is php specific in its solution, but has some interesting bits about socket establishment that applies to other ones as well&lt;/li>
&lt;li>&lt;a href="http://fadefade.com/json-comments.html">Adding Comments to JSON&lt;/a> feels like a hack. Buts a clever hack.&lt;/li>
&lt;li>&lt;a href="http://axelfontaine.com/blog/final-nail.html">Maven Release Plugin: The Final Nail in the Coffin&lt;/a> takes great joy in removing part of the maven environment from their workflow. And really, who doesn’t?&lt;/li>
&lt;li>&lt;a href="http://www.jeffknupp.com/blog/2013/08/16/open-sourcing-a-python-project-the-right-way/">Open Sourcing a Python Project the Right Way&lt;/a> is nice … though of course, as with everything else these days, it has some Github specific isms. You &lt;em>can&lt;/em> do it the right way with hg and bitbucket of course… and that is disclaimed in the article&lt;/li>
&lt;li>&lt;a href="http://ihaztehcodez.michael-lloyd-lee.me.uk/2013/07/headless-watir.html">Headless Watir&lt;/a> using both HTTPUnit and PhantomJS&lt;/li>
&lt;li>&lt;a href="http://jimevansmusic.blogspot.ca/2013/08/implementing-http-status-codes-in.html">Implementing HTTP Status Codes in WebDriver, Part 2: Achievement Unlocked&lt;/a> – umm, part 2?&lt;/li>
&lt;li>&lt;a href="http://selenium34.wordpress.com/2013/08/14/phantomjs-plugins-aws-browsermob-proxy/">PhantomJS + Plugins + AWS + BrowserMob Proxy&lt;/a> – proxy all the things! Including headless things.&lt;/li>
&lt;li>&lt;a href="http://teddziuba.com/post/58003369831/mastering-the-craft">Mastering the Craft&lt;/a> is a good reminder, but also, eBay has its own customized version of eclipse? Guessing this is one of those ‘at scale’ solutions&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #156</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-156/</link><pubDate>Mon, 12 Aug 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-156/</guid><description>
&lt;p>Brain fried from PyCon Canada 2013 and ‘some’ browser tab is misbehaving which means its time to start closing some of these.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://antecedent.github.io/patchwork/">Patchwork&lt;/a> seems like an awesome idea, but at the same time, I’ve had to work in heavily monkey-patched RoR apps before…&lt;/li>
&lt;li>&lt;a href="https://igor.io/2013/07/26/evolving-syntax.html">Evolving syntax&lt;/a> is PHP specific in its examples, but the ideas transfer&lt;/li>
&lt;li>&lt;a href="http://adaptengine.com/blog/2013/07/24/roslyn-plus-selenium-scripty-csharp-powering-browser-automation/">Roslyn + Selenium: Scripty C# Powering Browser Automation&lt;/a> – some C# voodoo?&lt;/li>
&lt;li>&lt;a href="http://dnlkntt.wordpress.com/2013/08/07/its-like-10000-knives-when-all-you-need-is-a-spoon/">It’s like 10000 knives when all you need is a Spoon&lt;/a> – or specifically, this particular spoon which is yet-another-android-automation-tool. See comments for a bit of discussion re Appium which seems to be the currently best marketed solution in this space&lt;/li>
&lt;li>&lt;a href="http://www.diku.dk/hjemmesider/ansatte/torbenm/Planet/">Planet generator&lt;/a> has absolutely nothing to do with automation, but is just cool&lt;/li>
&lt;li>&lt;a href="http://www.testspicer.com/">TestSpicer&lt;/a> could be cool if it is massively flushed out&lt;/li>
&lt;li>&lt;a href="http://msdn.microsoft.com/en-us/library/ie/bg182625(v=vs.110).aspx">Compatibility changes in IE11 Preview&lt;/a> is going to break things I fear, for instance the readyState stuff?&lt;/li>
&lt;li>&lt;a href="https://speakerdeck.com/pyconca">PyCon Canada 2013 decks&lt;/a> are now up&lt;/li>
&lt;li>&lt;a href="http://jimevansmusic.blogspot.ca/2013/08/implementing-webdriver-http-status.html">Implementing WebDriver HTTP Status Codes, Part 1: Challenge Accepted&lt;/a> – is interesting in that it uses Fiddler&lt;/li>
&lt;li>&lt;a href="http://www.karlgroves.com/2013/05/14/links-are-not-buttons-neither-are-divs-and-spans/">Links are not buttons. Neither are DIVs and SPANs&lt;/a> – this, a million times.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #155</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-155/</link><pubDate>Sun, 28 Jul 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-155/</guid><description>
&lt;p>A ‘should be scripting, but brain stuck in neutral so closing some tabs’ edition of the Smattering.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://www.90percentofeverything.com/2013/07/23/the-slippery-slope/">The slippery slope&lt;/a> isn’t automation related, but if your employer does these things I’d suggest logging a bug and then finding an ethical job&lt;/li>
&lt;li>&lt;a href="https://caremad.io/blog/packaging-signing-not-holy-grail/">Why Package Signing is not the Holy Grail&lt;/a> – crypto / security is hard. Also, I have a signed package for you to install…&lt;/li>
&lt;li>&lt;a href="http://blog.preinheimer.com/index.php?/archives/416-PHP-and-Async-requests-with-file-based-sessions.html">PHP and Async requests with file based sessions&lt;/a> could be a way to speed up a PHP site. Which in turn reduces the amount of time your scripts take to run&lt;/li>
&lt;li>&lt;a href="http://canadipsum.com/">Canadipsum, eh?&lt;/a> just because. (eh)&lt;/li>
&lt;li>&lt;a href="http://blogs.infosupport.com/using-codedui-testautomation-without-uimap-files/">Using CodedUI testautomation without UIMap files&lt;/a> brings Page Objects to CodedUI&lt;/li>
&lt;li>&lt;a href="http://blog.matthewskelton.net/2013/07/22/continuous-delivery-workshop-with-neal-ford-neal4d-a-retrospective/">Continuous Delivery Workshop With Neal Ford (@Neal4D) – a Retrospective&lt;/a> – yup, the hard part is not the technical bit, but the people parts&lt;/li>
&lt;li>&lt;a href="http://librarian-puppet.com/">librarian-puppet&lt;/a> says &lt;em>You can all stop using git submodules now&lt;/em> which is good enough for me&lt;/li>
&lt;li>&lt;a href="http://swdandruby.wordpress.com/2013/07/26/highlighting-the-element-before-any-clicks-a-foray-into-the-abstracteventlistener/">Highlighting the element before any clicks: A foray into the AbstractEventListener&lt;/a> — the event listener stuff is something I need to sort out.&lt;/li>
&lt;li>&lt;a href="http://www.phptesting.org/">phpci&lt;/a> is built specifically for php apps, and doesn’t pretend to have the features something like jenkins does&lt;/li>
&lt;li>&lt;a href="http://words.steveklabnik.com/beware-subclassing-ruby-core-classes">Beware subclassing Ruby core classes&lt;/a> – there are likely parallels in other languages as well.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #154</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-154/</link><pubDate>Tue, 23 Jul 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-154/</guid><description>
&lt;p>Apparently today’s ‘wait for an email’ task is to whittle down the smattering queue some more.&lt;/p>
&lt;ul>
&lt;li>I won’t even pretend that &lt;a href="http://foaas.com/">FOAAS&lt;/a> has to do with automation, but makes me laugh. Also, depending on how crappy your place of work is, it might not be SFW&lt;/li>
&lt;li>&lt;a href="https://wiki.php.net/rfc/use_function">PHP RFC: Importing namespaced functions&lt;/a> is interesting if you are writing your scripts in a Functional manner. In PHP. In a future where it gets accepted and implemented.&lt;/li>
&lt;li>&lt;a href="http://www.webperformance.com/load-testing/blog/2013/05/measuring-web-page-load-times-using-jmeter/">Measuring Web Page Load Times using JMeter&lt;/a> — and read the response articles too for clarification / elaboration&lt;/li>
&lt;li>I kinda like that Se suites are making their way into large projects such as &lt;a href="https://github.com/moodlehq/functional-test-suite">Moodle’s functional-test-suite repo&lt;/a>. But at the same time it worries me when it hasn’t had a commit in 10 months. Suites should likely change even more than the app code it exercises&lt;/li>
&lt;li>&lt;a href="http://searls.testdouble.com/posts/2013-03-21-jasmine-tactics-screencast.html">jasmine tactics screencast&lt;/a> — on the long list of tools I should learn&lt;/li>
&lt;li>&lt;a href="http://blog.mogotest.com/2013/03/25/introducing-the-mogotest-jenkins-plugin/">Introducing the Mogotest Jenkins Plugin&lt;/a> – hurray for more pipeline integration points&lt;/li>
&lt;li>&lt;a href="http://blog.korynunn.com/javascript/the-dom-isnt-slow-you-are/">The DOM isn’t slow, you are.&lt;/a> — set the phasers on snark, and then read it anyways.&lt;/li>
&lt;li>&lt;a href="http://www.backalleycoder.com/2013/03/18/cross-browser-event-based-element-resize-detection/">Cross-Browser, Event-based, Element Resize Detection&lt;/a> – edges are sharp.&lt;/li>
&lt;li>&lt;a href="http://www.copyblogger.com/social-media-marketing-roi/">There is No ROI in Social Media Marketing&lt;/a> – read this, and now read it again swapping in Functional Automation everywhere&lt;/li>
&lt;li>&lt;a href="http://hellogeri.com/blog/view/now_available_pocket_guide_to_colour_accessibility">Now Available: Pocket Guide to Colour Accessibility&lt;/a> could, in theory, be translated into a set of ‘rules’ to validate pages against since we can the colour of elements and their computed css values.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #153</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-153/</link><pubDate>Mon, 22 Jul 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-153/</guid><description>
&lt;p>A Sunday Smattering? Sure!&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://blog.reallysimplethoughts.com/2013/07/14/solution-to-the-selenium-with-firefox-22-issues-and-how-to-report-issues/">Solution to the Selenium with Firefox 22 Issues and How to Report Issues&lt;/a> – Open Source is hard. Supporting Open Source’s infrastructure is harder — by a large margin&lt;/li>
&lt;li>&lt;a href="https://github.com/i-trofimtschuk/frequests">frequests&lt;/a> – asyncronous HTTP Requests; not sure where I would use this, but…&lt;/li>
&lt;li>&lt;a href="http://pilif.github.io/2013/07/why-I-dont-touch-crypto/">why I don’t touch crypo&lt;/a> – again, don’t. touch. crypto&lt;/li>
&lt;li>&lt;a href="http://www.webdirections.org/blog/five-reasons-why-you-should-quote-attribute-values-in-html5">Five reasons why you should quote attribute values in HTML5&lt;/a> – for the record, you should do this in HTML 4 as well.&lt;/li>
&lt;li>&lt;a href="http://www.youtube.com/playlist?list=PLmV2D6sIiX3UpQFzAIWh-_gsUTGCCtFIj">All the ‘Write The Docs session videos&lt;/a> — a conference I couldn’t afford to attend, and likely don’t have the time to watch the videos now&lt;/li>
&lt;li>&lt;a href="http://blog.chariotsolutions.com/2013/07/automated-testing-of-html5-canvas.html">Automated Testing of HTML5 Canvas Applications with Selenium WebDriver&lt;/a> – more and more important…&lt;/li>
&lt;li>&lt;a href="http://swdandruby.wordpress.com/2013/07/12/solving-window-onbeforeunload-nasty-prompts/">Solving window.onbeforeunload nasty prompts&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://pypi.python.org/pypi/pytest-poo">pytest-poo&lt;/a> for when your tests are, erm, crappy&lt;/li>
&lt;li>&lt;a href="http://ljouanneau.com/blog/post/2013/07/15/Tada-Here-is-SlimerJS">Tada! Here is SlimerJS!&lt;/a> – like PhantomJS but for Gecko. I think.&lt;/li>
&lt;li>&lt;a href="http://swdandruby.wordpress.com/2013/07/19/did-i-select-the-right-element/">Did I select the right element?&lt;/a> is a neat trick for highlighting things — even if the escaping of the code didn’t seem to survive formatting&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #152</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-152/</link><pubDate>Thu, 11 Jul 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-152/</guid><description>
&lt;p>40-ish minutes until midnight eastern so that counts as two days in a row, right? Right?&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://tobiasgeyer.wordpress.com/2013/07/04/improving-jenkins-execution-times-by-common-sense/">Improving jenkins execution times by common sense&lt;/a> — common sense. sadly lacking most days.&lt;/li>
&lt;li>&lt;a href="http://www.testinggeek.com/how-to-make-test-automation-more-effective">How to make test automation more effective?&lt;/a> is useful up until the pitch at the end. So read until you get to that.&lt;/li>
&lt;li>&lt;a href="http://phpmaster.com/data-structures-2/">Data Structures for PHP Devs: Trees&lt;/a> – non-trivial data structures are non-trivial&lt;/li>
&lt;li>&lt;a href="http://c089.wordpress.com/2013/07/06/writing-clean-webdriver-test-suites-for-duplicate-functionality-by-parameterizing-on-page-objects/">Writing clean WebDriver test suites for “duplicate” functionality by parameterizing on page objects&lt;/a> – I especially like the usage of ‘might’ at the top&lt;/li>
&lt;li>&lt;a href="https://npmjs.org/package/dalek-internal-webdriver">dalek-internal-webdriver&lt;/a> – what’s a day without a JS webdriver implementation?&lt;/li>
&lt;li>&lt;a href="http://www.html5rocks.com/en/tutorials/internals/antialiasing-101/">Antialiasing 101&lt;/a> – I kinda think that automators should just spend a day reading this site rather than reddit&lt;/li>
&lt;li>&lt;a href="http://myronmars.to/n/dev-blog/2013/07/rspec-2-14-is-released">RSpec 2.14 is released!&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://www.chmod777self.com/2013/07/http2-status-update.html">HTTP/2 Status Update&lt;/a> – Ugh.&lt;/li>
&lt;li>&lt;a href="http://thephp.cc/viewpoints/blog/2013/07/php-5-5-generators">PHP 5.5: Generators&lt;/a> – You know, with yesterday’s phpenv I’m almost tempted to make some of my stuff PHP 5.5…&lt;/li>
&lt;li>&lt;a href="http://arrgyle.com/blog/program-like-a-machinist/">Program Like a Machinist&lt;/a> – hurray for understanding the motorcycle example!&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #151</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-151/</link><pubDate>Wed, 10 Jul 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-151/</guid><description>
&lt;p>Almost a month after the last one. Though it did nice to have it at 150 when people go to the blog … but a greater number is nicer.&lt;/p>
&lt;ul>
&lt;li>So I was trying to find &lt;a href="http://requests.ryanmccue.info/">Requests for PHP&lt;/a> whilst talking to &lt;a href="http://grumpy-phpunit.com/">the grumpy programmer&lt;/a> and he pointed me out to &lt;a href="http://guzzlephp.org/index.html">Guzzle&lt;/a> which looks equally cool&lt;/li>
&lt;li>&lt;a href="http://stupidpythonideas.blogspot.com.au/2013/06/can-you-optimize-listgenexp.html">Can you optimize list(genexp)&lt;/a> is one of those geeky language internals things that could be handy to have in your back pocket&lt;/li>
&lt;li>&lt;a href="http://simplythetest.tumblr.com/post/54558598766/slightly-snarky-gwt-debug-id-faq">Slightly Snarky GWT Debug ID FAQ&lt;/a> – c’mon, when have you seen a more blatantly ‘put this in the smattering’ title than this?&lt;/li>
&lt;li>&lt;a href="https://github.com/CHH/phpenv">phpenv&lt;/a> could be useful. And could be I mean ‘holy crap this is useful’ — but then again, I do actually need 3 different versions of PHP locally. YMMV&lt;/li>
&lt;li>&lt;a href="http://oneandonemakesthreeright.blogspot.be/2013/06/pain-killing-pingpongers-decease.html">Pain killing the pingponger’s decease&lt;/a> is by their own admission not stable, but is a nice temporary solution. And illustrates why you should learn your tools — if they didn’t know about custom annotations and their runners in JUnit they would have missed this.&lt;/li>
&lt;li>Yet another JS testing framework has grown a webdriver tentacle – &lt;a href="https://github.com/karma-runner/karma-webdriver-launcher">karma-webdriver-launcher&lt;/a>&lt;/li>
&lt;li>I barely understand a word of &lt;a href="https://github.com/raganwald/homoiconic/blob/master/2012/08/method-decorators-and-combinators-in-coffeescript.md#method-combinators-in-coffeescript">Method Combinators in CoffeeScript&lt;/a> which is often a sign I should include something&lt;/li>
&lt;li>&lt;a href="http://bigqueri.es/t/how-are-javascript-files-being-served-and-how-many-are-there/36">How are JavaScript files being served and how many are there?&lt;/a> is interesting … even if I don’t understand what/where he has put all this HAR information so one could reproduce this on their one data&lt;/li>
&lt;li>&lt;a href="http://andrewkelley.me/post/jamulator.html">Statically Recompiling NES Games into Native Executables with LLVM and Go&lt;/a> – $entity help us if we ever need to do this level of ridiculousness to drive browsers, but holy wow its cool.&lt;/li>
&lt;li>Remember I said I should just auto-include all of Raymond Hettinger’s SO answers? Well, here’s another one – &lt;a href="http://stackoverflow.com/questions/17006127/python-importing-class-attributes-into-method-local-namespace/17006268#17006268">Python importing class attributes into method local namespace&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #150</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-150/</link><pubDate>Fri, 14 Jun 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-150/</guid><description>
&lt;p>Yup, this smattering has very little to do with Selenium, but… 150!&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://blog.pamelafox.org/2013/06/referencing-dom-from-js-there-must-be.html">Referencing DOM from JS: there must be a DRYer, safer way&lt;/a> is a nice ‘here is where I started, and here is how I ended up where I am’ post which can be stolen into other languages / frameworks other than in Backbone&lt;/li>
&lt;li>&lt;a href="https://blog.engineyard.com/2013/hash-lookup-in-ruby-why-is-it-so-fast">Hash lookup in Ruby, why is it so fast?&lt;/a> is not something I was wondering, but now I know why.&lt;/li>
&lt;li>&lt;a href="http://www.jstorimer.com/blogs/workingwithcode/8100871-nobody-understands-the-gil-part-2-implementation">Nobody understands the GIL&lt;/a> – in any language.&lt;/li>
&lt;li>&lt;a href="https://groups.google.com/forum/#!msg/php-fig/WMaKNNhHZJw/Waib99Zzf68J">Resource Locator Discussion&lt;/a> – namespace all the things!&lt;/li>
&lt;li>&lt;a href="http://dhemery.com/pdf/test-automation-zombie-apocalypse.pdf">How to Survive the Coming Test Automation Zombie Apocalypse&lt;/a> is abso-freaking-lutely awesome&lt;/li>
&lt;li>&lt;a href="https://gist.github.com/dimacus/5757573">Blackhole proxy to block all external calls&lt;/a> is a snippet that came out of SeConf this week&lt;/li>
&lt;li>&lt;a href="http://nedbatchelder.com/blog/201306/filter_a_list_into_two_parts.html">Filter a list into two parts&lt;/a>. Ouch. My brain just broke. (But generators do that to me.)&lt;/li>
&lt;li>&lt;a href="http://www.amazon.com/about-dates-times-computing-ebook/dp/B00DCJZDYE/">What you need to know about dates and times in computing&lt;/a> could be useful. If one kindles.&lt;/li>
&lt;li>&lt;a href="https://gist.github.com/wolever/5762823">SSL Helpers&lt;/a> is a couple python scripts for manipulating certificates&lt;/li>
&lt;li>&lt;a href="http://storyautomation.com/">storyautomation&lt;/a> seems to have a number of decent posts. Of course, they are around RC so I was hesitant to link to it, but it looks like the ideas could transpose up to WebDriver&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #149</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-149/</link><pubDate>Wed, 05 Jun 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-149/</guid><description>
&lt;p>Too. Many. Tabs.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://watirmelon.com/2013/05/30/internationalization-and-localization-testing/">Internationalization and Localization Testing&lt;/a> — yup, I agree.&lt;/li>
&lt;li>&lt;a href="http://daker.me/2013/05/5-html5-features-you-need-to-know.html">5 HTML5 Features you need to know&lt;/a> – ‘download attribute’ and ‘datalist element’ might be a pain for us automators. Or at least cause a couple hours annoyance until we figure out the pattern.&lt;/li>
&lt;li>&lt;a href="http://minds.coremedia.com/2013/06/03/death-to-sleeps-raise-of-conditions/">Death to sleeps! Raise of Conditions!&lt;/a> – expected conditions is likely the next thing to get more marketing this year&lt;/li>
&lt;li>&lt;a href="http://pythonhosted.org/line_profiler/">line_profiler and kernprof&lt;/a> – profiling is black magic voodoo&lt;/li>
&lt;li>&lt;a href="https://github.com/avdi/naught">Naught&lt;/a> – ‘Naught is a toolkit for building Null Objects in Ruby.’&lt;/li>
&lt;li>&lt;a href="http://stackoverflow.com/questions/10436454/replacing-a-substring-of-a-string-with-python/10436832">Replacing a substring of a string with Python&lt;/a> – Raymond’s answers always simultaneously break my break and blow my mind.&lt;/li>
&lt;li>&lt;a href="http://stackoverflow.com/questions/16645083/when-splitting-an-empty-string-in-python-why-does-split-return-an-empty-list/16645307">When splitting an empty string in Python, why does split() return an empty list while split(‘\n’) returns [”]?&lt;/a> – see what I mean?&lt;/li>
&lt;li>&lt;a href="http://element34.ca/blog/so-you-want-to-build-a-framework">So you want to build a framework&lt;/a> – mine, but important. (I think.)&lt;/li>
&lt;li>&lt;a href="http://adit.io/posts/2013-05-15-Locks,-Actors,-And-STM-In-Pictures.html">Locks, Actors, And STM In Pictures&lt;/a> – ya! pictures!&lt;/li>
&lt;li>&lt;a href="http://watirmelon.com/2013/05/14/packaging-a-ruby-script-as-an-windows-exe-using-ocra/">Packaging a ruby script as an Windows exe using OCRA&lt;/a> looks like something useful&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #148</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-148/</link><pubDate>Mon, 13 May 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-148/</guid><description>
&lt;p>Gotta start this up again…&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://docs.google.com/presentation/d/1zImieKjgfF2mvTEfLhkKnJpBrsq-shMWz1DMb-fxOoQ/edit#slide=id.gc15489c2_3_0">The Evil Tester Guide To HTTP Proxies&lt;/a> appears to be more for using proxies for manual testing, but you &lt;em>should&lt;/em> be running your automation through one as well so it helps to understand the magic that takes place.&lt;/li>
&lt;li>New &lt;a href="http://bmp.lightbody.net/">BrowserMob Proxy&lt;/a> release. Bindings should all be updated for the newly exposed methods in a couple days.&lt;/li>
&lt;li>&lt;a href="http://flippinawesome.org/2013/05/06/5-things-you-should-stop-doing-with-jquery/#__sid=0">5 Things You Should Stop Doing With jQuery&lt;/a> – Not sure whats better, the content, or the Saved By The Bell theme&lt;/li>
&lt;li>&lt;a href="https://pypi.python.org/pypi/testtools">testtools&lt;/a> is the latest hotness in the world of Python runners?&lt;/li>
&lt;li>&lt;a href="https://github.com/d11wtq/boris">Boris&lt;/a> looks pretty useful for the PHP folks&lt;/li>
&lt;li>&lt;a href="http://paulhammant.com/2013/05/06/googles-scaled-trunk-based-development/">Google’s Scaled Trunk Based Development&lt;/a> – even if you are not Google, you should be doing this. Or as much as you can (again, you are likely not Google)&lt;/li>
&lt;li>&lt;a href="http://artsy.github.io/blog/2012/02/03/reliably-testing-asynchronous-ui-w-slash-rspec-and-capybara/">Reliably Testing Asynchronous UI W/ RSpec and Capybara&lt;/a> isn’t new, but the &lt;em>wait_for_dom&lt;/em> thing is new [to me]&lt;/li>
&lt;li>&lt;a href="http://www.holovaty.com/writing/in-defense-of-canvas/">In defense of &lt;canvas>&lt;/a> – canvas worries me&lt;/li>
&lt;li>&lt;a href="http://filipin.eu/one-does-not-simply-set-profile-for-remote-chrome/">One Does Not Simply Set Profile for Remote Chrome&lt;/a> is Watir, but links to the pure WebDriver in SO article. I don’t think any of the other bindings deliver chrome profiles over the wire…&lt;/li>
&lt;li>&lt;a href="https://github.com/moodlehq/functional-test-suite">The Moodle Functional Test Automation Harness&lt;/a> – always fun to peek into other’s suites&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #147</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-147/</link><pubDate>Thu, 14 Mar 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-147/</guid><description>
&lt;p>My. Get. Productive. I know! I’ll push out a smattering. Oh. …&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://speakerdeck.com/mleone/python-for-ruby-programmers">Python for Ruby Programmers&lt;/a> is a pretty good deck, with the requisite snark at the end that you can safely ignore.&lt;/li>
&lt;li>&lt;a href="http://blog.ivandemarino.me/2013/03/03/Me-Selenium-Camp-2013">Me @ Selenium Camp 2013&lt;/a> is Ivan’s mini-experience-report from SeCamp and has his slides on GhostDriver&lt;/li>
&lt;li>Using pip in production? &lt;a href="http://tartley.com/?p=1423">pip install : Lightspeed and Bulletproof&lt;/a> is a useful trick which I know I’ve done variants of with java and ruby in the past&lt;/li>
&lt;li>&lt;a href="http://www.seleniumconf.org/speakers/">SeConf speakers are up&lt;/a> — and the list looks really good&lt;/li>
&lt;li>&lt;a href="http://www.brandonsavage.net/interfaces-or-abstract-classes/">Interfaces or Abstract Classes?&lt;/a> is marketing fodder, but its the best kind of fodder since its actually useful. For those of us still working through PHP.&lt;/li>
&lt;li>I forgot about this semantic war in the whole three weeks since it happened…
&lt;ul>
&lt;li>&lt;a href="http://context-driven-testing.com/?p=69">The Insapience of Anti-Automationism&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://www.developsense.com/blog/2013/02/manual-and-automated-testing/">“Manual” and “Automated” Testing&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://xprogramming.com/articles/manual-testing-does-exist-and-it-is-bad/">Manual Testing Does Exist and It Is Bad&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://carstenfeilberg.blogspot.dk/2013/03/my-two-on-opposite-terms.html">My two € on opposite terms&lt;/a>&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>&lt;a href="https://speakerdeck.com/mathieu_calba/android-ui-design-pattern-in-practice-english-version">Android UI Design Pattern in practice&lt;/a> is not only useful, but I like the format…&lt;/li>
&lt;li>&lt;a href="http://www.slideshare.net/mikebrittain/mbrittain-continuous-deploymentalm3public">Continuous Deployment: The Dirty Details&lt;/a> – slide 18, 36, 42, 83, 102 are the killer slides. 102 is the killer-est slide and is where I would enter a semantic debate with the fine folks at Etsy over whether they are doing Continuous Deployment or Continuous Delivery&lt;/li>
&lt;li>&lt;a href="http://www.theautomatedtester.co.uk/blog/2013/could-css3-be-making-sites-that-are-not-testable.html">Could CSS3 be making sites that are not testable?&lt;/a> – New standards making the life of automators more incredibly hard? Never!&lt;/li>
&lt;li>&lt;a href="http://coreygoldberg.blogspot.ca/2013/01/python-verify-png-file-and-get-image.html">Python – verify a PNG file and get image dimensions&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #146</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-146/</link><pubDate>Mon, 11 Mar 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-146/</guid><description>
&lt;p>Happy ‘productivity destructive week’ — otherwise known as March break.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://blog.mogotest.com/2013/03/05/how-to-accept-self-signed-ssl-certificates-in-selenium2/">How to Accept Self-Signed SSL Certificates in Selenium 2&lt;/a> — or you could use ‘real’ certificates that are trusted by the browser by default. If you are using self-signed certificates to ‘save money’ and you spend 3 hours making it work, you are not saving money anymore&lt;/li>
&lt;li>&lt;a href="https://github.com/tcoulter/jockeyjs">JockeyJS&lt;/a> seems like it could be useful&lt;/li>
&lt;li>Dear every-js-widget-library-author, &lt;a href="http://www.nczonline.net/blog/2013/01/29/you-cant-create-a-button/">You can’t create a button&lt;/a>&lt;/li>
&lt;li>If you are using PHP, then &lt;a href="http://grumpy-phpunit.com/">The Grumpy Programmer’s PHPUnit Cookbook&lt;/a> should be added to your reading pile. Thankfully he doesn’t touch on the built-in WebDriver stuff but the ToC still looks relevant to what we do&lt;/li>
&lt;li>&lt;a href="http://blog.newrelic.com/2013/02/07/web-performance-optimization-automation/">WordPress Performance Optimization&lt;/a> is just cool — and could provide tricks for your non-WordPress apps too&lt;/li>
&lt;li>&lt;a href="http://blog.veez.us/single-session-development">Single-Session Development&lt;/a> is something I don’t do — but can appreciate the geek-ness of this&lt;/li>
&lt;li>&lt;a href="http://edmundkirwan.com/general/junit.html">JUnit’s evolving structure&lt;/a> shows what the, erm, evolving structure of JUnit and has the killer line of ‘Programmers should be forced to wear their systems’ package-structures on their tee-shirts.’&lt;/li>
&lt;li>&lt;a href="http://element34.ca/blog/basic-authentication-with-the-browsermob-proxy">Basic Authentication With the BrowserMob Proxy&lt;/a>, wow, that’s an annoying edge-case&lt;/li>
&lt;li>&lt;a href="http://bjk5.com/post/44698559168/breaking-down-amazons-mega-dropdown">Breaking Down Amazon’s Mega Dropdown&lt;/a> – ugh, because mouse events weren’t hard enough without menus tracking and rendering based on its position&lt;/li>
&lt;li>If you are intro RSpec, then &lt;a href="http://rspec-next-steps.herokuapp.com/">RSpec Next Steps&lt;/a> is going to be for you. Even if it does use a horrid html-based deck format (use the left/right arrow keys to navigate)&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #145</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-145/</link><pubDate>Mon, 04 Mar 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-145/</guid><description>
&lt;p>&lt;a href="http://www.brothers-brick.com/2013/02/26/alice-finch-builds-massive-lego-hogwarts-from-400000-bricks/">Alice Finch builds massive LEGO Hogwarts from 400,000 bricks&lt;/a> starts out at awesome and goes somewhere further down the scale when you get to the photo that shows scale.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://exploringuncertainty.com/blog/archives/1010">Models of Automation&lt;/a> — really, who reading this hasn’t had the conversation described in there in one of its variants&lt;/li>
&lt;li>&lt;a href="http://ardesco.lazerycode.com/index.php/2013/02/stop-moving-so-i-can-click-you-dammit/">Stop Moving So I Can Click You Dammit!&lt;/a> – illustrates the only acceptable place for Thread.sleep()&lt;/li>
&lt;li>&lt;a href="http://blog.simontimms.com/2013/02/25/using-realistic-data-in-unit-testing/">Using Realistic Data in Unit Testing&lt;/a> and &lt;a href="http://blog.simontimms.com/2013/02/26/angelasmith-creating-test-data/">AngelaSmith: Creating Test Data&lt;/a> is a two-for for the C# crowd — though the ideas resonate with everyone else&lt;/li>
&lt;li>&lt;a href="http://www.testinggeek.com/test-automation-how-to-handle-common-components-with-page-object-model">How to handle common components with Page Object Model?&lt;/a> — I tend to use Inheritance, though am experimenting with Composition. The right solution is likely ‘both’&lt;/li>
&lt;li>&lt;a href="http://nic.ferrier.me.uk/blog/2013_02/dear-nic-says-jim">Dear Nic, Should we log directly?&lt;/a> illustrates the good and bad of unix pipes&lt;/li>
&lt;li>&lt;a href="http://stackoverflow.com/questions/10057671/how-foreach-actually-works/">How foreach actually works&lt;/a> was found via a snarky tweet, but is great&lt;/li>
&lt;li>&lt;a href="http://feross.org/fill-disk/">Introducing the HTML5 Hard Disk Filler&amp;amp;tm; API&lt;/a> is hilarious. And the next salvo in the WebKit vs mono-culture battle&lt;/li>
&lt;li>&lt;a href="http://www.html5rocks.com/en/tutorials/webcomponents/template/">HTML’s New Template Tag – Standardizing Client-Side Templating&lt;/a> — look! More HTML5 madness! And no automation suggestions / gotchas. But HTML5 Rocks is a great site anyways&lt;/li>
&lt;li>&lt;a href="http://watirmelon.com/2013/03/02/why-your-web-app-should-be-responsive/">Why your web app should be responsive&lt;/a> — I’m coming to dislike the term ‘responsive’, though agree with the sentiment. Now, how does your WebDriver [or Watir] scripts change in order to handle this?&lt;/li>
&lt;li>&lt;a href="http://mattsears.com/articles/2011/11/16/nyan-cat-rspec-formatter">Nyan Cat RSpec Formatter&lt;/a> is outstandlingly silly. And should be applied to all your RSpec runners. Immediately.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #144</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-144/</link><pubDate>Mon, 25 Feb 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-144/</guid><description>
&lt;p>&lt;em>Real&lt;/em> Canadians watch curling instead of hockey.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://jsperf.com/">jsPerf&lt;/a> is a performance oriented sandbox&lt;/li>
&lt;li>&lt;a href="http://gilesbowkett.blogspot.ca/2013/02/the-lie-of-convention-over-configuration.html">The Myth Of Convention Over Configuration&lt;/a> – hint: its &lt;em>curation&lt;/em> over configuration. And since this is how frameworks work…&lt;/li>
&lt;li>&lt;a href="https://github.com/alek-sys/sublimetext_indentxml">sublimetext_indentxml&lt;/a> is a sublime text plugin to indent xml — yes, originality counts with plugin naming&lt;/li>
&lt;li>&lt;a href="https://github.com/blog/1345-introducing-boxen">Introducing Boxen&lt;/a> – Boxen feels a lot like Vagrant, but for Macs? Maybe?&lt;/li>
&lt;li>&lt;a href="http://blog.pamelafox.org/2013/02/checking-for-technical-requirements-in.html">Checking for Technical Requirements in a Sign-up Process&lt;/a> — woah, this would be a pain to automate&lt;/li>
&lt;li>&lt;a href="https://github.com/mwelham/office_docs">office_docs&lt;/a> looks like it might help parse and inspect ms office docs your app generates. Or not. Dunno.&lt;/li>
&lt;li>&lt;a href="http://blog.urth.org/2013/02/12/the-future-of-perl-5/">The Future of Perl (5)&lt;/a> proves that the Se gang isn’t the only one to completely botch naming and versioning. 😀&lt;/li>
&lt;li>&lt;a href="https://github.com/raganwald/homoiconic/blob/master/2013/02/turtles-and-iterators.md">Tortoises, Teleporting Turtles, and Iterators&lt;/a> is pretty geek&lt;/li>
&lt;li>&lt;a href="http://conversionxl.com/dont-use-automatic-image-sliders-or-carousels-ignore-the-fad/">Don’t Use Automatic Image Sliders or Carousels, Ignore the Fad&lt;/a> – and Reason #4 is they are a pain in the ass to automate since the state is always in flux&lt;/li>
&lt;li>&lt;a href="http://www.infoq.com/articles/Continuous-Delivery-Maturity-Model">The Continuous Delivery Maturity Model&lt;/a> has some interesting ideas, but that it is presented as a ‘maturity model’ is fail all the way down.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #143</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-143/</link><pubDate>Thu, 14 Feb 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-143/</guid><description>
&lt;p>If you had anything interesting last week I should have seen, you’ll have to resend it to me or @seleniumhq — things were a bit crashy.&lt;/p>
&lt;ul>
&lt;li>So … &lt;a href="http://www.quirksmode.org/blog/archives/2013/02/opera_switching.html">Opera switching to WebKit&lt;/a>. That doesn’t mean you can write off automation with Opera though. &lt;a href="http://blog.methvin.com/2013/02/tragedy-of-webkit-commons.html">Tragedy of the WebKit Commons&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://sauceio.com/index.php/2013/02/introducing-chemistrykit-aka-ruby-saunter/">Introducing ChemistryKit — a Ruby version of Saunter&lt;/a> is another self-serving link.&lt;/li>
&lt;li>&lt;a href="http://watirmelon.com/2013/02/12/automated-local-accessibility-testing-using-wave-and-webdriver/">Automated local accessibility testing using WAVE and WebDriver&lt;/a> is a post I had been waiting awhile for&lt;/li>
&lt;li>&lt;a href="http://mentalfloss.com/article/26875/how-did-duck-hunt-gun-work">How Did the Duck Hunt Gun Work?&lt;/a> because, you know you wanted to know. Unless you are too young. Kids…&lt;/li>
&lt;li>&lt;a href="http://lucumr.pocoo.org/2013/2/13/moar-classes/">Start Writing More Classes&lt;/a> got lots of twitter love. And an outstanding url.&lt;/li>
&lt;li>I’ve been thinking about documentation recently… &lt;a href="http://hackingdistributed.com/2013/02/11/principled-documentation/">The Principled Documentation Manifesto&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://docs.timdorr.apiary.io/">Tesla Model S REST API&lt;/a> takes Web_Driver_ to a whole new level&lt;/li>
&lt;li>&lt;a href="https://air.mozilla.org/webdriver/">A Browser Automation Standard&lt;/a> is kinda amusing that the location is ‘Mountain View’ but David was broadcasting from ~ 8600 km away&lt;/li>
&lt;li>&lt;a href="http://www.mrc-productivity.com/techblog/?p=714">HTML5 Tutorial: Geolocation&lt;/a> because &lt;em>this&lt;/em> won’t be a pain to deal with…&lt;/li>
&lt;li>I think I like the diagram at &lt;a href="http://blog.crisp.se/2013/02/05/yassalsundman/continuous-delivery-vs-continuous-deployment">Continuous Delivery vs Continuous Deployment&lt;/a> but would suggest the top labels should be ‘Auto &lt;em>or&lt;/em> Manual’&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #142</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-142/</link><pubDate>Tue, 05 Feb 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-142/</guid><description>
&lt;p>Its a &lt;a href="http://www.youtube.com/watch?v=vHl24Kjp5Vs">Wiggle your brain&lt;/a> kind of morning…&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://arrgyle.com/blog/automated-web-testing-is-hard/">Automated Web Testing Is Hard&lt;/a> is the launch announcement of &lt;a href="https://github.com/arrgyle/chemistrykit">ChemistryKit&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://watirmelon.com/2013/02/05/watir-webdriver-with-ghostdriver-on-osx-headless-browser-testing/">Watir-WebDriver with GhostDriver on OSX: headless browser testing&lt;/a> — the WebDriver version of this would be very, very similar to this.&lt;/li>
&lt;li>&lt;a href="http://blog.jquery.com/2013/02/04/jquery-1-9-1-released/">jQuery 1.9.1 Released&lt;/a> isn’t interesting from a new jQuery perspective, but the migrate plugin &lt;em>is&lt;/em>. Likely old news, but was new to me…&lt;/li>
&lt;li>&lt;a href="http://en.wikipedia.org/wiki/GRASP_(object-oriented_design)">GRASP (object-oriented design)&lt;/a> ‘is really a mental toolset’&lt;/li>
&lt;li>&lt;a href="http://hexawise.com/?p=172">How Not to Design Pairwise Software Tests&lt;/a> is even more useful when paired (pun intended) with…&lt;/li>
&lt;li>&lt;a href="http://www.telerik.com/automated-testing-tools/blog/13-01-25/using-data-driving-wisely.aspx">Using Data Driving Wisely&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://paulhammant.com/2013/02/04/the-importance-of-the-dom/">The Importance of the DOM&lt;/a> has a lot of stuff that my not-in-gear brain is capable of processing, but…&lt;/li>
&lt;li>&lt;a href="http://programmingisterrible.com/post/42215715657/postels-principle-is-a-bad-idea">Postel’s Principle is a Bad Idea&lt;/a>. Sacrilege! Oh, wait, there is a patch.&lt;/li>
&lt;li>&lt;a href="http://armoredbarista.blogspot.de/2013/01/a-brief-chronology-of-ssltls-attacks.html">A brief chronology of SSL/TLS attacks&lt;/a> can’t be automated, but good automation is to know what needs to be looked at by a human&lt;/li>
&lt;li>&lt;a href="http://michaelfeathers.typepad.com/michael_feathers_blog/2013/01/the-framework-superclass-anti-pattern.html">The Framework Superclass Anti-Pattern&lt;/a> — for the record, &lt;a href="http://element34.ca/products/saunter">my frameworks&lt;/a> ‘require’ you have adapters to prevent lock-in. Oh, and they are Open Source…&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #141</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-141/</link><pubDate>Fri, 01 Feb 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-141/</guid><description>
&lt;p>Its -12 Celsius plus windchill out. Why the heck is the office air conditioning on. Feel like I need a Mr. Rogers cardigan or something.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://bolinfest.com/javascript/caret-navigation.html">Caret Navigation in Web Applications&lt;/a> starts slow and then hurts your brain while reminding you that this automation thing isn’t easy.&lt;/li>
&lt;li>I don’t know NUnit or TeamCity so don’t know if &lt;a href="http://blog.diniscruz.com/2013/01/using-teamcity-and-nnit-to-start.html">Using TeamCity and NUnit to Start WebServer, Run Selenium Tests and Stop WebServer&lt;/a> is useful or just a rehash of common knowledge. But here you are anyways.&lt;/li>
&lt;li>&lt;a href="https://github.com/brianium/paratest-selenium">paratest-selenium&lt;/a> is another parallel phpunit solution. I &lt;em>really&lt;/em> want an official one.&lt;/li>
&lt;li>&lt;a href="http://nealford.com/memeagora/2013/01/22/why_everyone_eventually_hates_maven.html">Why Everyone (Eventually) Hates (or Leaves) Maven&lt;/a> is not Maven bashing [he says so in the 3rd last paragraph].&lt;/li>
&lt;li>&lt;a href="https://shanetomlinson.com/2013/testing-javascript-frontend-part-1-anti-patterns-and-fixes/">Writing Testable Frontend Javascript Part 1 – Anti-patterns and their fixes&lt;/a> — looking to carve out a niche for the next couple years for yourself? This is it. And Canvas [which is JS…]&lt;/li>
&lt;li>The &lt;a href="http://seleniumcamp.com/2013/01/24/program-2013-is-ready/">SeleniumCamp 2013 program&lt;/a> is out. Of course, its in Russian but…&lt;/li>
&lt;li>&lt;a href="http://www.build-doctor.com/2013/01/21/neo4j-puppet/">Writing a Neo4j Puppet module for fun and profit&lt;/a> is I think how a lot of trial stuff is going to be distributed. And Puppet is fun.&lt;/li>
&lt;li>Have I mentioned that this automation thing is hard? No? How about &lt;a href="http://davidshariff.com/blog/what-is-the-execution-context-in-javascript/">What is the Execution Context &amp;amp; Stack in JavaScript?&lt;/a>. Still think its easy?&lt;/li>
&lt;li>&lt;a href="http://simplythetest.tumblr.com/post/41104418417/automated-testing-from-testing-activity-to">Automated Testing: From “Testing” Activity to “Development” Activity&lt;/a> is the sort of epiphany you will see more and more I think. Unsure whether this is a good, bad or just factual trend.&lt;/li>
&lt;li>About building a framework? Its in! &lt;a href="http://www.maddoxlabs.com/blog/2013/01/25/how-to-make-a-basic-test-framework-in-c/">How to make a basic test framework in C#&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #140</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-140/</link><pubDate>Fri, 25 Jan 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-140/</guid><description>
&lt;p>Buckets!&lt;/p>
&lt;ul>
&lt;li>
&lt;p>I suspect that &lt;a href="http://code.google.com/p/scanner-backed-by-selenium/">scanner-backed-by-selenium&lt;/a> belongs in the ‘with great power comes great responsibility’ bucket&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://freynaud.github.com/ios-driver/">ios-driver&lt;/a> is in the ‘wouldn’t it be nice if Apple provided this’ bucket&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://dkleppinger.blogspot.ca/2012/09/selenium-webdriver-utility-for.html">Selenium WebDriver utility for determining when page has finished rendering&lt;/a> is in the ‘ADF specific’ bucket’&lt;/p>
&lt;/li>
&lt;li>
&lt;p>I suspect &lt;a href="https://github.com/mguillem/JSErrorCollector">JSErrorCollector&lt;/a> is in the ‘already indirectly linked to’ bucket. If not then its in the ‘FF only’ bucket&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://gabrielprioli.wordpress.com/2012/09/11/using-a-business-readable-language-for-browser-automation/">Using a business readable language for browser automation&lt;/a> is in the ‘bdd/atdd hype’ bucket. But is also in Haskell which is kinda interesting for an Se article&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="https://speakerdeck.com/searls/reality-is-expensive-a-better-way-of-thinking-about-mock-objects">reality is expensive: a better way of thinking about mock objects&lt;/a> – Yup. ‘Fake bucket implementation’ bucket.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>The bits in &lt;a href="http://developer.android.com/distribute/googleplay/quality/tablet.html">Android’s tablet quality&lt;/a> page would be even nicer if Android wasn’t in the ‘openly hostile to automate’ bucket.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://christianheilmann.com/2012/10/10/data-attributes-rock-as-both-css-and-javascript-know-them/">Data Attributes Rock – As Both Css and Javascript Know Them&lt;/a> — HTML5’s data attributes are firmly in the ‘raindrops on roses and whiskers on kittens’ bucket.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://www.industriallogic.com/blog/stop-using-story-points/">Stop Using Story Points&lt;/a> gets added to the ‘read the comments as well’ bucket. Also the ‘this is how we accrue automation debt, kids’ bucket.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;strong>&lt;a href="http://www.slideshare.net/kohsuke/large-scale-automation-with-jenkins" title="Large scale automation with jenkins">Large scale automation with jenkins&lt;/a>&lt;/strong> from &lt;strong>&lt;a href="http://www.slideshare.net/kohsuke">Kohsuke Kawaguchi&lt;/a>&lt;/strong>&lt;/p>
&lt;p>. Oh, and the ‘woohoo! I already do this stuff’ bucket.&lt;/p>
&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #139</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-139/</link><pubDate>Wed, 23 Jan 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-139/</guid><description>
&lt;p>Posting from the past into the future. Or something… (its a scheduled post).&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://github.com/ericminio/webdriverjs-with-jasmine">webdriverjs-with-jasmine&lt;/a> appears appropriately named since it claims to be &lt;em>A standalone (includes standalone Selenium server (30Mo) + includes Jasmine) working example of a test with WebDriverJS and Jasmine.&lt;/em>&lt;/li>
&lt;li>Similar to the above, but with Drupal and Behat – &lt;a href="https://github.com/sprice/classic">Classic&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://twitter.yfrog.com/h3kgdcp">How I[he] send notifications to the build breakers.&lt;/a> using twillio&lt;/li>
&lt;li>&lt;a href="http://vocamus.net/dave/?p=1569">On Code Review&lt;/a> comes from the Food For Thought department&lt;/li>
&lt;li>&lt;a href="https://github.com/youdevise/orc">Orc&lt;/a> is a &lt;em>model driven orchestration tool for the deployment of application clusters&lt;/em>. Sounds cool.&lt;/li>
&lt;li>&lt;a href="http://searls.testdouble.com/2013/01/18/upgrading-hacked-dependencies/">upgrading hacked dependencies&lt;/a> — doncha hate when you do this?&lt;/li>
&lt;li>&lt;a href="http://wave.webaim.org/">WAVE&lt;/a> will tell you have well you do against their accessibility heuristics. Its no guarantee of course, but its a start.&lt;/li>
&lt;li>And why is it no guarantee? See &lt;a href="http://blog.silktide.com/2013/01/things-learned-pretending-to-be-blind-for-a-week/">Things I learned by pretending to be blind for a week&lt;/a>.&lt;/li>
&lt;li>Dear SpeakerDeck; your embed method doesn’t work with WordPress. So here is a link to &lt;a href="https://speakerdeck.com/dmosher/so-you-want-to-be-a-front-end-engineer">So, You Want to Be a Front-End Engineer?&lt;/a>&lt;/li>
&lt;li>I was bored and experimenting with Py.Test fixtures &lt;a href="https://gist.github.com/3921739">here&lt;/a> — and then got schooled in the comment section on how to actually do it.
&lt;script type="application/javascript" src="https://gist.github.com/adamgoucher/3921739.js">&lt;/script>
&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #138</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-138/</link><pubDate>Mon, 21 Jan 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-138/</guid><description>
&lt;p>&lt;code>&amp;lt;insert snark here&amp;gt;&lt;/code>&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://angryweasel.com/blog/?p=565">Debugging For Testers&lt;/a> — they don’t teach this in testing school. Actually, there is a testing school…&lt;/li>
&lt;li>A million times this!! &lt;a href="http://chrismdp.com/2013/01/bdd-is-not-cucumber/">That’s not BDD, that’s just Cucumber&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://www.igvita.com/2013/01/15/faster-websites-crash-course-on-web-performance/">Faster Websites: Crash Course on Web Performance&lt;/a> — all three hours of video&lt;/li>
&lt;li>&lt;a href="http://9elements.com/io/index.php/continuous-integration-of-ios-projects-using-jenkins-cocoapods-and-kiwi/">Continuous Integration of iOS Projects using Jenkins, CocoaPods, and Kiwi&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://blog.patrickmeenan.com/2012/11/clearing-ies-caches-not-as-simple-as-it.html">Clearing IE’s Caches – Not as simple as it appears&lt;/a> is another one of those things that gives Jim headaches.&lt;/li>
&lt;li>Speaking of things that give Jim headaches; &lt;a href="http://jimevansmusic.blogspot.ca/2013/01/revisiting-native-events-in-ie-driver.html">Revisiting Native Events in the IE Driver&lt;/a>. Fun, fun, fun.&lt;/li>
&lt;li>&lt;a href="http://www.netmeister.org/slides/devopsdays201301/#/42">We’re Doing It Wrong! What DevOps Needs to Learn in Order to Scale Up.&lt;/a> is pretty good, but wow I dislike this slide system.&lt;/li>
&lt;li>&lt;a href="http://lists.freebsd.org/pipermail/freebsd-current/2010-August/019310.html">why GNU grep is fast&lt;/a> – &lt;em>The key to making programs fast is to make them do practically nothing&lt;/em>&lt;/li>
&lt;li>&lt;a href="https://github.com/SquareSquash/web">Squash&lt;/a> feels kinda like a wrapper about ‘git blame’ coupled with a log monitor, but still an interesting concept.&lt;/li>
&lt;li>&lt;a href="http://www.ivanfranjic.net/2013/1/writing-faster-webdriver-tests">Writing faster WebDriver tests&lt;/a> isn’t necessary making scripts faster as it is about a clever abuse of the JS Executor&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #137</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-137/</link><pubDate>Wed, 16 Jan 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-137/</guid><description>
&lt;p>Whoops, missed a couple days… ah well.&lt;/p>
&lt;ul>
&lt;li>MOAR ELEMENTS!!! &lt;a href="http://www.w3.org/html/wg/drafts/html/master/grouping-content.html#the-main-element">the &lt;main> element&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://chrismdp.com/2013/01/dependency-injection-not-ioc/">Dependency injection != Inversion of Control&lt;/a> is useful reading. And the Waffle example is pretty funny.&lt;/li>
&lt;li>Not sure yet how I feel about this feature in the page-object gem.&lt;br>
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
&lt;iframe src="https://www.youtube.com/embed/83nnnts8po8" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" allowfullscreen title="YouTube Video">&lt;/iframe>
&lt;/div>
&lt;/li>
&lt;li>&lt;a href="http://deors.wordpress.com/2013/01/11/webdriver-wait/">Waiting for an application to be fully loaded&lt;/a> has some more examples of using a ‘proper’ [&lt;em>not&lt;/em> implicit] waiting strategy.&lt;/li>
&lt;li>Most of us are not using Se for HVAT, but knowing the terminology, etc. can’t hurt – &lt;a href="http://kaner.com/?p=278">An Overview of High Volume Automated Testing&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://kotaku.com/5975610/the-exceptional-beauty-of-doom-3s-source-code">The Exceptional Beauty of Doom 3’s Source Code&lt;/a> – An ode to code indeed.&lt;/li>
&lt;li>&lt;a href="http://vocamus.net/dave/?p=1562">Visual Studio considered Harmful&lt;/a>. Or any other tool in your toolchain. You should be able to swap any bit up for one of similar functionality. The number of Eclipse programmers absolutely dwarfs the number of Java programmers.&lt;/li>
&lt;li>&lt;a href="http://blog.mogotest.com/2013/01/16/centralized-selenium-logging-with-graylog/">Centralized Selenium Logging with Graylog&lt;/a> — alright, this is pretty trick.&lt;/li>
&lt;li>&lt;a href="https://github.com/cyrus-and/chrome-har-capturer">chrome-har-capturer&lt;/a> uses Chrome’s remote debugging port to build a HAR file. Even works for SPDY traffic I believe.&lt;/li>
&lt;li>&lt;a href="http://stackoverflow.com/questions/1589114/opening-a-new-terminal-tab-in-osxsnow-leopard-with-the-opening-terminal-window">Opening a new terminal tab in OSX(Snow Leopard) with the opening terminal windows directory path&lt;/a> – woah! AppleScript!&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #136</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-136/</link><pubDate>Mon, 07 Jan 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-136/</guid><description>
&lt;p>Someone go back to my past self and punch him for thinking that starting to get in shape was a good idea. OMGCANTMOVE.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://www.infoq.com/news/2013/01/Immutable-BCL">.NET Goes Immutable&lt;/a> seems interesting. But I don’t really speak C# so it could very well be boring and uninteresting.&lt;/li>
&lt;li>&lt;a href="http://www.html5rocks.com/en/tutorials/webcomponents/shadowdom/">Shadow DOM 101&lt;/a> is another part of HTML5 that makes me think this web automation stuff has a very limited life span. Between this and Canvas… ugh.&lt;/li>
&lt;li>&lt;a href="http://watirmelon.com/2012/12/19/using-webdriver-to-automatically-check-for-javascript-errors-on-every-page/">Using WebDriver to automatically check for JavaScript errors on every page&lt;/a> is something I have been considering adding to my frameworks…&lt;/li>
&lt;li>Have I mentioned how much Canvas worries me? &lt;a href="https://gist.github.com/4338551">Snow in canvas land&lt;/a> is an interesting post on debugging/improving performance on an little canvas app&lt;/li>
&lt;li>And in a similar vein, &lt;a href="http://paulirish.com/2012/why-moving-elements-with-translate-is-better-than-posabs-topleft/">Why moving elements with translate() is better than pos:abs top/left&lt;/a>&lt;/li>
&lt;li>I want to say that I’ve already linked to this, but I need it for a potential project so I’m linking it again – &lt;a href="http://www.huyng.com/posts/modifying-python-simplehttpserver/">Modifying Python’s SimpleHTTPServer to accept directory aliases&lt;/a>&lt;/li>
&lt;li>As a framework vendor I’m a bit worried about linking to &lt;a href="http://blog.8thlight.com/myles-megyesi/2012/09/12/why-frameworks.html">Why Frameworks?&lt;/a>, but there you have it.&lt;/li>
&lt;li>It both worries me, and impresses me, when people start needing to do &lt;a href="http://www.engineyard.com/blog/2012/linux-scalability/">Linux TCP/IP Tuning for Scalability&lt;/a>&lt;/li>
&lt;li>Living in the cloud? Go read &lt;a href="http://highscalability.com/blog/2012/10/2/an-epic-tripadvisor-update-why-not-run-on-the-cloud-the-gran.html">An Epic TripAdvisor Update: Why Not Run On The Cloud? The Grand Experiment&lt;/a>. Now. The last link can wait.&lt;/li>
&lt;li>&lt;a href="http://www.telerik.com/automated-testing-tools/blog/12-11-12/understanding-head-http-204-and-http-206.aspx">Understanding HEAD, HTTP/204 and HTTP/206&lt;/a> — What? You mean that there is more to HTTP than 200 and 404?&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #135</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-135/</link><pubDate>Fri, 04 Jan 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-135/</guid><description>
&lt;p>Three in a row … of course, these are the easy three.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://www.theautomatedtester.co.uk/blog/2013/build-test-and-deploy-firefox-os-apps-for-0.html">Build, test and deploy Firefox OS apps for $0&lt;/a> (or any other currency that I don’t know how to emit)&lt;/li>
&lt;li>Ruby on Rails … in Bash. Because they can. &lt;a href="https://github.com/jayferd/balls">Bash on Balls&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://blog.alexmaccaw.com/css-transitions">All you need to know about CSS Transitions&lt;/a> except how the hell we are going to synchronize on them. Well, kinda does, but this is going to hurt.&lt;/li>
&lt;li>&lt;a href="http://blog.mogotest.com/2013/01/03/speed-up-web-testing-with-a-caching-proxy/">Speed Up Web Testing with a Caching Proxy&lt;/a> has a speed-up trick I hadn’t thought of yet. And it also further complicates the moving parts in automation.&lt;/li>
&lt;li>&lt;a href="http://blog.phusion.nl/2013/01/03/rails-sql-injection-vulnerability-hold-your-horses-here-are-the-facts">Rails SQL injection vulnerability: hold your horses, here are the facts&lt;/a> – I think every vulnerability should have a write-up like this.&lt;/li>
&lt;li>I hope I never feel the need to investigate an operator the way &lt;a href="http://gynvael.coldwind.pl/?id=492">PHP equal operator ==&lt;/a> does.&lt;/li>
&lt;li>Now, investigating runners is something I’ve had to do a couple times. Reading MiniTest – &lt;a href="http://miningruby.tumblr.com/post/35491370189/reading-minitest-part-one">part one&lt;/a>, &lt;a href="http://miningruby.tumblr.com/post/35539339898/reading-minitest-part-two">part two&lt;/a>, &lt;a href="http://miningruby.tumblr.com/post/35573292852/reading-minitest-part-three">part three&lt;/a>, &lt;a href="http://miningruby.tumblr.com/post/36161852224/reading-minitest-part-four">part four&lt;/a>, &lt;a href="http://miningruby.tumblr.com/post/36237556619/reading-minitest-part-five">part five&lt;/a>, &lt;a href="http://miningruby.tumblr.com/post/36238889587/reading-minitest-wrap-up">wrap up&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://jorgemanrubia.net/2010/01/16/using-macros-to-create-custom-example-groups-in-rspec/">Using macros to create custom example groups in RSpec&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://www.marcphilipp.de/blog/2013/01/02/hamcrest-quick-reference/">Hamcrest Quick Reference&lt;/a>. Print it out and pin it to your wall.&lt;/li>
&lt;li>This. Is. Awesome. &lt;a href="https://blog.mozilla.org/it/2013/01/04/mozpool/">Mozpol – Provisioning Pandas&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #134</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-134/</link><pubDate>Thu, 03 Jan 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-134/</guid><description>
&lt;p>Hrm. Office is closed until Monday, but everyone is in. Very confusing…&lt;/p>
&lt;ul>
&lt;li>One reason I have heard people say they don’t use cloud instances is they are afraid they will just sit around idle when not needed. &lt;a href="http://atlee.ca/blog/2012/12/14/behind-the-clouds/">Behind the clouds: how RelEng do Firefox builds on AWS&lt;/a> has some useful scripts to find and teardown machines.&lt;/li>
&lt;li>&lt;a href="http://blog.chriszacharias.com/page-weight-matters">Page Weight Matters&lt;/a> is a fun little insight into how/why YouTube shed some of its heft. And a reminder that what we need is more stuff coming out of bandwidth starved regions since we have forgotten how to program efficiently in North America / Europe.&lt;/li>
&lt;li>&lt;a href="http://usetrace.com">Usetrace&lt;/a> looks like the newest player in the Selenium-in-the-cloud space. Seems to use the Python bindings as the scripting language and host the scripts too.&lt;/li>
&lt;li>Did you know that you can modify the Se Server’s Grid functionality with plugins? Neither did I — or at least I don’t think I did… Here is a &lt;a href="https://github.com/freynaud/grid-plugin-tutorial">tutorial&lt;/a> and &lt;a href="https://github.com/AutomatedTester/speedy-gonzales-proxy">another example&lt;/a>.&lt;/li>
&lt;li>The interesting part of &lt;a href="http://www.codeofhonor.com/blog/whose-bug-is-this-anyway">Whose bug is this anyway?!?&lt;/a> is ‘Your computer is broken’ bit. Oh, and make sure that build machine is updated to what your developers are running…&lt;/li>
&lt;li>&lt;a href="http://synesthesiam.com/?p=218">Modeling How Programmers Read Code&lt;/a> is just cool.&lt;/li>
&lt;li>Speaking of reading code; &lt;a href="http://spin.atomicobject.com/2012/12/23/code-reading">Code Reading&lt;/a>. I wonder if you gave this to a novice programmer if they would approach the above link differently.&lt;/li>
&lt;li>&lt;a href="http://ariya.ofilabs.com/2012/12/phantomjs-1-8-blue-winter-rose.html">PhantomJS 1.8 “Blue Winter Rose”&lt;/a> got lots of twitter love. As it should have.&lt;/li>
&lt;li>&lt;a href="http://nikic.github.com/2012/12/22/Cooperative-multitasking-using-coroutines-in-PHP.html">Cooperative multitasking using coroutines (in PHP!)&lt;/a> is, I think, pretty awesome just by the my inability to fully grok what is going on. I also have no idea how to use this for automation purposes, but it seems like there should be some usage for it somewhere…&lt;/li>
&lt;li>&lt;a href="http://www.littlehart.net/atthekeyboard/2012/12/17/so-you-want-to-write-tests">So You Want to Write Tests&lt;/a> is more mindset than code … but code has always been the easy part anyways.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #133</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-133/</link><pubDate>Wed, 02 Jan 2013 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2013/a-smattering-of-selenium-133/</guid><description>
&lt;p>Since today is the start of ‘find a new contract’ I guess I don’t have an excuse to miss these for the next week or so.&lt;/p>
&lt;p>(Oh, and Happy New Year, etc.)&lt;/p>
&lt;ul>
&lt;li>
&lt;p>This is snark, but just makes me laugh given the hype machine around ATDD/BDD;&lt;/p>
&lt;blockquote>
&lt;p>AS an angry userI WANT TO punch the developer in the faceSO THAT I CAN punch the developer in the face.&lt;/p>
&lt;p>— Kristopher Johnson (@OldManKris) &lt;a href="https://twitter.com/OldManKris/status/275977400309932033">December 4, 2012&lt;/a>&lt;/p>
&lt;/blockquote>
&lt;/li>
&lt;li>
&lt;p>Alright, this is also snark, but &lt;a href="http://responsiveurl.co.uk/while/were/making/every/damn/thing/responsive/lets/not/forget/the/url/">Why not make your URLs responsive?&lt;/a> is an interesting ‘how would I automate this?’ question&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://www.toolsjournal.com/testing-articles/item/1093-adoption-of-exploratory-testing-and-test-automation-on-rise">Adoption Of Exploratory Testing And Test Automation On The Rise&lt;/a> is kinda sales-y [which is fine given the context], but if you swap in ‘Selenium IDE’ or ‘Selenium Builder’ for ‘TestStudio’ then you have the case for those parts of the suite.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="https://github.com/konteck/wpp">web++&lt;/a> is a single file webserver — in c++&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://www.songkick.com/devblog/2012/07/16/from-15-hours-to-15-seconds-reducing-a-crushing-build-time/">From 15 hours to 15 seconds: reducing a crushing build time&lt;/a> is pretty good, though some very obvious developer tendencies sneaking in. The quick fix at the end, &lt;em>run the build entirely on the tmpfs in-memory file system&lt;/em> seems in intriguing as well.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Your periodic reminder that &lt;a href="http://spin.atomicobject.com/2012/12/06/writing-tests-is-not-tdd">Simply Writing Tests Is Not Test Driven Development&lt;/a>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://www.designyourway.net/blog/resources/javascript-html5-game-engines-libraries-51-examples/">Javascript &amp;amp; HTML5 Game Engines Libraries – 51 Examples&lt;/a> — and all will need their own unique automation efforts. Welcome to the JS Executor future. Honest, those aren’t thumbscrews you see on the counter over there. Why are you looking at the counter?!?!&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://my.opera.com/ODIN/blog/2012/12/13/html5-canvas-performance-drawing-circles">HTML5 canvas performance: Drawing circles&lt;/a> — timing is something we’ll also have to care about in HTML5 apps.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://pozorvlak.livejournal.com/174763.html">Falsehoods programmers believe about build systems&lt;/a>. Yes.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>And I thought my brain hurt before reading &lt;a href="http://laurakalbag.com/display-none/">display: none;&lt;/a>. I was wrong.&lt;/p>
&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #132</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-132/</link><pubDate>Thu, 06 Dec 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-132/</guid><description>
&lt;p>2.27.0 is now out which means you can close the browser tab that points to the old Firefox installers.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://jimevansmusic.blogspot.ca/2012/12/not-providing-html-page-is-bogus.html">Not Providing an HTML Page? Think of the Kittens!&lt;/a> is important to remember. We &lt;em>want&lt;/em> to fix your bugs. Help us help you!&lt;/li>
&lt;li>The &lt;a href="http://javascript-reverse.tumblr.com/post/37056936789/html5-download-attribute">HTML5 download attribute&lt;/a> is another bit I am not looking forward to have to automate&lt;/li>
&lt;li>&lt;a href="http://iosunittesting.com/refactoring-to-improve-testability/">Refactoring to Improve Testability&lt;/a> – what can I say? I like experiential posts&lt;/li>
&lt;li>Oh how it pains me to suggest that &lt;a href="http://code.google.com/p/sikuli-api/wiki/SikuliWebDriver">SikuliWebDriver&lt;/a> looks mighty cool&lt;/li>
&lt;li>&lt;a href="http://my.opera.com/ODIN/blog/page-visibility-api-support-in-opera-12-10">Page Visibility API Support in Opera 12.10&lt;/a>. Again, not something I am looking forward to automating.&lt;/li>
&lt;li>Ah brogrammers. &lt;a href="https://github.com/thedekel/attendance/compare/11e96fa114...d49fd3e927">DO NOT SEND “REGISTSER BITCH” TO GUESTS&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://warunsl.wordpress.com/2012/09/18/ruby-script-to-change-the-desktop-background-periodically-on-mac/">Ruby script to change the desktop background periodically on Mac&lt;/a> is just cool. And you will notice that even though they could have spun up a browser to do this, it wasn’t the right tool for the task. Consider that the next time you want to light up a browser.&lt;/li>
&lt;li>So what that it is over two months old, but &lt;a href="http://sebastian-bergmann.de/archives/923-PHPUnit-3.7.html">PHPUnit 3.7&lt;/a> lists some relevant information about the release&lt;/li>
&lt;li>&lt;a href="https://github.com/nicegraham/SeleniumScreenSnapper">SeleniumScreenSnapper&lt;/a> seems pretty clever. Almost steal worthy in fact&lt;/li>
&lt;li>&lt;a href="http://blog.ulf-wendel.de/2012/php-mysql-why-to-upgrade-extmysql/">Supercharging PHP MySQL applications using the best API&lt;/a> is useful when testing your app in general, but also remember that if you are trusting what the browser is telling you and not verifying it with the database you are asking for a world of hurt&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #131</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-131/</link><pubDate>Thu, 29 Nov 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-131/</guid><description>
&lt;p>Not sure how widely broadcast this has been (cus, you know, we’re good at communicating and stuff), but if you are using 2.26.0 and Firefox 17 you will get a &lt;a href="http://code.google.com/p/selenium/issues/detail?id=4814">nasty bug&lt;/a>. 2.27.0 is in the works to address this (and a couple other things…) so if you &lt;em>need&lt;/em> FF right now, keep your install at the &lt;a href="http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/16.0/">latest 16 release&lt;/a>.&lt;/p>
&lt;ul>
&lt;li>
&lt;p>This is pretty decent. Except the usual “Feh! We don’t need humans to test! Automate everything!” bias you see around. Psst kids! Even the poster children for Continuous Deployment actually do Continuous Delivery (humans! shocking!). Oh, and the usual gloss over ‘cluster immune system’ which is the only part of this tend that has an elegant solution.&lt;/p>
&lt;p>&lt;strong>&lt;a href="http://www.slideshare.net/ashmaurya/continuous-deployment-5548801" title="Continuous Deployment - Lean LA">Continuous Deployment – Lean LA&lt;/a>&lt;/strong> from &lt;strong>&lt;a href="http://www.slideshare.net/ashmaurya">ashmaurya&lt;/a>&lt;/strong>&lt;/p>
&lt;iframe src='https://www.slideshare.net/slideshow/embed_code/5548801' width='427' height='350' scrolling='no' allowfullscreen webkitallowfullscreen mozallowfullscreen>&lt;/iframe>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://hindsighttesting.com/blog/2012/10/30/running-tests-in-parallel/">Running Automated Tests in Parallel – Part 1&lt;/a>‘s new bit to me was how to run groups of jUnit scripts from maven. Sure, I think I knew there was a way to do it but never had to think about it before. And as a bonus, &lt;a href="http://oredev.org/2012/sessions/cutting-testing-time-with-parallel-automated-functional-tests">here is the video that goes with the post&lt;/a>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://phpsadness.com">PHP Sadness&lt;/a> is kinda amusing from a language trolling perspective. But also actually really useful. Now for a Ruby Sadness and a Python Sadness. Of course, a Perl sadness would just be a one of those ‘try to click this moving box’ widgets…&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Following up on not automating GMail (aside through standard low-level protocols like IMAP or POP3) is a &lt;a href="https://gist.github.com/4149804">MailBox class for processing IMAP email (Gmail from Python example&lt;/a>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>I’ll admit that &lt;a href="http://gridinit.wordpress.com/2012/11/27/writing-jmeter-test-plans-in-ruby/">Writing JMeter test plans in Ruby&lt;/a> has me pretty excited&lt;/p>
&lt;/li>
&lt;li>
&lt;p>But if Ruby/JMeter doesn’t do it for you, then maybe Funload will – &lt;a href="http://ziade.org/2011/07/27/how-to-stress-test-your-app-using-funkload-part-1/">How to stress test your app using Funkload — part 1&lt;/a>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Search is one of those things a lot of automation get burned by since things are often going in parallel and not casually waiting for someone else to look for something that was just put in the index half a second ago – &lt;a href="http://webuild.envato.com/blog/moving-the-marketplaces-to-elasticsearch/">Moving the Marketplaces to Elasticsearch&lt;/a>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://www.thefriendlytester.co.uk/2012/11/i-call-them-controlobjects.html">I Call Them ControlObjects&lt;/a>; I call them Elements, or with increasing frequency ‘Unnecessary Designer Porn’ for the rash of js-widgets-that-look-like-standard-html&lt;/p>
&lt;/li>
&lt;li>
&lt;p>I’m kinda amazed I haven’t had to use the regex part of my brain in awhile, but everyone doing automation really needs to have that section tucked away somewhere – &lt;a href="http://simplythetest.tumblr.com/post/33474441938/a-practical-example-of-regular-expressions">A Practical Example of Regular Expressions&lt;/a>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://www.triggeredmessaging.com/blog/server-monitoring-with-a-raspberry-pi-and-graphite">Low Power Server Monitoring with a Raspberry&lt;/a> is just cool&lt;/p>
&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #130</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-130/</link><pubDate>Tue, 27 Nov 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-130/</guid><description>
&lt;p>Can’t get enough Se bloggage? Have a look at &lt;a href="http://itkosmopolit.wordpress.com/2012/11/23/overview-of-selenium-blogs/">Overview of Selenium Blogs&lt;/a> — though I must say there has to be something wrong with the Alexa algorithm if I am that far down the list. And behind both David and Alister. 🙂&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://durdn.com/blog/2012/11/22/must-have-git-aliases-advanced-examples/">Must Have Git Aliases: Advanced Examples&lt;/a> reminds me of someone I used to work with who likely couldn’t function on a clean unix system, but with all his aliases was mind blowing to watch&lt;/li>
&lt;li>&lt;a href="http://techblog.safaribooksonline.com/2012/11/23/writing-a-selenium-test-framework-for-a-django-site-part-3/">Writing a Selenium Test Framework for a Django Site (Part 3)&lt;/a> has the usual myths and FUD around XPath and embeds locators in the script method but is the first thing I’ve seen that uses the Color class in Python so I’ll overlook those things. This time.&lt;/li>
&lt;li>&lt;a href="https://makandracards.com/makandra/12661-how-to-solve-selenium-focus-issues">How to solve Selenium focus issues&lt;/a> introduced me to jQuery’s :focus pseudoselector&lt;/li>
&lt;li>I’m sure there is something to be learned from &lt;a href="http://evan.tiggerpalace.com/articles/2012/11/21/use-rails-until-it-hurts/">Use Rails until it hurts&lt;/a>. Especially from the paragraph above the twitter inclusions&lt;/li>
&lt;li>&lt;a href="http://watirmelon.com/2012/11/27/checking-an-image-is-actually-visible-using-webdriver/">Checking an image is actually visible using WebDriver&lt;/a> is something I plan on stealing.&lt;/li>
&lt;li>&lt;a href="http://www.kirsle.net/blog/kirsle/android-4-0-in-virtualbox">Android 4.0 in VirtualBox&lt;/a> seems like a cool way to build out an android build farm&lt;/li>
&lt;li>&lt;a href="http://phpmaster.com/autoloading-and-the-psr-0-standard/">Autoloading in PHP and the PSR-0 Standard&lt;/a> has some Symfony specific bits, but is generally useful&lt;/li>
&lt;li>&lt;a href="http://blogs.gnome.org/danni/2012/11/19/extending-selenium-with-jquery/">Extending Selenium with jQuery&lt;/a> is something else I intend to steal&lt;/li>
&lt;li>From the same person is &lt;a href="http://blogs.gnome.org/danni/2012/11/15/combining-py-test-and-selenium-to-test-webapps/">Combining py.test and Selenium to test webapps&lt;/a> which shows off some of what py.test can do with fixtures. Not how I would do it, but cool none the less.&lt;/li>
&lt;li>Let me say this again; the officially blessed solution for getting response codes is to route your calls through a proxy (like the BrowserMob Proxy) and then ask it what they were. But if you are bound and determined to craft ‘solutions’ that only work in a single browser, or a single language, or require changing your application then &lt;a href="http://www.ninthavenue.com.au/how-to-get-the-http-status-code-in-selenium-webdriver">How To Get The HTTP Status Code In Selenium WebDriver&lt;/a> will make good breakfast reading. North American time that is…&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #129</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-129/</link><pubDate>Mon, 26 Nov 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-129/</guid><description>
&lt;p>A hardy welcome back to work to our American friends who spent Thursday being thankful for what they had, then getting into fist fights at stores for things they thought they didn’t need the next day.&lt;/p>
&lt;ul>
&lt;li>You know what would be grand? If various widget makers would provide automation hooks for their stuff so we, as automators, don’t have to write them ourselves. Like for High Charts (&lt;a href="https://github.com/Ardesco/Powder-Monkey/tree/master/src/main/java/com/lazerycode/selenium/graphs">in Java&lt;/a>)&lt;/li>
&lt;li>&lt;a href="http://codeclimber.net.nz/archive/2012/11/19/Why-you-should-never-use-a-boolean-field-use-an.aspx">Why you should never use a boolean field (use an Enum instead)&lt;/a> is food for thought when designing your page objects&lt;/li>
&lt;li>Do you work for Google? No? They why do you think you need to automate GMail?!!? Not a new rant of course, but &lt;a href="http://pypi.python.org/pypi/imapIO/0.9.5">imapIO&lt;/a> looks like it might not suck too too much if you are solving this problem in Python and must get an email out of GMail&lt;/li>
&lt;li>&lt;a href="https://gist.github.com/3361208">windows.h.js&lt;/a>. Yes. .js. And no, I have no idea what you would use it for.&lt;/li>
&lt;li>Someday I will find the time to learn &lt;a href="http://blog.tddium.com/2012/11/20/profiling-ruby/">Profiling Ruby, or, How I Made Rails Start Up Faster&lt;/a> for Python and/or PHP if just so I &lt;em>really&lt;/em> understand what goes on under the hood. (And you should too. Understand that is…)&lt;/li>
&lt;li>Two more OTA API examples; &lt;a href="http://fijiaaron.wordpress.com/2012/11/20/creating-a-bug-in-quality-center-using-the-ota-api/">Creating a Bug in Quality Center using the OTA API&lt;/a>, &lt;a href="http://fijiaaron.wordpress.com/2012/11/20/executing-tests-in-quality-center-using-the-ota-api/">Executing Tests in Quality Center using the OTA API&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://craigkerstiens.com/2012/11/17/how-i-write-sql/">How I Write SQL&lt;/a>. Mmmmm pretty. And the killer part is right at the end; &lt;em>While very long, this should ideally be quite legible&lt;/em> and legibility trumps length every day.&lt;/li>
&lt;li>Before you whinge, understand &lt;em>why&lt;/em> something is. Like say, &lt;a href="http://jimevansmusic.blogspot.ca/2012/11/are-you-kidding-me-ie-driver-another.html">Are you kidding me, IE Driver? Another freaking thing to download?&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://pivotallabs.com/users/patn/blog/articles/717-run-javascript-in-selenium-tests-easily-">Run JavaScript in Selenium tests. Easily&lt;/a>. And by Selenium they mean WebDriver and by WebDriver they mean Webrat.&lt;/li>
&lt;li>&lt;a href="http://www.youtube.com/MobileTestingSummit">Mobile Testing Summit videos are up!&lt;/a> for those of us that couldn’t make it. Or could have made it were it not for speaking commitments bookending it on the other side of the continent.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #128</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-128/</link><pubDate>Mon, 19 Nov 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-128/</guid><description>
&lt;p>…as I avoid writing code that deals with dynamically constructed tables. Without any sort of unique locator. Of course.&lt;/p>
&lt;ul>
&lt;li>I would contend that the ‘right’ solution to this problem is to use a CI container and have it email you, but if you are using Java and not using CI, then &lt;a href="http://assertselenium.com/2012/11/13/emailable-reports-for-selenium-scripts/">Automatically Email the Reports After Selenium Test Execution&lt;/a> could be valuable.&lt;/li>
&lt;li>I feel like I have already linked to &lt;a href="http://www.jeromemueller.ch/archives/311/webdriver-staleelementreferenceexception">Webdriver StaleElementReferenceException&lt;/a> but the archive search is, erm, not great, so here it is again. Notice the solutions to what are all synchronization problem is &lt;em>not&lt;/em> to turn on implicit waits.&lt;/li>
&lt;li>A lot of the reason for lighting up a browser is to be able to do input with the app; &lt;a href="http://c2.com/ppr/checks.html">The CHECKS Pattern Language of Information Integrity&lt;/a> is useful reading in this regard&lt;/li>
&lt;li>While I wait for MS to send me a free Surface to play with (*hint*), &lt;a href="http://msdn.microsoft.com/en-us/library/ee804820(v=Surface.10).aspx">Testing Applications by Using the Surface Simulator Automation API&lt;/a> seems like they have at least given the problem some thought. Of course, it starts with a hand-holding of how to use an IDE. How very Android of them.&lt;/li>
&lt;li>&lt;a href="http://blog.thepete.net/blog/2011/05/01/inspect-state-of-our-running-ios-apps/">Inspect the State of Your Running iOS App’s UI With Symbiote&lt;/a> — &lt;em>Essentially Symbiote is Firebug for your native iOS app.&lt;/em>; you gotta love a good elevator pitch&lt;/li>
&lt;li>I don’t the Opera kids get enough credit for what they’re doing (and did first iirc) – &lt;a href="http://dev.opera.com/articles/view/introducing-mobile-browser-automation/">Introducing mobile browser automation&lt;/a>&lt;/li>
&lt;li>If you brain didn’t hurt yet, it will now. &lt;a href="http://stackoverflow.com/questions/6771258/whats-the-difference-if-meta-http-equiv-x-ua-compatible-content-ie-edge">What’s the difference if “&lt;meta http-equiv="X-UA-Compatible" content="IE=edge">&amp;quot; exists or not?&lt;/a>&lt;/li>
&lt;li>OAuth2 seems to have died a public flaming death, so some smart folks created &lt;a href="https://github.com/hueniverse/oz">oz&lt;/a>. There is some snark I can’t find about not liking a fork so creating a new one and now you have n+1 problems or something… &lt;em>All&lt;/em> auth system suck BTW.&lt;/li>
&lt;li>&lt;a href="https://github.com/Julian/Ivoire">Ivoire&lt;/a> has some RSpec goodies — but in Python&lt;/li>
&lt;li>What? You’re not using data-* attributes yet? Shame on you…&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #127</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-127/</link><pubDate>Fri, 16 Nov 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-127/</guid><description>
&lt;p>Within an hour I had some more things to add to the last Smattering. Oh well, I’ll just save them up…&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://roydekleijn.github.com/har-assert/">Har-assert&lt;/a> looks like something useful to include in your project if you are using Java. And the browsermob-proxy (which of course, you all are)&lt;/li>
&lt;li>&lt;a href="http://www.w3.org/TR/WCAG20/">Web Content Accessibility Guidelines (WCAG) 2.0&lt;/a> seems like something more people should care about.&lt;/li>
&lt;li>Right. Here is another cool part of the nebulous, meaningless thing called HTML5. &lt;a href="http://www.html5rocks.com/en/tutorials/pagevisibility/intro/">Using the PageVisibility API&lt;/a>. Anyone want to take bets on how long this gets used for evil rather than awesome?&lt;/li>
&lt;li>&lt;a href="https://github.com/KentBeck/junit/blob/master/doc/ReleaseNotes4.11.md">JUnit 4.11&lt;/a> is out. The link is to the release notes. The ‘test execution order’ stuff seems like bowing to pressure rather than good test design…&lt;/li>
&lt;li>&lt;a href="http://blog.dynatrace.com/2012/11/14/why-averages-suck-and-percentiles-are-great/">Why Averages Suck and Percentiles are Great&lt;/a> is your monthly statistics lesson.&lt;/li>
&lt;li>Alright, here is the challenge for everyone who wants to get involved in the project but is afraid they cannot code well enough. (If I can code well enough, so can you…) The docs can always use more people! And then we should get !se to work on via &lt;a href="http://duckduckhack.com">DuckDuckHack&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://github.com/jarmo/test-page">Test::Page&lt;/a> is another helper for making Page Objects in Ruby&lt;/li>
&lt;li>The first item in &lt;a href="http://www.jpuopolo.com/2012/09/an-impassioned-plea-to-other-start-up-founders-to-use-automated-tests/">An impassioned plea to other Start-up founders to use automated tests&lt;/a> is the only one that really holds any water. The rest, well, is showing the author’s developer bias I think. (The rest of his blog seems pretty good as well.)&lt;/li>
&lt;li>&lt;a href="https://github.com/rainbowdriver">RainbowDriver&lt;/a> looks interesting. Though after the flurry around the Mobile Test Summit there seems to be no more commits…&lt;/li>
&lt;li>&lt;a href="https://blog.mozilla.org/research/2012/11/12/introducing-the-shumway-open-swf-runtime-project/">The Shumway Open SWF Runtime Project&lt;/a> Not sure how I feel about Shumway. On one hand, open is better than closed, but from an automation perspective, SWF is a &lt;em>pain&lt;/em>&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #126</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-126/</link><pubDate>Wed, 14 Nov 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-126/</guid><description>
&lt;p>I’ve been threatening that I was going to do this for awhile…&lt;/p>
&lt;ul>
&lt;li>What it feels like when you are running a long running batch of scripts…&lt;br>
&lt;img src="https://i1.wp.com/icant.co.uk/talks/h5/pictures/smashingconf/okay.gif" alt="">&lt;/li>
&lt;li>Remember kids, your script cannot adapt to the unexpected…&lt;br>
&lt;img src="https://i0.wp.com/i.imgur.com/XNzcD.gif" alt="">&lt;/li>
&lt;li>But on occasion they can do something that…&lt;br>
&lt;img src="https://raw.github.com/videlalvaro/gifsockets/master/doc/mybrain.gif" alt="">&lt;/li>
&lt;li>Oh! Here’s a useful metric of productivity!&lt;br>
&lt;img src="https://pbs.twimg.com/media/A6nlCinCUAEKWNe.jpg" alt="">&lt;/li>
&lt;li>And just when you thought you were doing something without anyone paying attention…&lt;br>
&lt;img src="https://i2.wp.com/i.imgur.com/oODgL.gif" alt="">&lt;/li>
&lt;li>Unfortunately what a lot of automation is like…&lt;br>
&lt;img src="https://i2.wp.com/i.imgur.com/xsOvQ.gif" alt="">&lt;/li>
&lt;li>Or how about when you are writing code against the wrong environment…&lt;br>
&lt;img src="https://i2.wp.com/i.imgur.com/UXcNJ.gif" alt="">&lt;/li>
&lt;li>How writing tests for a testing framework feels…&lt;br>
&lt;img src="https://i0.wp.com/farm6.static.flickr.com/5241/5355178819_ea6464ff03_z.jpg?resize=480%2C640" alt="">&lt;/li>
&lt;li>&lt;a href="http://imgur.com/a/WpRg2">has too many to link to individually&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #125</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-125/</link><pubDate>Mon, 12 Nov 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-125/</guid><description>
&lt;p>Right…&lt;/p>
&lt;ul>
&lt;li>Scripting batch 1: waiting for an email&lt;/li>
&lt;li>Scripting batch 2: waiting for an email&lt;/li>
&lt;li>Scripting batch 3: waiting for an email&lt;/li>
&lt;li>Scripting batch 4: waiting for an email&lt;/li>
&lt;/ul>
&lt;p>Perhaps I’ll do something else right now…&lt;/p>
&lt;ul>
&lt;li>Alright kids, its not the Olympics, but &lt;a href="http://www.flaminglunchbox.net/curvy">Curvy&lt;/a> would be a fun app for someone to automate.&lt;/li>
&lt;li>Wow that was fast. &lt;a href="http://vimeo.com/user4280938">Øredev&lt;/a> has started to publish the videos from this year’s conference. Lots of good things in there.&lt;/li>
&lt;li>&lt;a href="http://www.theautomatedtester.co.uk/blog/2012/the-right-tool-for-the-job.html">The right tool for the job!&lt;/a> is one of my favourite rants. And one that catches people off guard when I mention it — ‘but you are a selenium consultant’…&lt;/li>
&lt;li>&lt;a href="http://watirmelon.com/2012/10/16/mobile-apps-still-need-automated-tests/">Mobile apps still need automated tests&lt;/a>. Yup. Of course, its not like the OS vendors are helping their developers to do this. Actively hindering them is more like it…&lt;/li>
&lt;li>&lt;a href="http://www.kitchensoap.com/2012/10/25/on-being-a-senior-engineer/">On Being A Senior Engineer&lt;/a>. Somewhere, a newly minted ‘Senior QA Developer’ fresh out of school is having a bit of a cry…&lt;/li>
&lt;li>Right. So how would &lt;a href="https://en.wikipedia.org/wiki/Composition_over_inheritance">Composition over inheritance&lt;/a> affect the Page Object pattern. Or perhaps not affect, but what would that look like?&lt;/li>
&lt;li>Hrm. &lt;a href="http://eclim.org">Eclim&lt;/a> might be how to make Eclipse not suck.&lt;/li>
&lt;li>And while I am taking cheap shots at Eclipse … &lt;a href="http://www.recursivity.com/blog/2012/10/28/ides-are-a-language-smell/">IDEs Are a Language Smell&lt;/a>. Or put another way, Dear Android…&lt;/li>
&lt;li>Someone (or someones) should do a time analysis of writing out scripts something like &lt;a href="http://www.developsense.com/blog/2012/10/where-does-all-that-time-go/">Where Does All That Time Go?&lt;/a>. I suspect though that a lot of automation would be cancelled as a result though.&lt;/li>
&lt;li>&lt;a href="https://wonderproxy.com">WonderProxy&lt;/a> seems like it might be a useful tool. Especially if you are doing behaviour based upon where you are. Though wow it is annoying to be somewhere you don’t speak the language and have your language cookie ignored. *cough* google *cough*&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #124</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-124/</link><pubDate>Tue, 06 Nov 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-124/</guid><description>
&lt;p>Too. Many. Links. Not. Enough. Posts.&lt;/p>
&lt;ul>
&lt;li>The important word is &lt;em>strive&lt;/em> in &lt;a href="http://www.testingmentor.com/imtesty/2012/10/08/100-automation-pass-rates/">100% Automation Pass Rates&lt;/a>.&lt;/li>
&lt;li>&lt;a href="http://phperror.net">PHP Error&lt;/a> could be interesting to turn on in your automation environment. Well, if it is a PHP app at any rate…&lt;/li>
&lt;li>Testing mobile? &lt;a href="https://leanpub.com/testmobileapps">Tap Into Mobile Application Testing&lt;/a> by Jonathan Kohl&lt;/li>
&lt;li>Behavioural testing in .Net with SpecFlow and Selenium – &lt;a href="http://jamesheppinstall.wordpress.com/2012/09/24/behavioural-testing-in-net-with-specflow-and-selenium-part-1">Part 1&lt;/a>, &lt;a href="http://jamesheppinstall.wordpress.com/2012/10/28/behavioural-testing-in-net-with-specflow-and-selenium-part-2/">Part 2&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://code.google.com/p/cocoa-rest-client/">cocoa-rest-client&lt;/a> could be a useful tool for the toolbox if you are on mac and are testing rest apps. (And once you get it working here, you can automate it using &lt;a href="http://docs.python-requests.org/en/latest/">Requests&lt;/a> or similar)&lt;/li>
&lt;li>&lt;a href="https://github.com/moredip/Sim-Launcher">sim_launcher&lt;/a> is &lt;em>tiny little sinatra app to allow launching an iOS app in the simulator via HTTP&lt;/em> and seems like one of those glue bits for large scale automation&lt;/li>
&lt;li>Sick of your current random string solution? &lt;a href="http://kiwipsum.com">kiwipsum&lt;/a>.&lt;/li>
&lt;li>&lt;a href="http://selenium34.wordpress.com/2012/10/18/changing-browsers-without-changing-code/">Changing Browsers without changing Code&lt;/a> is a neat (?! — it is java…) solution to flipping browsers via command-line arguments.&lt;/li>
&lt;li>Repeat after me, erm, Jez; &lt;a href="http://continuousdelivery.com/2012/10/theres-no-such-thing-as-a-devops-team/">There’s No Such Thing as a “Devops Team”&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://dougscripts.com/itunes/scripts/scripts01.php">Doug’s AppleScripts for iTunes&lt;/a> feels like a peek into what can be done on the mac.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #123</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-123/</link><pubDate>Wed, 17 Oct 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-123/</guid><description>
&lt;ul>
&lt;li>If you are not using something like Chef or Puppet to keep your grid nodes behaving then you are absolutely doing it wrong. Here are all the &lt;a href="http://puppetlabs.com/community/videos/puppetconf/">PuppetConf 2012 Videos&lt;/a> to help you get started. See also &lt;a href="http://memegenerator.net/instance/27887540">this&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://appleinsider.com/articles/12/09/25/apples_lightning_port_dynamically_assigns_pins_to_allow_for_reversible_use">Apple’s Lightning port dynamically assigns pins to allow for reversible use&lt;/a> is just too geeky not to include. Hurray for hardware lock-in?&lt;/li>
&lt;li>&lt;a href="http://lucumr.pocoo.org/2012/9/24/websockets-101/">Websockets 101&lt;/a> — again, if your app uses a technology, you better be damned clueful about it if you are going to automate it&lt;/li>
&lt;li>&lt;a href="http://selenium34.wordpress.com/2012/09/21/child-elements/">Child Elements&lt;/a> seems to address the ‘is my element where I expect it’ problem though I’m still not convinced that is a problem that needed solving&lt;/li>
&lt;li>&lt;a href="http://css-tricks.com/html-for-icon-font-usage/">HTML for Icon Font Usage&lt;/a> could be interesting. Though introduces me to the notion of ‘pseudo elements’, which in addition to ‘shadow dom’ makes me think we may have finally group-think-ed the HTML specs enough.&lt;/li>
&lt;li>&lt;a href="http://tips.kaali.co.uk/2012/03/16/expand-or-increase-the-size-of-virtual-box-vdi-dis/">Increase Virtual Box VDI disk size on MAC or Windows&lt;/a> — amazing how much faster a vm runs when you give it enough disk to breathe&lt;/li>
&lt;li>Using ShiningPanda and Django? &lt;a href="http://www.shiningpanda.com/blog/2012/09/27/multi-browser-selenium-tests-django-14-jenkins/">Multi-browser Selenium tests with Django 1.4+ on Jenkins&lt;/a> is for you!&lt;/li>
&lt;li>I use TextMate, but &lt;a href="http://stackoverflow.com/questions/11365948/how-to-save-restore-sublime-text-2-configs-plugins-to-migrate-to-another-compute">How to save/restore Sublime Text 2 configs/plugins to migrate to another computer?&lt;/a> could be useful for the even cooler segment of people&lt;/li>
&lt;li>Font geek enough that you want, no, demand! a specific font for writing code in? Adobe is here to help; &lt;a href="http://blogs.adobe.com/typblography/2012/09/source-code-pro.html">Announcing Source Code Pro&lt;/a>&lt;/li>
&lt;li>I’m kinda amazed that more people don’t do this; &lt;a href="http://blog.avisi.nl/2012/09/25/calculating-the-code-coverage-of-integration-tests/">Calculating the code coverage of integration tests&lt;/a>. Afterall, imaginary numbers FTW!&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #122</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-122/</link><pubDate>Mon, 15 Oct 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-122/</guid><description>
&lt;p>Let’s try the ‘all video’ edition this time.&lt;/p>
&lt;ul>
&lt;li>
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
&lt;iframe src="https://www.youtube.com/embed/ur1d7fYFAYM" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" allowfullscreen title="YouTube Video">&lt;/iframe>
&lt;/div>
&lt;/li>
&lt;li>
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
&lt;iframe src="https://www.youtube.com/embed/9_39Vbjx23Y" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" allowfullscreen title="YouTube Video">&lt;/iframe>
&lt;/div>
&lt;/li>
&lt;li>&lt;a href="http://tv.telerik.com/watch/automated-testing-tools/solvingcommonproblemswebinar">Solving Common Problems with Web UI Automation&lt;/a>&lt;/li>
&lt;li>
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
&lt;iframe src="https://www.youtube.com/embed/gwP7zLDDdPA" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" allowfullscreen title="YouTube Video">&lt;/iframe>
&lt;/div>
&lt;/li>
&lt;li>
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
&lt;iframe src="https://www.youtube.com/embed/ulNSlES1Fds" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" allowfullscreen title="YouTube Video">&lt;/iframe>
&lt;/div>
&lt;/li>
&lt;/ul>
&lt;p>Hrm. That didn’t work … let’s add some slide decks.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>&lt;a href="http://www.slideshare.net/DominikDary/mobile-test-automation-at-ebay" title="Mobile Test Automation at eBay">Mobile Test Automation at eBay&lt;/a>&lt;/strong> from &lt;strong>&lt;a href="http://www.slideshare.net/DominikDary">Dominik Dary&lt;/a>&lt;/strong>
&lt;iframe src='https://www.slideshare.net/slideshow/embed_code/14450364' width='427' height='350' scrolling='no' allowfullscreen webkitallowfullscreen mozallowfullscreen>&lt;/iframe>
&lt;/li>
&lt;li>&lt;a href="http://thephp.cc/dates/2012/webexpoprague/phpunit-best-practices">PHPUnit Best Practices&lt;/a>&lt;/li>
&lt;li>&lt;strong>&lt;a href="http://www.slideshare.net/Ovid/a-whirlwind-tour-of-testclass" title="A Whirlwind Tour of Test::Class">A Whirlwind Tour of Test::Class&lt;/a>&lt;/strong> from &lt;strong>&lt;a href="http://www.slideshare.net/Ovid">Curtis Poe&lt;/a>&lt;/strong>
&lt;iframe src='https://www.slideshare.net/slideshow/embed_code/14640035' width='427' height='350' scrolling='no' allowfullscreen webkitallowfullscreen mozallowfullscreen>&lt;/iframe>
&lt;/li>
&lt;li>&lt;strong>&lt;a href="http://www.slideshare.net/mikebrittain/simple-log-analysis-and-trending" title="Simple Log Analysis and Trending">Simple Log Analysis and Trending&lt;/a>&lt;/strong> from &lt;strong>&lt;a href="http://www.slideshare.net/mikebrittain">Mike Brittain&lt;/a>&lt;/strong>&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #121</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-121/</link><pubDate>Tue, 02 Oct 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-121/</guid><description>
&lt;p>Its the ‘all github’ edition today!&lt;/p>
&lt;ul>
&lt;li>Dave goes a little strange on us with his &lt;a href="https://github.com/tourdedave/diy_framework">diy_framework&lt;/a> as an &lt;em>emoting robot&lt;/em>. Here is &lt;a href="http://www.slideshare.net/tourdedave/selenium-basics/2">the deck&lt;/a> that went along with it.&lt;/li>
&lt;li>Can’t get enough of the food-based frameworks from the kids at Sauce. If you are using the PHPUnit included WebDriver bindings [and Sauce OnDemand] then &lt;a href="https://github.com/jlipps/sausage">Sausage&lt;/a> could be of interest.&lt;/li>
&lt;li>Of course, if you are just using PHPUnit, then &lt;a href="https://github.com/jlipps/paraunit">paraunit&lt;/a> could of interest. I’ve written similar before, but this looks cross-platform.&lt;/li>
&lt;li>&lt;a href="https://github.com/plone/buster-selenium">buster-selenium&lt;/a> is, erm, well, Selenium for buster.js&lt;/li>
&lt;li>Why did I only learn about &lt;a href="https://github.com/xdissent/ievms">ievms&lt;/a> now? Oh. Well, one of the requirements is patience. That explains it.&lt;/li>
&lt;li>&lt;a href="https://github.com/videlalvaro/gifsockets">gifsockets&lt;/a>; I’ll wait while you pick up the pieces of your exploded brain&lt;/li>
&lt;li>&lt;a href="https://gist.github.com/3725732">How to capture a FF profile log&lt;/a>. Dunno what gets put in it, but tuck this away in your back pocket&lt;/li>
&lt;li>I don’t have a use case for &lt;a href="https://github.com/benoitc/flower">flower&lt;/a> but &lt;em>collection of modules to build distributed and reliable concurrent systems in Python&lt;/em> seems link-worthy&lt;/li>
&lt;li>Again, not sure when you would use it, but &lt;a href="https://github.com/asconix/webdriver-user-agent-randomizer">webdriver-user-agent-randomizer&lt;/a> seems darn cool&lt;/li>
&lt;li>You don’t see too many open-source ios apps, so here is &lt;a href="https://github.com/simonmaddox/GoogleTransit-iOS6">GoogleTransit-iOS6&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #120</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-120/</link><pubDate>Tue, 18 Sep 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-120/</guid><description>
&lt;ul>
&lt;li>&lt;a href="http://www.telerik.com/automated-testing-tools/blog/christophereyhorn/12-09-10/here-we-grow-again-telerik-acquires-fiddler-what-s-next.aspx">Here we grow again. Telerik acquires Fiddler. What’s next?&lt;/a>. So. When can we look for nice Se integration with Fiddler then?&lt;/li>
&lt;li>&lt;a href="http://blog.dynatrace.com/2012/09/12/third-party-issues-and-the-performance-ripple-effect/">Third-Party Issues and the Performance Ripple Effect&lt;/a> is interesting, and something I’ve harped on consistently.&lt;/li>
&lt;li>&lt;a href="http://pluralsight.com/training/Courses/TableOfContents/selenium">Automated Web Testing with Selenium&lt;/a> is 3.5 hours of videos on Se. That has my usual complaints; shouldn’t have Se-IDE, there is no such thing as ‘basic’ and ‘advanced’, etc. But its there.&lt;/li>
&lt;li>&lt;a href="http://kaner.com/?p=190">The Oracle Problem and the Teaching of Software Testing&lt;/a> is long, but important to understand when doing automation. And its sad how many people &lt;em>don’t&lt;/em> know this but automate anyways.&lt;/li>
&lt;li>Sure. A week after I write a web server for PHP to use in php-webdriver’s test suite I see this; &lt;a href="http://bigweek.co/2012/9/11/php-built-in-web-server">PHP: Built-in web server&lt;/a>. Welcome indeed.&lt;/li>
&lt;li>&lt;a href="http://muledesign.com/2012/09/i-want-to-start-a-company-right-out-of-school/">I want to start a company right out of school!&lt;/a> is for designers, but applies just as much to programming/automation.&lt;/li>
&lt;li>This &lt;a href="http://homepage.univie.ac.at/werner.robitza/markdown/">online markdown editor&lt;/a> is awesome.&lt;/li>
&lt;li>&lt;a href="http://sauceio.com/index.php/2012/09/using-sauce-breakpoints-to-find-and-fix-flakey-tests/">Sauce Breakpoints&lt;/a> seems like an interesting hack&lt;/li>
&lt;li>Since your scripts are &lt;em>just&lt;/em> programs, they can call other programs. With python you can now do that with &lt;a href="http://amoffat.github.com/sh/index.html">sh&lt;/a> instead of subprocess (which always boggles me for some reason)&lt;/li>
&lt;li>&lt;a href="http://gabrielprioli.wordpress.com/2012/09/11/using-a-business-readable-language-for-browser-automation/">Using a business readable language for browser automation&lt;/a> talks about using a cucumber clone with haskell. The mind is blown.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #119</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-119/</link><pubDate>Fri, 14 Sep 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-119/</guid><description>
&lt;p>Its that time again, &lt;a href="http://www.automatedtestinginstitute.com/home/index.php?option=com_jforms&amp;amp;view=form&amp;amp;id=22&amp;amp;Itemid=183">4th Annual Automation Honors Voting&lt;/a> is now open. Vanity contests FTW!&lt;/p>
&lt;ul>
&lt;li>
&lt;p>&lt;a href="http://sauceio.com/index.php/2012/09/introducing-the-sauce-plugin-for-selenium-grid/">Introducing the Sauce Plugin for Selenium Grid&lt;/a> from a product perspective is &lt;em>huge&lt;/em>. And in a roundabout way proves I am not completely crazy…&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://nichol.as/benchmark-of-python-web-servers">Benchmark of Python WSGI Servers&lt;/a> has lots of numbers, and graphs and charts.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://teststack.github.com/TestStack.Seleno/">Seleno&lt;/a> makes some bold marketing statements (‘the RIGHT way!’). Looks like a framework in C# that forces people to use Page Objects&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://vimeo.com/30591662">Automating an SVG game with Selenium WebDriver&lt;/a> from &lt;a href="http://vimeo.com/user5310124">Andreas Tolf Tolfsen&lt;/a> on &lt;a href="http://vimeo.com">Vimeo&lt;/a>.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://splinter.cobrateam.info">Splinter&lt;/a> is another python web automation framework. How long until this gets marketed as the next Selenium killer that uses WebDriver under the hood.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>If you’re using Maven, &lt;a href="https://github.com/geoffreywiseman/maven-notification-center">maven-notification-center&lt;/a> could be interesting. Well, if you are also using Mountain Lion.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>And I quote from &lt;a href="http://jamesshore.com/Blog/Acceptance-Testing-Revisited.html">Acceptance Testing Revisited&lt;/a> – &lt;em>Asking customers to read and write acceptance tests is a poor use of their time, skill, and inclinations.&lt;/em>. THIS!&lt;/p>
&lt;/li>
&lt;li>
&lt;p>OH NOES! &lt;a href="http://pastebin.com/2qbRKh3R">Your Credit Card Pin has been leaked!&lt;/a>!!!&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://java.dzone.com/articles/testing-automation-selenium">Testing Automation With Selenium – Part 1&lt;/a> starts with &lt;em>Never send a human to do a machine’s job&lt;/em> but also omits &lt;em>Never send a machine to do a human’s job&lt;/em>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://workroomprds.blogspot.co.uk/2012/08/dog-show-quality.html">Dog Show Quality&lt;/a> is where “Quality” is its own goal. That’s from about halfway through the article. Hands up when see this with automation all. the. freaking. time. (All your hands should be up. OK, you can put the down now.)&lt;/p>
&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #118</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-118/</link><pubDate>Fri, 07 Sep 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-118/</guid><description>
&lt;p>&amp;lt;Insert witty/snarky commentary on something here&amp;gt;&lt;/p>
&lt;ul>
&lt;li>Apparently the TestWatchman thing I linked to is deprecated now in favour of TestWatcher (shows how much I pay attention to JUnit stuff…). &lt;a href="http://blog.zvestov.cz/item/98/catid/16">Here is an example of TestWatchers and RuleChains&lt;/a>. No, I don’t know what the blurb at the top says.&lt;/li>
&lt;li>Sure, we’ve all see lorum ipsum text, but do you know what it (ish) says? &lt;a href="https://simple.wikipedia.org/wiki/Lorem_ipsum">now you do&lt;/a>&lt;/li>
&lt;li>From the ‘MEASURE ALL THINGS!!!’ category is Mozilla’s &lt;a href="https://wiki.mozilla.org/ReleaseEngineering/BuildFaster">BuildFaster&lt;/a>. There was a cool graph of build times I saw somewhere too…&lt;/li>
&lt;li>The kids at Google have released &lt;a href="http://google-opensource.blogspot.co.uk/2012/09/wicked-good-xpath-faster-javascript.html">Wicked Good XPath: a faster JavaScript XPath library&lt;/a>. I suspect Se will be growing this appendage fairly soon-ish. And then we get to re-learn all the gotchas of a new library. 🙂&lt;/li>
&lt;li>Provided without comment&lt;br>
&lt;img src="https://i0.wp.com/i.imgur.com/jxBZG.jpg" alt="">&lt;/li>
&lt;li>Discussions about PageFactories can only be a good thing. &lt;a href="http://selenium34.wordpress.com/2012/09/05/optional-elements/">Optional Elements&lt;/a>. Black Magic + explanations = Magic.&lt;/li>
&lt;li>Dear Google Code team; &lt;a href="https://github.com/blog/1252-how-we-keep-github-fast">How we keep GitHub fast&lt;/a>.&lt;/li>
&lt;li>There seems to be lots of good stuff on &lt;a href="http://darrellgrainger.blogspot.ca">Darrell Grainger’s blog&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://mjp.github.com/2012/08/29/github-python-analysis.html">An Analysis of the Top Python Repositories Hosted on Github&lt;/a> is interesting. I have no idea how to apply this to Se, but still…&lt;/li>
&lt;li>Read &lt;a href="https://www.facebook.com/notes/kent-beck/naming-from-the-outside-in/464270190272517">Naming From the Outside In&lt;/a> before writing another line of code in a page object&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #117</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-117/</link><pubDate>Wed, 05 Sep 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-117/</guid><description>
&lt;ul>
&lt;li>&lt;a href="http://lostechies.com/jimmybogard/2012/08/30/evolutionary-project-structure/">Evolutionary Project Structure&lt;/a> talks about a particular project structure, but this is one of those fun developer opinionated things to geek out on&lt;/li>
&lt;li>&lt;a href="http://experttesters.com/2012/08/13/testers-caught-sleeping-on-the-job">Testers Caught Sleeping on the Job&lt;/a> is not browser-based, but you cannot bash sleeps enough. Also has a pretty amusing photo with it&lt;/li>
&lt;li>&lt;a href="http://www.phptherightway.com/">PHP: The Right Way&lt;/a> is of course one person’s understanding of the ‘right way’ but still not bad.&lt;/li>
&lt;li>Automation is Code. But are &lt;a href="http://www.carlopescio.com/2011/04/your-coding-conventions-are-hurting-you.html">your code conventions hurting you&lt;/a>?&lt;/li>
&lt;li>Hate Eclipse for writing your scripts in? &lt;a href="http://www.jetbrains.com/specials/index.jsp">JetBrains has specials&lt;/a>. I’ve only seen PyCharm, but it looked pretty nice.&lt;/li>
&lt;li>Has anyone tried manipulating tabs with WebDriver the way that is described in &lt;a href="http://www.telerik.com/automated-testing-tools/blog/12-09-04/closing-tabs-in-chrome.aspx">Closing Tabs in Chrome&lt;/a>&lt;/li>
&lt;li>I haven’t watched it, but Moodle is now doing a series of videos on how they do automation.&lt;br>
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
&lt;iframe src="https://www.youtube.com/embed/J4jWCWpn-Qw" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" allowfullscreen title="YouTube Video">&lt;/iframe>
&lt;/div>
&lt;/li>
&lt;li>Want to hear Simon rant about how to &lt;a href="https://www4.gotomeeting.com/register/519621639">Stop the rot: Banishing Flakiness from Selenium Tests with Simon Stewart&lt;/a>? What are you waiting for then? Register already. Sheesh.&lt;/li>
&lt;li>The W3C has github-ified the &lt;a href="https://github.com/w3c/html">html spec&lt;/a>&lt;/li>
&lt;li>Looks like the &lt;a href="https://wiki.jenkins-ci.org/display/JENKINS/Selenium+Plugin">Se Plugin for Jenkins&lt;/a> has been re-written. Might be worth a look again.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #116</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-116/</link><pubDate>Tue, 04 Sep 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-116/</guid><description>
&lt;p>So do people celebrate the day after Labor day as the beginning of summer?&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://www.igvita.com/2012/08/28/web-performance-power-tool-http-archive-har/">Web Performance Power Tool: HTTP Archive (HAR)&lt;/a> is worrisome that HARs are being billed as a power tool, but full of good stuff&lt;/li>
&lt;li>&lt;a href="http://blog.cloudfour.com/how-do-you-pick-responsive-images-breakpoints/">How do you pick responsive images breakpoints?&lt;/a> is another one of those problems I think we’re going to have to worry about&lt;/li>
&lt;li>&lt;a href="http://kentbeck.github.com/junit/javadoc/latest/org/junit/rules/TestWatchman.html">TestWatchman&lt;/a> seems like an interesting bit of JUnit4. (At what point do we have to stop saying 3 or 4 when referring to JUnit?)&lt;/li>
&lt;li>I’ve been headhunted by Google for years now, &lt;a href="http://mike-bland.com/2012/07/10/test-mercenaries.html">Test Mercenaries&lt;/a> is the one team that would have made me leap.&lt;/li>
&lt;li>Looking for the patches for last week’s Sauce announcement? They’re &lt;a href="https://github.com/saucelabs/mac-osx-on-kvm">here&lt;/a>. Holy magic numbers, Batman.&lt;/li>
&lt;li>I finally annotated &lt;a href="http://element34.ca/php-webdriver/a-php-page-object-example">A PHP Page Object Example&lt;/a>&lt;/li>
&lt;li>I think you should let your database get dirty, but &lt;a href="http://devblog.avdi.org/2012/08/31/configuring-database_cleaner-with-rails-rspec-capybara-and-selenium/">Configuring database_cleaner with Rails, RSpec, Capybara, and Selenium&lt;/a> does seem like a useful gem&lt;/li>
&lt;li>&lt;a href="http://case.kapsi.fi/blog/?p=185">Robot Framework – Windows Installation The Easy Way&lt;/a> is the easy way to install RF on Windows. Shocking, I know.&lt;/li>
&lt;li>&lt;a href="http://www.singlefounder.com/2012/08/28/amateurs-study-tactics-professionals-study-logistics/">Amateurs Study Tactics. Professionals Study Logistics&lt;/a> seems to resonate with me in how a lot of people approach automation.&lt;/li>
&lt;li>&lt;a href="http://www.hskupin.info/2012/08/29/weekly-ask-an-expert-qa-sessions-for-test-automation/">Weekly “Ask an Expert” Q&amp;amp;A sessions for Test Automation&lt;/a> with the Mozilla ‘A-Team’&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #115</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-115/</link><pubDate>Wed, 29 Aug 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-115/</guid><description>
&lt;ul>
&lt;li>
&lt;p>The big news in the twitter-verse yesterday was the announcement of &lt;a href="http://sauceio.com/index.php/2012/08/apple-sauce-android-sauce/">Apple Sauce and Android Sauce&lt;/a> from Sauce Labs. I of course jumped all over that bandwagon with &lt;a href="http://element34.ca/blog/apple-sauce-and-android-sauce-yummy-and-fully-supported">Apple Sauce and Android Sauce .. Yummy! (And Fully Supported)&lt;/a>
&lt;a href="http://element34.ca/blog/apple-sauce-and-android-sauce-yummy-and-fully-supported">&lt;/a>* &lt;a href="http://element34.ca/blog/apple-sauce-and-android-sauce-yummy-and-fully-supported">&lt;/a>&lt;a href="http://opensourcehacker.com/2012/08/22/accessing-priviledged-javascript-apis-from-your-web-page-in-firefox-with-selenium">Accessing priviledged Javascript APIs from your web page in Firefox with Selenium&lt;/a> lets to pull even more strings of the browser than you were supposed to be able to. Something I suspect Marionette will make redundant, but until then…&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://www.yann.com/en/use-xvfb-selenium-and-chrome-to-drive-a-web-browser-in-php-23/08/2012.html">Use Xvfb, Selenium and Chrome to drive a web browser in PHP&lt;/a> starts with the same-old, same-old, but scroll down to the bottom for squid and iptables and other things&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://testingfroth.blogspot.ca/2012/08/integrating-selenium-with-alm-simple.html">Integrating Selenium with ALM – a simple recipe&lt;/a> shows how to do it, but I still say whomever packages this up really well will make a lot of money&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://bendyworks.com/geekville/articles/2012/8/your-papers-please">You Papers Please&lt;/a> is something that will start to come up in the Se community soon-ish I fear.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://developer.android.com/tools/devices/emulator.html#emulatornetworking">Emulator Networking&lt;/a> is a link I wish I had before spending an hour or so trying to search SO etc. for it&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://axisofeval.blogspot.co.at/search/label/thispltlife">The Axis of Eval&lt;/a> is just funny&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="https://github.com/roydekleijn/BrowsermobRESTclient">BrowsermobRESTclient&lt;/a> is a Java client for the BrowserMob Proxy&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://whotestedthis.squarespace.com/journal/2012/8/28/my-shallow-dive-into-ios-automation.html">My Shallow Dive into iOS automation&lt;/a> looks at the various options out there for native automation&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Py.Test is awesome. And makes my brain hurt.&lt;br>
slides:&lt;/p>
&lt;p>&lt;strong>&lt;a href="http://www.slideshare.net/pfctdayelise/funcargs-other-fun-with-pytest" title="Funcargs &amp;amp; other fun with pytest">Funcargs &amp;amp; other fun with pytest&lt;/a>&lt;/strong> from &lt;strong>&lt;a href="http://www.slideshare.net/pfctdayelise">Brianna Laugher&lt;/a>&lt;/strong>&lt;/p>
&lt;p>video:
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
&lt;iframe src="https://www.youtube.com/embed/DTNejE9EraI" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" allowfullscreen title="YouTube Video">&lt;/iframe>
&lt;/div>
&lt;/p>
&lt;p>code:
&lt;script type="application/javascript" src="https://gist.github.com/pfctdayelise/3386951.js">&lt;/script>
&lt;/p>
&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #114</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-114/</link><pubDate>Mon, 27 Aug 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-114/</guid><description>
&lt;p>Hurray for having fillings done on both sides of my face. Don’t expect me to speak without drolling for rest of the day.&lt;/p>
&lt;ul>
&lt;li>
&lt;p>I’ll admit to not knowing what the difference is/was between FluentWait and WebDriverWait, but &lt;a href="http://seleniumsimplified.com/?p=340">FluentWait with WebElement&lt;/a> explains it well. With sample code!&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://www.digbymarksit.com/2012/08/18/phpunit-selenium-php-webdriver-hours-of-entertainment-part-1/">PHPUnit + Selenium + php-webdriver = hours of entertainment (Part 1)&lt;/a> shows a nice extension to PHPUnit_Framework_TestCase. Now if only he was using my &lt;a href="https://github.com/Element-34/php-webdriver">active fork&lt;/a> of the php-webdriver bindings rather than the original project Facebook seems to have abandoned.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Speaking of Facebook, &lt;a href="https://www.facebook.com/notes/facebook-engineering/under-the-hood-rebuilding-facebook-for-ios/10151036091753920">Under the hood: Rebuilding Facebook for iOS&lt;/a> is going to be oft cited in the whole ‘html5 or native’ discussions for the next while I think&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Santi spoke at the recent San Jose Selenium Meetup; &lt;a href="https://my.adobeconnect.com/p3xgh7qcvdn?launcher=false&amp;amp;fcsContent=true&amp;amp;pbMode=normal">video&lt;/a>, &lt;a href="https://docs.google.com/presentation/d/1bayh58Xhz8eBjxZvYZoxfvYcWnC9fiAP-h7LklLxGjo/edit?pli=1#slide=id.p">slides&lt;/a>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;strong>&lt;a href="http://www.slideshare.net/mikebrittain/on-failure-and-resilience" title="On Failure and Resilience">On Failure and Resilience&lt;/a>&lt;/strong> from &lt;strong>&lt;a href="http://www.slideshare.net/mikebrittain">Mike Brittain&lt;/a>&lt;/strong>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;a href="http://shauninman.com/tmp/retina/">Automatic Conditional Retina Images&lt;/a> seems like something we should know how to check if its being loaded properly or not. Guess I need to go buy an iPad to check this out…&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Puppet Labs updated some of their documentation recently; &lt;a href="http://docs.puppetlabs.com/puppet/2.7/reference/">Puppet 2.7 Reference Manual&lt;/a>, &lt;a href="http://docs.puppetlabs.com/facter/1.6/core_facts.html">Factor 1.6 Core Facts&lt;/a>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Reddit opensourced &lt;a href="https://github.com/reddit/push">push&lt;/a> which is yet another deployment tool. Remember though, you are likely not Reddit.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Hey lookit! The WhiteHouse &lt;a href="https://github.com/WhiteHouse/petition/tree/7.x-1.x/selenium">uses Selenium&lt;/a>. Though the scripts are Selenese. And named .php for some unknown reason. Actually, they look a lot like they were created as part of some sort of scaffolding. Anyone?&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Not sure what to do with it, but &lt;a href="http://blog.streamingmedia.com/the_business_of_online_vi/2012/08/updated-list-of-vendors-in-the-content-delivery-and-transparent-caching-markets.html">Updated List Of Vendors In The Content Delivery and Transparent Caching Markets&lt;/a> looks rather useful. Or not.&lt;/p>
&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #113</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-113/</link><pubDate>Wed, 22 Aug 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-113/</guid><description>
&lt;p>&lt;code>/me is not looking forward to when the jet lag whallops him&lt;/code>&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://sites.google.com/a/van-steenbeek.net/archive/php_pcntl_fork?q=php_pcntl_fork">Thorough look at PHP’s pcntl_fork()&lt;/a> is how we have to do parallel tests with phpunit until it grows it proper&lt;/li>
&lt;li>&lt;a href="http://filipin.eu/catch-javascript-errors-on-the-page-with-watir-or-selenium/">Catch Javascript Errors on the Page with Watir or Selenium&lt;/a> – This!&lt;/li>
&lt;li>&lt;a href="http://seleniumsimplified.com/?p=339">Categorising WebDriver–Navigation, Interrogation, Manipulation&lt;/a> walks through the WebDriver API bit by bit. Of course, now the trick is to keep it up to date. 🙂&lt;/li>
&lt;li>&lt;a href="https://github.com/montagejs/screening">Screening&lt;/a> uses Se deep in its guts to script up Montage apps&lt;/li>
&lt;li>&lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=765645">Millions of web pages use the -moz-opacity:0.7 tag and in javascript. It’s broken now since FF 13.01. Please can you “alias” it back into your main browser code. Thanks.&lt;/a> makes Issue 141 look reasonable. Also raises the question whether we should catch prefixed CSS styles in our static analysis checks&lt;/li>
&lt;li>Cheezy is a gem making machines; &lt;a href="https://github.com/cheezy/ADB">Android Debug Bridge&lt;/a>, &lt;a href="https://github.com/cheezy/data_magic">DataMagic&lt;/a>&lt;/li>
&lt;li>Remember last week’s Olympics doodle automation? Here is how to do &lt;a href="http://www.html5rocks.com/en/tutorials/doodles/gamepad/">Jumping the Hurdles With the Gamepad Api&lt;/a>. Paging Mr. Huggins. Your next robot’s purpose has been discovered&lt;/li>
&lt;li>Using IE? Read &lt;a href="http://jimevansmusic.blogspot.ca/2012/08/youre-doing-it-wrong-protected-mode-and.html">You’re Doing It Wrong: IE Protected Mode and WebDriver&lt;/a>. Not using IE? This is not the post you are looking for.&lt;/li>
&lt;li>&lt;a href="http://gridinit.com">Gridinit&lt;/a> was relaunched recently. Tim has &lt;a href="http://90kts.com">blogged a whole bunch of documentation&lt;/a> about it this week&lt;/li>
&lt;li>&lt;a href="http://angryweasel.com/blog/?p=496">Orchestrating Test Automation&lt;/a> is essentially why I look for testers who can code rather than coders who [think they] can test&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #112</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-112/</link><pubDate>Tue, 21 Aug 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-112/</guid><description>
&lt;p>Eyes are gross.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://www.thucydides.info">Thucydides&lt;/a> has a spiffy new website&lt;/li>
&lt;li>&lt;a href="http://marakana.com/s/how_eventbrite_uses_jenkins_and_selenium,1246/index.html">How Eventbrite uses Jenkins and Selenium&lt;/a> which I think I’ve linked to before, but can’t seem to find reference to.&lt;/li>
&lt;li>&lt;a href="http://whatsmyudid.com">What’s my UDID?&lt;/a> is now the new bar for online tutorials&lt;/li>
&lt;li>&lt;strong>&lt;a href="http://www.slideshare.net/jezhumble/creating-maintainable-automated-acceptance-tests" title="Creating Maintainable Automated Acceptance Tests">Creating Maintainable Automated Acceptance Tests&lt;/a>&lt;/strong> from &lt;strong>&lt;a href="http://www.slideshare.net/jezhumble">Jez Humble&lt;/a>&lt;/strong>
&lt;iframe src='https://www.slideshare.net/slideshow/embed_code/13990429' width='427' height='350' scrolling='no' allowfullscreen webkitallowfullscreen mozallowfullscreen>&lt;/iframe>
&lt;/li>
&lt;li>&lt;strong>&lt;a href="http://www.slideshare.net/tourdedave/agile-2012-public-13991698" title="Selenium Users Anonymous">Selenium Users Anonymous&lt;/a>&lt;/strong> from &lt;strong>&lt;a href="http://www.slideshare.net/tourdedave">Dave Haeffner&lt;/a>&lt;/strong>
&lt;iframe src='https://www.slideshare.net/slideshow/embed_code/13991698' width='427' height='350' scrolling='no' allowfullscreen webkitallowfullscreen mozallowfullscreen>&lt;/iframe>
&lt;/li>
&lt;li>&lt;a href="http://www.stickyminds.com/sitewide.asp?ObjectId=17579&amp;amp;Function=DETAILBROWSE&amp;amp;ObjectType=ART&amp;amp;sqry=*Z(SM)*J(ARTCOL)*R(createdate)*K(articlesandpapers)*F(~)*&amp;amp;sidx=3&amp;amp;sopp=10&amp;amp;sitewide.asp?sid=1&amp;amp;sqry=*Z(SM)*J(ARTCOL)*R(createdate)*K(articlesandpapers)*F(~)*&amp;amp;sidx=3&amp;amp;sopp=10">Capture/Playback: The Vampire that Will Not Die&lt;/a> has perhaps the most unfriendly url in the history of the internets, but is a nice little rant anyways.&lt;/li>
&lt;li>Thinking about lint-ing your JS whilst you automate? &lt;a href="http://stackoverflow.com/questions/534601/are-there-any-javascript-static-analysis-tools/12005175#12005175">This SO answer&lt;/a> runs down your options.&lt;/li>
&lt;li>The ‘Custom Locators’ series (&lt;a href="http://selenium34.wordpress.com/2012/08/08/custom-locators-part-1/">part 1&lt;/a>, &lt;a href="http://selenium34.wordpress.com/2012/08/14/custom-locators-part-2/">part 2&lt;/a>) talks about developing a custom Page Factory&lt;/li>
&lt;li>Remember kids, the technical term for this is ‘3rd party crap’ and you should turn it off in your automation environments for just this reason. &lt;a href="http://www.forbes.com/sites/ericsavitz/2012/06/01/facebook-outage-slowed-1000s-of-retail-content-sites">Facebook Outage Slowed 1000s Of Retail, Content Sites&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://www.verelo.com">Verelo&lt;/a> is the latest SeAAS vendor. Their niche seems to be in real-time monitoring.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #111</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-111/</link><pubDate>Mon, 20 Aug 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-111/</guid><description>
&lt;p>When this gets published, I’ll be sitting around the Barcelona airport waiting for my connection home. Unless I screwed up the time math. 🙂&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://agiletesting.blogspot.co.at/2012/08/the-dangers-of-uniformity.html">The dangers of uniformity&lt;/a> pours cold water on something that I know I used to preach for automation environments.&lt;/li>
&lt;li>&lt;a href="http://www.michaelnielsen.org/ddi/how-to-crawl-a-quarter-billion-webpages-in-40-hours/">How to crawl a quarter billion webpages in 40 hours&lt;/a> doesn’t have code listed (he explains why) but it explains how you could write it yourself if you wanted.&lt;/li>
&lt;li>&lt;a href="http://cultivatecode.blogspot.de/2012/08/no-coffee-today-report-of-munich-0812.html">No coffee today, a report of the Munich 08/12 test automation code retreat&lt;/a> has me thinking that for Se Conf next year, a ‘test automation code retreat’ might be an interesting thing.&lt;/li>
&lt;li>&lt;a href="http://michaelheap.com/behat-selenium2-webdriver/">Behat + Selenium2 / Webdriver&lt;/a> is interesting. And has been updated to have a link to &lt;a href="http://michaelheap.com/behat-selenium2-webdriver-with-minkextension/">Behat + Selenium2 / Webdriver with MinkExtension&lt;/a> which apparently is easier.&lt;/li>
&lt;li>&lt;a href="http://usrsb.in/blog/blog/2012/08/12/bouncing-pythons-generators-with-a-trampoline/">Bouncing Python’s Generators With a Trampoline&lt;/a> lost me at ‘tail call optimization’ but seems cool.&lt;/li>
&lt;li>The AA-FTT annual workshop was last weekend, here is an &lt;a href="http://craigsmith.id.au/2012/08/13/aaftt-workshop-2012-dallas/">excellent write-up&lt;/a> about what happened there.&lt;/li>
&lt;li>&lt;a href="http://markoh.eu/droplets">Droplets of Watir&lt;/a> seems like a great collection of recipes for Watir.&lt;/li>
&lt;li>&lt;a href="http://mestachs.wordpress.com/2012/08/13/selenium-best-practices/">Selenium Best Practices&lt;/a> is a good page, with a &lt;em>horrible&lt;/em> name&lt;/li>
&lt;li>&lt;a href="http://randonom.com/blog/2012/08/workflow-driven-development-asserting-a-workflow-using-an-audit-trail/">Workflow Driven Development: Asserting a Workflow using an Audit Trail&lt;/a> reminds us that individual page states are not the only thing that matters.&lt;/li>
&lt;li>&lt;a href="http://blargon7.com/2012/08/mozilla-drops-usage-of-selenium-rc/">Mozilla drops usage of Selenium RC&lt;/a> shows that Mozilla is right on the cutting edge. But also raises the question of when should the rest of us should drop it as well.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #110</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-110/</link><pubDate>Tue, 14 Aug 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-110/</guid><description>
&lt;p>Dear body; what time zone are you in?&lt;/p>
&lt;p>Ah well, until that battle resolves itself, here are some links.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://sauceio.com/index.php/2012/08/firefox-the-clear-winner-for-automated-testing/">Firefox the Clear Winner for Automated Testing&lt;/a> has a wonderfully SEO friendly title, but really is just some cool usage graphs for their system. Extrapolate beyond that at your own risk.&lt;/li>
&lt;li>&lt;a href="http://simplythetest.tumblr.com/post/29058868277/task-automation-ftw">Task Automation FTW!&lt;/a> — make your application installable! I did something like this a decade ago (also using python) but finding something in my own blog seems a harder challenge than it should be.&lt;/li>
&lt;li>&lt;a href="http://julianhigman.com/blog/2012/08/09/running-saucelabs-selenium-test-suite-locally-with-phpunit">Running SauceLabs Selenium test suite locally with PHPUnit&lt;/a> explains how to solve my number one complains for the various BaaS vendor plugins.&lt;/li>
&lt;li>And TextMate is &lt;a href="https://github.com/textmate/textmate">now Open Source&lt;/a>, ya! Under GPL3. Oh…&lt;/li>
&lt;li>I don’t know what IFTTT is, or how to see the actual script [without joining], but &lt;a href="http://ifttt.com/recipes/48831">Capture all Smatterings of Selenium entries to Evernote&lt;/a> might be of interest to people. If a bit meta to be linking to it.&lt;/li>
&lt;li>So Patrick Lightbody isn’t at Neustar (which bought Browsermob) any more (congrats on the new gig at New Relic btw!) so I was a bit worried about what was going to happen with the BrowserMob Proxy. Seems the GitHub effect has happened once more and there are others also &lt;a href="http://blog.stuartherbert.com/php/2012/08/10/tweaking-browsermob-proxy/">Tweaking BrowserMob-Proxy&lt;/a>.&lt;/li>
&lt;li>As is the case with similar articles to &lt;a href="http://blog.joocode.com/browsers/12-things-about-the-webkit-inspector-i-didnt-know/">Things I didn’t know about the WebKit inspector&lt;/a>, read the comments for more things you likely didn’t know.&lt;/li>
&lt;li>&lt;a href="http://blog.thepete.net/blog/2012/05/09/javascript-feature-flags/">Feature Flags in JavaScript&lt;/a> – do this!&lt;/li>
&lt;li>&lt;a href="http://scottcsims.com/wordpress/?p=382">Managing browsers from the command line on OS X&lt;/a> is a bit of shell trickery I’d ashamed to admit I didn’t know. Well, the &lt;em>open&lt;/em> bit at any rate.&lt;/li>
&lt;li>&lt;a href="http://codeduicodefirst.codeplex.com">Code First API Library, Scaffolding &amp;amp; Guidance for Coded UI Tests&lt;/a> seems very WebDriver-esque in how to do things. Go Team! 😉&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #109</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-109/</link><pubDate>Mon, 13 Aug 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-109/</guid><description>
&lt;p>Going to be on an airplane for the better part of the next day, so will likely miss some links … unless I am tagged on &lt;a href="http://twitter.com/adamgoucher">twitter&lt;/a> with it.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="http://ardesco.lazerycode.com/index.php/2012/08/introducing-the-driver-binary-downloader-maven-plugin-for-selenium/">Introducing The Driver Binary Downloader Maven Plugin For Selenium&lt;/a> solves a problem that has been solved a couple times but this seems the slickest. Normally I would suggest just using Chef/Puppet for this but it makes sense in the Maven context. I think.&lt;/li>
&lt;li>Speaking of Maven, &lt;a href="https://github.com/maoo/maven-tiles">Maven Tiles&lt;/a> brings modularity to your modularity&lt;/li>
&lt;li>&lt;a href="http://levi-wilson.blogspot.ca/2012/06/maven-android-travis-ci-and-more.html">Maven, Android, Travis-CI and More Awesome Sauce&lt;/a>&lt;/li>
&lt;li>Google’s Olympics Doodles … with Watir
&lt;ul>
&lt;li>&lt;a href="http://filipin.eu/automating-google-hurdles">Hurdles&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://filipin.eu/automating-google-basketball">Basketball&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://filipin.eu/automating-google-slalom-canoe">Slalom Canoe&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://filipin.eu/automating-google-soccer">Soccer&lt;/a>&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>And using Sikuli to automate &lt;a href="http://knorrium.info/2012/08/07/automating-the-hurdles-google-doodle/">Hurdles&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://www.webapptesting.com/when-to-use-test-automation-and-when-not-to/2012/08/">When to Use Test Automation (and when not to)&lt;/a> is barely just the tip of the iceberg&lt;/li>
&lt;li>&lt;a href="https://www.facebook.com/notes/facebook-engineering/building-and-testing-at-facebook/10151004157328920">Building and testing at Facebook&lt;/a> is meh (and/or scary depending on whether your come from a dev or test background) but ‘gatekeeper’ sounds pretty rad. And is not currently on their github page.&lt;/li>
&lt;li>&lt;a href="http://spin.atomicobject.com/2012/08/09/rspec-thank-you-for-running-my-tests-in-random-order/">RSpec: Thank You for Running My Tests in Random Order&lt;/a> — well, &lt;em>Test interaction sucks&lt;/em> summarizes things pretty well.&lt;/li>
&lt;li>&lt;a href="http://ffeathers.wordpress.com/2012/08/09/documenting-a-mobile-interface-using-chromes-user-agent-setting">Documenting a mobile interface using Chrome’s user agent setting&lt;/a> is a useful trick. Can we change the user-agent through WebDriver?&lt;/li>
&lt;li>&lt;a href="http://www.thoughtworks-studios.com/twist/2.3/help/how_do_i_handle_popup_in_selenium2.html">Handle popup windows in Selenium 2&lt;/a> uses a different trick to find windows than I use. And thats a good thing.&lt;/li>
&lt;/ul></description></item><item><title>Blog: A Smattering of Selenium #108</title><link>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-108/</link><pubDate>Tue, 07 Aug 2012 00:00:00 +0000</pubDate><guid>https://trunk--polite-jelly-cc0866.netlify.app/blog/2012/a-smattering-of-selenium-108/</guid><description>
&lt;p>Apparently the links are slowing down for the summer?&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://air.mozilla.org/continuous-delivery-san-francisco/">Ralph Bodenner talks about New Relic’s experiences&lt;/a> at the SF Continuous Delivery meetup&lt;/li>
&lt;li>&lt;a href="http://www.pentestit.com/xelenium-security-testing-selenium/">Xelenium: Security Testing with Selenium!&lt;/a> is kinda an interesting use case&lt;/li>
&lt;li>&lt;a href="http://dev.opera.com/articles/view/introducing-mobile-browser-automation/">Introducing mobile browser automation&lt;/a> from/with Opera&lt;/li>
&lt;li>&lt;a href="http://seleniumsimplified.com/?p=331">A minimal WebDriver based DSL&lt;/a> is a bit of an experiment&lt;/li>
&lt;li>&lt;a href="http://technology.customink.com/blog/2012/08/03/testing-chef-cookbooks/">Testing Chef Cookbooks&lt;/a> is something you didn’t think you needed to think about&lt;/li>
&lt;li>&lt;a href="https://github.com/nasa/">NASA’s github&lt;/a> is not Se focused, but could help you build your own Mars rover&lt;/li>
&lt;li>&lt;a href="http://www.igvita.com/slides/2012/wordpress-performance/">WordPress Performance&lt;/a> is a nice deck with lots of graphs and pictures&lt;/li>
&lt;li>&lt;a href="http://emilybache.blogspot.se/2012/08/principles-of-agile-test-automation.html">Principles of Agile Test Automation&lt;/a> outlines 4 principles and how they can often compete with each other&lt;/li>
&lt;li>&lt;a href="https://github.com/paulbjensen/ss-cucumber">Cucumber.js integration for SocketStream&lt;/a>&lt;/li>
&lt;li>&lt;a href="http://www.rkblog.rk.edu.pl/w/p/testing-django-applications-selenium/">Testing Django applications with Selenium&lt;/a> isn’t too bad. Of course, its logging in through Facebook which is one of those things you should have your development team provide a bypass for…&lt;/li>
&lt;/ul></description></item></channel></rss>