Archive for the “Web tools” Category
This past week I burned up dozens of hours trying to make JBoss AOP work in my .WAR file. Then I realized that I didn’t have to.
I have this application that is a WAR file full of web services. What I wanted to do was create an aspect that I could weave in to gather usage statistics on every web service called — the user, the amount of time spent, whether it was successful or not, that sort of thing — and write it to a table for analysis and reporting. Since we use JBoss as our application and web server (and a paid support contract), I decided to try JBoss AOP which is bundled with the Enterprise Application Platform.
So, I wrote my aspect, and started trying to hook it in. Man, what an ordeal. Read the rest of this entry »
2 Comments »
Will Gorman has a post here about adopting Hudson at his place of work…
No Comments »
As a contrast to my previous post regarding securing Subversion, I thought I would go through how to secure a Hudson installation using Active Directory for authentication and authorization.
Steps:
Read the rest of this entry »
2 Comments »
Requirements:
- Secure a Subversion 1.4.6 installation running on a Windows 2003 server
- Authentication must be against existing Active Directory accounts
- The Active Directory server does not allow anonymous binding
- Users in group foo should be able to get to the source code
- Users not in group foo should get no access at all
- 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 »
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.
Let’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 »
4 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)
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 »
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 »
1 Comment »
Andy Glover’s company Stelligent has a great article about Selenium on their corporate blog - definitely worth a read.
No Comments »
Ever since GotDotNet shut down, it’s become very difficult to find a copy of the .NET Web Service Studio 2.0.
So, as a public service, I am providing it for download free of charge here.
If you’re not familiar with it, here is a blurb from the readme and a screenshot:
.NET Webservice Studio is a tool to invoke webmethods interactively. The user can provide a WSDL endpoint. On clicking button Get the tool fetches the WSDL, generates .NET proxy from the WSDL and displays the list of methods available. The user can choose any method and provide the required input parameters. On clicking Invoke the SOAP request is sent to the server and the response is parsed to display the return value.
This tool is meant for webservice implementers to test their webservices without having to write the client code. This could also be used to access other webservices whose WSDL endpoint is known.

5 Comments »
|