We're reworking our process with subversion at the moment, and one of the things we're doing is making branches for each release target in our demo environment so that you can test a release that has been delayed independent of code that will be released separately. I am also experimenting with Jenkins in order to automatically run and report out on our unit tests in our demo environment. Is there some way in subversion to say "This branch is the release we're testing at the moment" such that Jenkins will check out that branch to test it? If not, how should I be approaching this issue?
This is a CI issue, not a SCM one. In Jenkins I assume you have a set of jobs that are looking at a particular SVN URL (eg trunk). You can edit these to point to a different url such as the current tag, or you can create a new set that mirror the trunk jobs but have a different repo url. Jenkins lets you group these in views to keep the display neat. You will also want to change the working copy of these jobs so it can checkout both sets simultaneously.
I use the 'job copy' feature in Jenkins to create a set of jobs from templates. You can set a variable in the template that is expanded at copy time to replace the svn URL and other parameters to keep the jobs separate.
There doesn't seem to be. But Bamboo, which we're upgrading to from Jenkins, will automatically build and deploy a branch (any branch it finds) when it has activity. Set it up to do a clean deploy and you automatically have the tests run on the one that has activity, which by definition is the one we're testing currently.