testdriven.com Wrangling quality out of chaos

Archive for the ‘Tools’ Category

Code coverage in IntelliJ IDEA 6.0

07.05.2006 · Posted in Tools

In the forthcoming IntelliJ IDEA 6.0 release, a new tool will be available. It aims to measure code coverage for your unit tests or tests written as simple applications with the main() method. The engine that performs code coverage in IntelliJ IDEA is based on the EMMA open-source toolkit.

Read more on the IntelliJ IDEA blog.

TypeMock.NET version 3.5

07.03.2006 · Posted in Tools

The TypeMock.NET team is happy to announce that Version 3.5 of TypeMock.NET is now available.

It’s free, you can download it here: TypeMock.NET Downloads.

A few of the new features included in this release are:

* TypeMock.NET now supports the innovative Natural TypeMocks™
* Better Static Constructor Story
* Auto-Deploy for Build Servers

Happy Testing!

http://www.typemock.com/

froglogic Announces Automated Web Testing Tool Squish/Web

06.22.2006 · Posted in Tools

Hamburg, Germany – 2006-06-22 froglogic GmbH today announced the availability of Squish/Web. Squish/Web is a new edition of the powerful platform-independent testing framework Squish. This new edition features the creation and execution of tests on HTML-based Web and Web 2.0 applications in a variety of Web browsers.

Squish started out as a professional automated GUI testing tool for applications based on different GUI technologies such as Qt, Tk and XView. Squish quickly gained a large user base and became the leading testing tool in the platform-independent GUI testing market.

Last week’s Squish 3.0 release included a new edition that enables testing of HTML-based Web and Web 2.0 applications. Following froglogic’s platform-independent philosophy, Squish/Web can exercise tests in a range of different browsers such as Microsoft Internet Explorer, Mozilla/Firefox, Apple’s Safari and KDE’s Konqueror on different platforms and operating systems."Test engineers having to deal with Web applications can now take advantage of Squish’s powerful testing framework that allows to create robust and portable tests. Without modifications, test scripts created for one browser can be executed in other browsers even running on different platforms. This does not only allow to test the correctness of the Web application but also ensures its portability across different browsers and platforms.", explained Harri Porten, froglogic’s Unix Platform Chief and spare-time browser developer.

Squish offers a versatile testing framework with a choice of popular test scripting languages (Python, JavaScript and Tcl) extended by test-specific functions, open interfaces, add-ons, integrations into test management systems, a powerful productivity enhancing IDE aiding the creation and debugging of tests and a set of command line tools facilitating fully automated test runs.

Similar to pre-existing Squish editions, tests for Web applications can be automatically recorded or written manually. Using Squish Spy, verification and synchronization points can be inserted as easily as in every other edition by visually exploring the structure of a Web application.

Squish/Web is already in use at customers who have already been testing other ports of their application using the respective Squish edition for a while. Now they are able to utilize Squish to test the Web version of their application.

"Squish has proven to be a light and robust solution that can be deployed at a very reasonable cost. For this reason, last year, we chose Squish to test our XView- and Qt-based flagship product Kondor+.", said Thierry Duchamp, Head of Quality Assurance for Risk at Reuters Financial Software, and adds "we decided to port exactly the same approach and methodology to the rest of our product line: KGR, Web Access and K+TP (Web based). For the test tool part, the new Squish/Web now also offers the ability to test HTML/JS applications. We are already using it and we are today able to reuse scripts and test cases for the tests of the Web based applications. Squish/Web shows the same quality level and features as Squish/Qt and Squish/XView."

Squish/Web is now available. If you are interested in Squish/Web, or any other Squish edition, please contact squish@froglogic.com. For more information, visit floglogic or view a Flash demo of Squish/Web.

About froglogic

froglogic GmbH is a software company based in Hamburg, Germany. Their flagship product is Squish, a professional automated testing tool for GUI applications based on Qt, Tk or XView and for HTML-based web applications running in different web browsers. froglogic also offers Qt consultancy services and other Qt-based development tools such as the Tcl/Tk/Qt migration framework Tq. More about froglogic at http://www.froglogic.com.

CoView 2.0 released – automated JUnit testing & coverage measurement

06.19.2006 · Posted in Tools

CoView is an Eclipse plugin that focuses on four important unit testing concepts:

