JMeter Data Sets

The Maisqual Ant data set is published by Castalia Solutions under an open source licence (CC-BY-SA) as a contribution to the open development data movement. It features a number of metrics extracted from code, configuration management and communication channels, plus a bunch of findings from popular rule-checking tools.

About the JMeter project

The Apache JMeter desktop application is an open source, 100% pure Java application designed to load test functional behavior and measure performance of Java client/server applications. It is widely used both in the industry and in open-source projects and is an essential part of the classical tool suite for Java development [Smart2008]. Development of JMeter was initially started by Stefano Mazzocchi of the Apache Software Foundation, primarily to test the performance of Apache JServ (a project that has since been replaced by the Apache Tomcat project). JMeter steadily grew to enhance the GUI and to add functional-testing capabilities, and became a subproject of Apache Jakarta in 2001, with dedicated mailing lists and development resources. JMeter became eventually a top level Apache project in November 2011, with its own Project Management Commitee and a dedicated website.

Number of commits on Apache JMeter per week, month, 3 months

JMeter weekly

The weekly evolution data set starts on the 2004-09-13 and ends on the 2012-07-30, which constitutes 411 versions across 9 years. You can check the detailed definition of metrics on the metrics page.

Downloads:

JMeter releases

The Maisqual Ant data set features analysis of the 22 official releases of the Apache Ant project published at the time of writing. Metrics proposed are the same as for the weekly data set, excepted for some time-based metrics which make no sense in an irregularly time-paced list (e.g. number of mails exchanged during last month).

Downloads:
Percentage of  acquired practices along years for Apache Ant

Included releases, along with their date of publication, are provided in the table below:

VersionDateVersionDate
1.8.12003-02-142.3.22008-06-10
1.9.12003-08-072.3.32009-05-24
2.0.02004-04-042.3.42009-06-21
2.0.12004-05-202.42010-07-14
2.0.22004-11-072.52011-08-17
2.0.32005-03-222.5.12011-10-03
2.1.02005-08-192.62012-02-01
2.1.12005-10-022.72012-05-27
2.22006-06-132.82012-10-06
2.32007-07-102.92013-01-28
2.3.12007-11-282.102013-10-21

Using the data sets

You can import them easily into LibreOffice by simply double-clicking on the file and selecting '!' (exclamation mark) as the separator. Don't use anything else as separator, since fields may contain other characters, e.g. commas. The following image shows a plot made with LibreOffice:

In the following R code example, we look at the density of some common metrics across files of JMeter 2012-07-30.

> project_data <- read.csv("metrics_jmeter_evo_file_v3.1.csv", sep="!")
> project_data_20120730 <- 
      project_data[project_data[,c("Version")] == "2012-07-23",]

> jpeg(file="jmeter_20120730_density_commits.jpg", 
      width=1200, height=1200, quality=100, 
      pointsize=12, res=100)
> plot(
      density(
          project_data_20120730[, c("SCM_COMMITS_TOTAL")]
      ), 
      main="Density of commits on files for JMeter 2012-07-30")
> dev.off()