Posts Tagged “tools”

Requirements:

  1. Secure a Subversion 1.4.6 installation running on a Windows 2003 server
  2. Authentication must be against existing Active Directory accounts
  3. The Active Directory server does not allow anonymous binding
  4. Users in group foo should be able to get to the source code
  5. Users not in group foo should get no access at all
  6. Nobody should be able to see anyone else’s password.

Solution:

I finally got it working by using the suggested method of using Apache HTTPD server as a front-end to Subversion, and rather than applying security to Subversion, securing Apache to access Active Directory as an LDAP server.

Steps:
Read the rest of this entry »

Comments 1 Comment »

Andy Glover has written a post on using Gant with Hudson at his blog, The Disco Blog.

In case you didn’t know, Gant is a tool that uses Groovy scripts to invoke Ant tasks, so you write your builds as a Groovy script instead of an XML file, but you still get to use Ant’s power.  I may just start playing with this…

Comments No Comments »

One of my favorite books on UI Design is Don’t Make Me Think by Steve Krug. While this great book is focused on Web UI design, the central theme is universal: As much as possible, software should be so self-obvious how to use it that no manual is necessary.

As I see it, at least one of three things is possible:

  1. The creators of AnkhSVN should read this book
  2. AnkhSVN cannot create branches
  3. I’m an idiot.

Read the rest of this entry »

Comments 3 Comments »

In an earlier post I wrote about my experiences trying to write a plugin for Hudson. In that article, I wrote about how I basically gave up because I was having too hard a time wrestling with Maven for the small amount of code I was writing.

Well, time passes, and I decided to try again, but this time I decided to look into what it would take to fix an issue I’ve had with Hudson. (For the curious: at the time of this writing, Hudson cannot verify that your LDAP settings are correct if your server does not allow anonymous binding - issue 1589).

Read the rest of this entry »

Comments 1 Comment »

In an earlier post I wrote about how you can use JMeter to do automated functional and regression testing for web services. In this post I will talk about how you can parameterize your tests from external files to quickly get more thorough tests.

Parameterizing tests means that you run the test with different data each time, the data being passed in as parameters to your test. Obviously it would be preferable to run the same test 50 times with different values than to explicity put 50 different tests in the script that are identical except for the value used (duh.)

JMeter has a facility for doing just that. In my opinion, it’s a bit crude, but it works, and that’s what really counts.

Sample test script at outsetLet’s start with a JMeter test that calls a web service. (You can download my sample). The test calls a web service that gives you the words for an integer (e.g., “fifteen” for 15), and calls the service three times with the same value (15) hard-coded in it, and looks for a 200 response code from the service, and the word “fifteen” in the response SOAP envelope. Read the rest of this entry »

Comments 4 Comments »

Andy Glover at Stelligent has posted a useful article on his company’s blog about using Subversion at the command line. Most people never really learn to use the Subversion commands because the graphical tools are usually so good that 95% or more of what we need to do can be done from within the IDE with a click or two. Andy goes into some detail about what goes on under the covers and how you can harness some of that power in the raw.  Click here to read it.

Comments No Comments »

I needed an application, available to my entire development team, to provide RSS feeds for commit activity in our Subversion repository. I found a couple of items that looked reasonable, but they required scripting languages I could not use in my environment - I needed a Java-based solution.

So I decided to write it.

To access Subversion, I used SVNKit, an all-java library for SVN access. To create the RSS feed file (which is just an XML file) I used JDOM, my favorite XML handling library.

To deploy it, just deploy the WAR File to your Servlet container. SvnRss web archive (WAR file)

To use it, hit the app, passing the SVN url as a query parameter (if your aggregator gives you trouble, try URL encoding it). If you need to authenticate to access the repository, specify uid=yourusername and pwd=password as query parameters as well. By default, the feed includes the last 100 revisions, but you can override this with the numRevisions=nn query parameter.

Example invocations:

http://yourserver/SvnRss/SvnRssServlet?svnUrl=svn://yourrepository:1230/java/trunk

http://yourserver/SvnRss/SvnRssServlet?svnUrl=svn://yourrepository:1230/java/trunk&uid=kescobar&pwd=whatsamanmonth

http://yourserver/SvnRss/SvnRssServlet?svnUrl=svn://yourrepository:1230/java/trunk&numRevisions=25

The source code (in an Eclipse project) is also available. SvnRss source code (Zip file)

Comments 6 Comments »

It’s fairly common to have your continuous integration tool running on the same machine that has your source code repository. It’s also fairly common to have your development server running on that same machine as well. But what if you don’t?

At my workplace we use Hudson for continuous integration (and anyone who’s read my blog knows I’m a big fan) and Subversion (which is also awesome) for source code management. These both run on the same machine. We also use JBoss as our web/app server, but on different machines, including the web server set up for development testing. We wanted to do automatic deployment to our development JBoss upon successful completion of a build.

Read the rest of this entry »

Comments No Comments »

I’ve started introducing Apache JMeter at my workplace as a tool for automatic functional and load testing of Web Services. This is the first of what I plan to be the first of a multi-part series on setting up JMeter, developing tests for it, and incorporating its output as part of an overall strategy for testing our code as it moves through the lifecycle.

A bit about JMeter

At the JMeter site, they define JMeter as “…a 100% pure Java desktop application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to other test functions.” One of the other types of applications it can test is a Web Service - which of course is not terribly different from testing a regular web application.
Read the rest of this entry »

Comments 1 Comment »

Andy Glover’s company Stelligent has a great article about Selenium on their corporate blog - definitely worth a read.

Comments No Comments »