When I am working on a project there are a few things that I like to do to ensure that I can make the most of my time and budget. There are a number of things involved in a project that traditionally end up costing money to do. I like things that work well, minimize the time needed to manage, setup, administer, learn, integrate, and when I find something that can do that AND the cost is low or free it makes me very happy!
Paging Dr. Object
Organizing your tests and the objects that describe elements within the application your are testing is one of the ways to help DRY up your tests and to reduce the amount of change needed when the application your are testing changes. You can do this in a couple of ways, and, depending on the driver you are using, there are some libraries that can help you. One way to do this is with the page object pattern.
Starting a project
There are a number of things I setup by default, folder structure, helper files, snippets, etc. I do this a lot, so have a tool that automates some of this. I've posted it on Bitbucket but it is very much a work in progress.
IDE vs. Editor vs. ...
I've played with a lot of different IDEs and editors for ruby and have settled on one for use when I'm on my desktop, and one for use while I'm on my phone or tablet (yes, there are sometimes when I have an idea or 'fix' that needs to be in and I'm not at my computer). After playing with IDEs like Aptana, eclipse, RubyMine, Geany, and some crazy mash ups called CubicTest and Bromine, I found that they all had some benefits (built in debugging, package management, snippets), but mostly had quirks and drawbacks (price, keyboard shortcuts, configurations) that didn't fit with how I wanted to work. Mainly I want something fast, clean, easy to configure to do exactly what I want, and portability to move with me from system to system (some clients won't allow me to bring my own system).
I've been helping to setup automation for a number of individuals and teams and have decided to publish all of the setups and configs that I've been using. I'll break this down into a couple of parts to focus on each of the steps along the way. If I get ambitious I may even automate the setup...
Hi, my name is Clancey and I am a quality advocate, automator, and toolsmith.