My question is why would I want to use rake, make, or ant in any of my automated tests. I specifically use Ruby with Selenium-Webdriver and I have thus far used test-unit to wrap my test cases to make the results easier to read and to make suites of tests easier to run. I want to grow my test environment but I am having a hard time understanding why I would want to use any of these tools. Any advise is appreciated. Thanks
rake, make, and ant are tools for building and running software. Each tool came from a different background: rake from the needs of Ruby developers; make for Unix development, and ant for Java development. These tools are very popular because they provide shorthand ways to describe common activities like compiling, linking, building libraries, and running tests.
If a development organization already relies on rake/make/ant, then integrating new tasks into the development process is easier if they, too, work with rake/make/ant. If your tasks do not work with those tools, you may create additional work for someone. For example, if people are used to having ant or make take care of all the environmental setup associated with running a test suite (e.g. installing software in the right place, configuring directories, setting environment variables), and your test suite requires doing that by some other means, you have created a reason for people to not use your test suite.
That said, rake/make/ant are batch processes: you type a command on your computer or on a build machine and then wait for it to finish. In my experience, build machines are often headless, and it is problematic running automated UI tests on headless machines.
Finally, I assume you ask the question because someone suggested to you that you should use rake/make/ant. If that is true, and especially if they work with you, I suggest asking them about it and listening carefully while keeping an open mind. It may be that their needs are different from yours. Even if their needs do not make sense to you, it may be easier to give them what they want than to convince them that your way is just as good or better.