- identifying the minimal number of unit tests needed to exercise logical flow,
- creating them with the use of frameworks like JUnit,
- managing the coverage process and
- reporting the data.CoView creates unit tests that execute code logic and error conditions and allow developers to create easily and quickly as many “what-if” scenarios as desired. It also measures path and branch coverage at the project, package, class, method and test case level.

For a limited time, CoView Professional is available for $350 per copy.

CoView currently supports Eclipse 3.1 and Java 1.4.x and Java 1.5. JUnit 4.x and official Eclipse 3.2 support is expected in the 3rd quarter.

To download a 30-day trial or learn more about Codign Software, please visit the company’s website: http://www.codign.com.

Pulse Continuous Integration Server 1.0 Final

06.14.2006 · Posted in Tools

Zutubi is proud to announce the availability of the Pulse automated build (or continuous integration) server for sale from today.Pulse has been designed to deliver the adaptability of a home-grown solution without the engineering cost. Pulse works in existing environments, is easy to set up and gives each developer in your team their own user interface and notification preferences. Take our feature tour for more details.

Coinciding with this announcement is the release of Pulse 1.0.5. This is the first production release in the Pulse 1.0 series. The release incorporates fixes for issues reported during the beta testing period.

VSTS TestRun Report Viewer

05.24.2006 · Posted in Tools

The VSTS TestRun Report file format, aka .TRX is somewhat unusable, because three main points:

1) You can only view the results with VSTS
2) You can not view summarize stats about the test run
3) You can not print the report

All of this things are (partially) resolved by trx2html.exe tool.

If you are interested you can get information about it here: http://blogs.msdn.com/rido/archive/2006/05/23/trx2html.aspx

Viewtier Opens EAP For Parabuild 2.1, Offers Free Licenses For Found Bugs

05.14.2006 · Posted in Tools

Viewtier Systems, Inc., today announced the beginning of the Early Access Program (EAP) for its automated software build management server, Parabuild 2.1. A single-build configuration license is offered free of charge for each new bug found in the EAP builds. To join the EAP please visit this page.

Parabuild helps software organizations reduce high risks of failures of projects by delivering potentially unbreakable daily builds. The goal of the EAP is to test new features and to gather additional requirements. EAP downloads are available for registered participants. The registration is free.Parabuild 2.1 includes frequently requested features from Viewtier’s customers, including:

Build Management

* An ability to re-run an arbitrary build
* Build parameters to support build promotion

Web User Interface

* Build display groups
* Next/previous navigation in build results
* Change list diffs for two given builds
* Build status embeddable into web pages
* Description for a build request

Notification

* Publishing build results via RSS
* Recording and notifying a user that started build manually
* Windows system tray client

Integration With Version Control Systems

* Integration with Borland StarTeam
* Integration with Serena ChangeMan Version Manager (PVCS)
* Integration with SourceGear Vault
* Integration with MKS Source Integrity Enterprise
* Integration with generic VCS
* Support for "File System" VCS

Screen shots and more detailed descriptions of the new features are available on the What is new in Parabuild 2.1 page.

About Viewtier Systems
Founded in 2004 and based in Mountain View, CA, Viewtier Systems is a software build automation company dedicated to solving the problem of high risks of failures of software projects caused by broken code base.

Any trademarks or service marks contained herein are the property of their respective owners.

Anthill3 Build and ALM Server Preview

05.11.2006 · Posted in Tools

Anthill3 Build Management/ALM Server Preview is available from Urbancode, the leaders in build and release management.

Anthill3 is a radically altered approach to Build and Application Lifecycle Management. Anthill3 uses a concept called ‘Build Life’ to not only automate the build process, but to also automate promotions and deployments.

A Central-Server and Agent architecture is at the core of Anthill3. The server manages configuration and workflow. The agents run the jobs powering distributed and multi-platform builds as well as promotion and deployment to multiple environments (such as DEV, QA, UAT, PROD, etc.).

An embedded Workflow engine enables Anthill3 to model and automate existing processes and allows for multi-machine build verification tests, multi-stage promotions and deployments, as well as manual approval gates between promotion levels.

A build is no longer an isolated event. It is now recognized as the start of the process of tests, deployments and promotions that culminate in the successful release of software.

