The Jan 7th 2003 meeting of the Cincinnati XP Users Group was a a Test-Driven Development workshop to provide hands on experience with pair programming and developing software test-first.<br /> <br /> The group was split between Java and .NET programmers with one holdout for using Ruby (ummm ... that would have been me). Mark Halloran consented to pairing with me, even though he hadn't used Ruby before.<br /> <br /> Mark Windholtz played the role of customer and provided us with three stories over the course of the evening.<br /> <br /> Since many of the folk at the meeting were new to Test Driven Development, I thought I would reconstruct this "blow by blow" description of the path that my pair partner and I took that evening. Although we did it in Ruby, the code is easy to follow and I provide comments throught out so that even Ruby neophytes are not left out.
Ruby on Rails is just one facet of what makes Ruby great, just like EJB is only part of the Java™ enterprise platform. Andrew Glover digs beneath the hype for a look at what Java developers can do with Ruby, all by itself.
One thing I love about Ruby is the built in unit tests. As someone who is working to use better developing methodologies, having unit testing avaliable with no effort makes it that much easier to try out things like Test Driven Development. Unit testing also has an important place in Rails development. I enjoyed the format of my article on migrations, so we’ll try that again. The why and how of unit testing, coming right up.
There is a Firefox extension called Selenium IDE made by the folks over at OpenQA.org. It is a very easy to use and powerful tool for controlling, automating or testing web sites.
Behavior Driven Development is the logical successor to Test Driven Development because it provides a clearer way to express what the software is supposed to do. BDD emphasizes what the system is supposed to do in its syntax, as opposed to testing what the system does. Both can be used to accomplish the same goals of defining and testing the software system, but BDD seems to provide a higher level of abstraction.
n this tutorial, we’re going to explore Behaviour Driven Development using rSpec. A primary goal of BDD is to think about specifications rather than testing. We’ll explore what that means, and how it affects the process of specifying components in a system. For example, one of the examples we use at Object Mentor in our TDD classes is test-driving a Stack.
A quick description of how the plugin works, and then on to how I wrote it using RSpec: an HTTP request comes in, we inspect the params Hash to convert anything that’s a list of IDs into an Array of IDs (to pass to #collection_singular_ids). On the other side, we have a helper that generates two select elements, with anchor elements as the user interface to move items from one list to the other.
A glaring hole in the Test Driven Development aspirations of Rails is helper tests. And also view tests, which Eric Hodel is working on.<br /> <br /> But back to helper tests….you can test them somewhat through your functional tests, but how can you test them individually?<br /> <br /> Ryan Davis figured out a solution and I made it into a plugin!
Acceptance, or functional, testing is designed to put manual tasks through their paces, but testing these tasks by hand can be time consuming and prone to human error. In this article, the author shows architects, developers, and testers how to use the Selenium testing tools to automate acceptance tests; automating the tests saves times and helps eliminate tester mistakes. You also are provided with an example of how to apply Selenium in a real-world project using Ruby on Rails and Ajax.
Selenium is an open-source functional testing tool written by ThoughtWorks. It is the only open-source testing tool that supports a large variety of browsers and operative systems. It is implemented entirely in JavaScript and runs inside the web browser itself. Read more here: http://selenium.thoughtworks.com
This article is for fellow Rubyists looking for more information on test writing and how that fits into Ruby On Rails. If you’re new to test writing or experienced with test writing, but not in Rails, hopefully you’ll gain some practical tips and insight on successful testing.
Creating Multilingual Web Pages:<br /> <br /> Unicode Support in HTML, HTML Editors and Web Browsers
Latin 1 and Unicode characters in &ersand; entities
This is the complete list of character entity references defined in HTML 4.0. Before searching through this list you may want to view the quick list of the most popular character entities.
If you've ever wanted to poke and prod your Rails app through the entire stack without firing up a web browser, Rails 1.1 just made it easy. You can now use the app object from within script/console to get access to the ActionController::Integration::Session instance. And that means you can drive your app just like an integration test.
This assumes that you have already created a subversion repository, and you are just wondering how to setup your rails project.
Rails Best Practices, Tips and Tricks
Understanding Ruby Symbols
This is for designers who are going to be working with Rails and is intended to give them a good starting point to jump into work with a Rails developer. This is all introductory material. As such, I cover some basics (MVC, locations of files) and move from there to a code example and more advanced topics (partials, ActionView helpers).
This javascript class allows you to add window in an HTML page<br /> <br /> This class is based on Prototype 1.5. The code is inspired of the powerful script.aculo.us library. You can even use all script.aculo.us effects to show and hide windows if you include effects.js file.<br /> <br /> It has been tested on Safari, Camino, Firefox and IE6.
ZigVersion 1.0 Beta 1!
eSvn - a GUI frontend to the Subversion revision system
Making the Jump to Subversion
Version Control with<br /> Subversion
SvnX is an open source GUI
[Rails] subversion help!
svn+ssh Setup Mini-tutorial
XMLHttpRequest, REST and the Rich User Experience

Comments