A fully-functional 30-day preview trial available now at http://www.urbancode.com .

Pulse Continuous Integration Server 1.0.1 (beta)

05.01.2006 · Posted in Tools

Zutubi is proud to announce release 1.0.1 of the pulse automated build (CI) server. This is the first public beta of pulse, and is available for download immediately from the zutubi website. Pulse has been designed to deliver the adaptability of a home grown solution without the engineering cost. Full-featured, 30-day evaluation licenses are available. By signing up for the beta program, you will be eligible for discounts on commercial licenses.

csUnit 2.1.1 BETA released

05.01.2006 · Posted in Tools

csUnit 2.1.1 BETA has been released and is available for download at http//www.csunit.org/download. csUnit is open-source.

This release has been compiled and tested with .NET 2.0. It is the first .NET 2.0 based version that contains an all new implementation of an addin for Visual Studio 2005 (VS2005).

Some areas in the code have been heavily refactored. It looks almost like a new implementation when compared to csUnit 2.0 and earlier. On an opportunistic basis generics were introduced.

The code has substantially improved, and we will continue towards that path. The major focus was on the core, the event handling, the command pattern implementation, and the GUI in general. The latter includes both the csUnitControl but also csUnitRunner, the GUI frontend. In particular we worked on improving the usability.

We also ran some profiling sessions. As a consequence csUnit 2.1.1 is up to 50% faster than earlier versions and at the same time consumes less memory.

Work that we expect to add before the production release of version 2.1 includes further refactoring in particular in the test execution engine, further usability improvements, improved categories support, and some further performance improvements.

As always all bugfixes and other improvements from earlier versions have been rolled over into this version.

Please support the project with your donation (see button at http://www.csunit.org/download). Thank you!

About csUnit
============
Inspired by JUnit, csUnit brings the power of unit testing to the .NET framework. csUnit is your key to unit testing and test-driven development using .NET languages such as C#, Visual Basic .NET, Visual J#, or Managed C++. csUnit was founded in 2001 and is available including source under a modified zlib/libpng license. For more information see http://www.csunit.org.

Kind regards,
Manfred.

Manfred Lange.
csUnit lead developer
Email: manfred at csunit dot org

http://www.csunit.org

REBOL-Unit 1.9 Released

04.26.2006 · Posted in Tools

REBOL-Unit can be downloaded from http://www.rebol.org/cgi-bin/cgiwrap/rebol/view-script.r?script=run.r.

Documentation is available at

http://www.rebol.org/cgi-bin/cgiwrap/rebol/documentation.r?script=run.r&sid=iy7cf.

Doubler

04.24.2006 · Posted in Tools

Doubler is a code generator that makes unit testing easier. It is especially useful when working with legacy code. It is a Reflector add-in, a tool already woven into your workflow. It will help you cleave dependencies apart, create test doubles, and write unit tests with little effort and less coding.

Features

Doubler is a Reflector add-in that helps with creating unit tests. It offers four code generators:

* Recording Generator – Use against an abstract type. It will create a Recording Test Stub. Recorders generated have the following features for each method on the subject type:
— Property named Called of type Boolean that records if the method was called.
— Properties for each parameter passed named in the following format Passed<ParameterTypeName><ParameterName> of the same type as the parameter.
— Property named ReturnValue of the same type as return type of the subject method. If subject method is void this property is not created. When the method is called the this value is returned.
— Property named ExceptionToThrow of type Exception. When the method is called if this property is not null the property value is thrown.
* Wrapper/Interface Generator – Use against a concrete type. It will create a mirror interface of the subject type and an implementation of the interface that passes all calls to a private instance of the subject type. This can be used to help control dependencies, allowing unit tests to insert a test double in place of the subject (run the Recording Generator on the mirror interface).
* Fake Generator – Use against an abstract type. It will create a Fake Object.
* Test Generator – Use against a concrete type. It will generate a unit test fixture and test methods for each public method on the test subject. The test methods will contain a start on the unit test.

Download Version 0.5.5

Mockrunner 0.3.7 released

04.16.2006 · Posted in Java

The main feature of this release is multiple result set support for the JDBC test framework.

Other changes include:

- improved JDBC batch processing
- support for custom JNDI implementations
- TryCatchFinally support for the tag test framework
- many minor improvements and bug fixes

You can download this version from http://mockrunner.sourceforge.net

TypeMock.NET version 3.1

04.07.2006 · Posted in Tools

The TypeMock.NET team is happy to announce the release of version 3.1.

TypeMock.NET enables developers to isolate and mock concrete classes, static methods and have full control of mocked instances. This gives you complete power to test your code without needing to refactor the code to make it testable.

This version includes:
* Support nAnt and MSBuild scripts.
* Support more code coverage tools. including (TestRunner, Clover.NET, Visual Studio 2005 Code Coverage)
* Automatic Initialization and much more.

Best of all the Community Edition is FREE

Download a FREE copy Here or use the TypeMock Forums for more infomation.

SwitchUnit plugin for Eclipse

03.29.2006 · Posted in Java

I’ve been working on a little plugin for Eclipse that lets you switch quickly between a class and its test case. If the class/test is not found, the appropriate class creation wizard is opened (which you can turn off in preferences).

Check it out here.

Channing

NTest 1.0 – Automated Unit Testing for .NET

03.12.2006 · Posted in Tools

Incenteus is glad to announce the first release of NTest.

NTest is an automated unit testing tool that tests class modules written on the Microsoft® .NET Framework that unlike other tools on the market, is capable of generating complete test cases for your .NET application, and allows you to interact with your code to create and run tests quickly.

NTest is also capable of generating NUnit compatible test cases as well as running them.

For more info, please visit Incenteus products.

QuickBuild 1.0.1 – Build automation and management server

02.15.2006 · Posted in Tools

PMEase announces the release of QuickBuild 1.0, the professional version of the open source build server, LuntBuild.

Besides being a decent build automation and continuous integration server, it puts extra emphasis on build management. Some feature highlights:

1. Powerful but easy to use interface. QuickBuild’s web interface has been greatly improved compared to Luntbuild. You are able to control behavior of QuickBuild through OGNL expression. Typical OGNL expressions are predefined, and you only need to choose proper expression from a context sensitive menu.

2. Builds are set up through configurations which are organized hierarchically. Child configurations are able to inherit settings from parent, and can selectively override some of them. This way, large number of build configurations can be managed very easily. For example, you define a department configuration holding common objects accross the department, and create project configurations under that department node. For each project, you can define different branches, and for each branch, you can continue to define nightly, continuous integration, or release configurations.

3. True build promotions. Not just moving builds between different categories. With this feature, builds flow across different parties in your team without extra management effort. For instance, you can promote a tested QA build into release configuration. Promoted build will automatically take next release number, and the promotion process will label the version control system with that release number also.

4. Powerful remote and multi-platform build ability. You are able to set up your build configuration so that it can utilize CPU cycle of several build machines to speed up the build process, or you can set up build on different platforms and collect them into master build machine to form one package. You need not to worry about copying files between different machines, by declaring proper artifacts dependency, QuickBuild will copy them for you.

5. Powerful build dependency handling. You are able to take a project depends on other projects even they are in different machines. As a result of dependency resolving, build orders of dependent projects are determined, and artifacts are copied bwteen different projects (even between different machines) to satisfy the dependency.

6. Seamlessly integration with Maven. Build versions managed in QuickBuild are able to be fed into Maven, and artifacts published to Maven repository are accessible from QuickBuild’s web interface.

7. Fully customizable build process gives the flexibility to define your own build steps, and determine their order and concurrence.

8. Rich set of REST API allows you operate on almost every type of object in QuickBuild programmatically. Through this API, it is possible to integrate QuickBuild with other applications in your organization.

Trial download at http://www.pmease.com/download.html

TypeMock.NET 3.0.1 Released

01.12.2006 · Posted in Tools

The TypeMock.NET team is happy to announce the release of version 3.0.

With .NET 2.0 Support it is now it is possible to isolate and mock concrete classes,
static methods and have full control of mocked instances.
This gives you complete power to test your code without needing to refactor the code to make it testable.

This version also includes a new Visual Tracer that enables a visual view of the expectations and calls.

Download a FREE copy Here or use the TypeMock Forums for more infomation

Parabuild 2.0, Released, Helps Reduce Risks Of Failures Of Software Projects

12.06.2005 · Posted in Tools

Mountain View, California – November 21, 2005 – Viewtier Systems, Inc., today announced the release of its software build management server Parabuild 2.0. Parabuild helps software organizations reduce high risks of failures of projects caused by broken code base by delivering uninterrupted daily builds[.

Software build is a process of transforming of project source code into a working application. Broken builds cause delays and overspending that may increase risks of project failure. Parabuild cures acute pain of broken code bases. With Parabuild, daily builds can succeed if the head of the code base is broken. Continuous integration builds provided by Parabuild ensure that new changes integrate into existing code base.Key Parabuild Features

- Continuous integration builds.
- Daily, nightly and QA builds.
- Integration with JUnit.
- High speed Web interface.
- Integration with ClearCase, Perforce, Visual SourceSafe,Surround SCM, CVS and Subversion.
- Build scripting: shell scripts, Perl, make, MSBuild, nmake, ANT, nANT, Maven, Jam and VB.
- Multiple platform support: Windows, Cygwin, Linux, Solaris, HP UX and generic Unix, including Mac OS X.
- Release notes from Bugzilla, Perforce jobs and Jira.
- Two-minutes installation; fifteen minutes to first build.

Why Parabuild

- Uninterrupted daily builds.
- Remote multiplatform builds.
- Running existing build scripts.
- Low to zero administration.
- Searchable logs and results archive.
- Group-based security.

A working evaluation version of Parabuild 2.0 is available for download at http://www.viewtier.com/downloads/index.htm.

rMock 2.0.0 release candidate 1 has been released

12.06.2005 · Posted in Tools

After five weekly beta-releases we feel that rMock-2.0.0 is mature enough for a first release candidate.

When You download and start using rMock You will find several features that you recognize both from EasyMock and jMock. You record expectations like with easyMock, but modifications look more like JMock.

rMock differs from both JMock and EasyMock primarily by its stricter workflow. All mocks change state at once, always. All mocks are verified automatically, at the same time, without exceptions.While testing You need both interaction-based and state-based tests. rMock provides consistent tools for both, Your custom constraints can be used state-based with the assertThat method or interaction-based by modifying your expectations.

rMock always provides all the information available on failure, both state-based and interaction-based. Are you currently verifying or recording? Are there any unmatched expectations? Which expectations can match?

That is not all; rMock also provides an innovative feature called dynamic suites. Dynamic suites help you manage your tests consistently both in build time and development time, making sure that no tests are left out of the suite unintentionally. Again, the same familiar constraint model is used, this time to select tests for your suite.

Here are a few of the more interesting features of rMock:

* rMock is tested with rMock in java 1.3 and java 1.5

* Strict flow of your tests, in the name of clarity
– rMock has a strict record, modify and verify flow.
– All mocks automatically verify themselves in the post verification phase.

* Full support for mocking of classes
– Actions can be forwarded to the underlying implementation if desired.

* Interception of invocations to collaborating objects
– Expect certain calls: Has close() been called on your ByteArrayOutputStream?
– Forbid certain calls: The class under test is not supposed to call close()
– Fake exceptions and much more

* Consistent constraint model in both state-based and interaction-based testing.
– The assertThat(<actual>, <expression>) can be used in place of the traditional assertXxxx(<expected>, <actual>) methods.
– If an assertThat fails rMock tells you if you are still setting up or verifying.
– If an assertThat fails rMock reports which expectations are not yet fulfilled.

* Define structure with sections
– beginSection(<section>) and endSection() groups your expectations so that your intentions with the test become clearer.
– Enforce order with an ordered section
– Unordered and ordered sections can be nested to any level giving you the tools to express yourself.

* Convenient mock declaration
– if your method returns an interface, a mock is automatically created for you when it is invoked in the recording state.
– Classes that have a no argument constructor can be mocked the same way as interfaces.
– If your class needs constructor arguments, the constructor can be selected by explicitly specifying its parameter types, or you can let rMock figure out which constructor to use based on the parameters you pass.

rMock is the first step in our concept of Test Driven Documentation. We beleive that most of the relevant documenation in a project could, and should be generated from tests in order to keep it consistent, up to date and sufficiently detailed.

Being able to generate documentation from tests would further increase their value, leaving more time for refactoring and gaining even more benefit from writing clear, understandable code.

In our sister project rDoc we have already generated first sequence diagrams from tests. And following the "eat your own dog food" fashion, in which rMock has been developed, we are working hard to be able to generate all rMock documentation and examples from our tests.

Sounds interesting? Check out rMock for a start and stay tuned for the first release of rDoc.

Joakim Ohlrogge on behalf of The rMock team

FunkLoad 1.3.0 and 1.3.1 are out

11.12.2005 · Posted in Tools

FunkLoad 1.3.0 and 1.3.1 (which fixed a bug in the previous release) are out.

FunkLoad 1.3.0 introduces a new http-proxy based recorder for user sessions. It also fixes a couple of outstanding bugs.

Grab FunkLoad 1.3.1 on funkload.nuxeo.org

About FunkLoad:

FunkLoad is a open source functional and load web tester, written in Python, whose main use cases are functional and regression testing of web projects, performance testing by loading the web application and monitoring your servers, load testing to expose bugs that do not surface in cursory testing, and stress testing to overwhelm the web application resources and test the application recoverability, and writing web agents by scripting any web repetitive task, like checking if a site is alive.

rMock2.0.0 – a Java virtual mock framework, alpha 2 release

10.26.2005 · Posted in Java

We have just released the second alpha of a new Java virtual mocking framework called rMock, available here.

It is based upon the ideas of jMock and EasyMock, and combines what we feel is the best of the two frameworks. There are some differences in how the expectations are managed, and the long-term goals of the project are more radical.[font=Verdana]
Current features:
* Mocking of interfaces and objects
* Stubbing of objects with expectations as restrictions
* Setup expectations on the actual method of the mocked object to enable IDE supported refactoring, code completion and code creation.
* Expectation modification regarding
– arguments
– return value
– exception throwing
– call multiplicity
* A describable Expression/Constraint model supporting advanced asserts and error messages
* DynamicSuites that are flexibly configurable to include or exclude test classes depending on their runtime properties (no more include="**/Test*")
* Nestable ordered and unordered sections for grouping and ordering expectations with clear error messages

On the short-term feature list we have:
* Thread related testing tools
* Internal message bus for publisher-subsciber notifications of testing events
* Plugin-model to hook on to the message bus

On the longer term feature list we have:
* Using the test cases to
– Test-drive and generate correct and up-to-date code and documentation
– Test-drive and generate correct and up-to-date Swing/SWT/Web GUIs and their usage documentation
– Test-drive hardware configurations
– Test-drive deployment
– Generate correct and up-to-date hardware configuration and deployment documentation
[/font]

The background is that almost all relevant project information is reasonable to provide, or already available, in the test cases.

By providing means in the testing framework to utilize this information we believe that the project documentation can be generated from the test cases. This holds for everything from documenting the smallest piece of software up to acceptance testing a GUI or deploying to a global server farm.

Please, try it out and get back to us with any kind of feedback!

Best regards,
Ola Ellnestam on behalf of The rMock team

FunkLoad 1.2.0 is out

10.20.2005 · Posted in Tools

FunkLoad 1.2.0 is out.

About FunkLoad:

FunkLoad is a open source functional and load web tester, written in Python, whose main use cases are functional and regression testing of web projects, performance testing by loading the web application and monitoring your servers, load testing to expose bugs that do not surface in cursory testing, and stress testing to overwhelm the web application resources and test the application recoverability, and writing web agents by scripting any web repetitive task, like checking if a site is alive.Changes since 1.1.0:

* Credential and Monitor services have been refactored they are now true unix daemon service, controllers are now in pure python (no more bash scripts).

* Switching from distutils to setuptools using EasyInstall_, installing FunkLoad is now just a question of “sudo easy_install funkload“.

* Moving demo examples into the egg, just type “fl-install-demo“ to extract the demo folder

* Several bugs have been fixed.

More info here.

Grab it:

http://funkload.nuxeo.org/funkload-1.2.0.tar.gz
or

http://cheeseshop.python.org/pypi/funkload

Announcing TestNG 4.0

10.11.2005 · Posted in Java

The TestNG team is happy to announce the immediate availability of TestNG 4.0, with a lot of improvements and new features.

The announcement, along with a few examples and summary of the new features, can be found here.


Cédric

http://testng.org