testdriven.com Wrangling quality out of chaos

Archive for the ‘Tools’ Category

Increase Your Personal Productivity with JetBrains ReSharper

02.14.2007 · Posted in Tools

If you are a .NET developer looking to produce higher-quality code faster, consider using JetBrains ReSharper!

ReSharper is an intelligent productivity and usability tool for .NET development which significantly enhances development experience and helps improve code quality.

As an add-in to Microsoft Visual Studio, ReSharper boosts the productivity of professional .NET developers in the following ways:

- Extends and enhances Visual Studio’s code completion and live templates (code snippets)
- Provides versatile coding assistance such as real-time error highlighting, instant quick-fixes, and handy context actions
- Puts the whole solution at your fingertips with readily-available navigation commands and smart search options
- Offers the industry-leading set of automated code refactorings for improving internal code structure
- Improves web development and cross-language development by extending many of its features to ASP.NET and VB.NET code
- Comes with a seamlessly integrated Unit Test Runner for running and debugging tests of csUnit and nUnit frameworks
- Supports NAnt and MSBuild build script editing
- Saves time by making all of its features available through keyboard shortcuts

What is more, now individual developers qualify for ReSharper Personal Licenses. This pricing option provides a cool $100 discount on the purchase of ReSharper 2.0 for Visual Studio .NET 2003 or ReSharper 2.5 for Visual Studio 2005.

To see your productivity soar to new heights, check out ReSharper’s complete feature list or download a 30-day fully functional trial of ReSharper. See the pricing and licensing terms.

McCabe Launches New Editions of Leading Software Quality Management Suite

02.01.2007 · Posted in Tools

Three New McCabe IQ Editions Target the Needs of Specific Groups in Development Lifecycle

WARWICK, RI – McCabe Software has announced the release of McCabe IQ Developers Edition, Test Team Edition, and Enterprise Edition. McCabe IQ’s code complexity analysis and visualization, coupled with its advanced test coverage technology and enterprise reporting, allows development and test teams to release the best possible software.

"Our new McCabe IQ Editions are targeted at key groups within the application development process and have been tailored to suit their specific needs," says Dale Brenneman, McCabe Software’s VP of Software Quality Solutions.

McCabe IQ Developers Edition objectively measures software application quality and visualizes the architecture, highlighting the most complex areas of the code base. This enables development organizations to make intelligent decisions about resource allocation and critical development paths. The Developers Edition is equipped with over 125 metrics, aids code review, analyzes change in ongoing development, and is invaluable in reengineering (refactoring) legacy applications. Based on consistent and positive demands, the Developers Edition also now includes module comparison, data dictionary, and change analysis functionality.McCabe IQ Test Team Edition provides comprehensive and stringent test coverage technologies including McCabe Cyclomatic path, MCDC (Boolean), branch, lines of code, and many more. This Edition does more than provide a simple lines of code or branch coverage number; it shows precisely what areas/test paths of the application have (and have not) been tested. The Test Team Edition also now provides a full data dictionary and incorporates functionality to locate redundant code (to decrease testing and maintenance efforts), track and analyze code containing a specified data set, and indicate whether changed modules have been tested.

McCabe Enterprise Edition delivers all the functionality of the Developers and Test Team Editions. In addition, it provides the robust enterprise reporting that is so important to our clients’ senior management. Secure web-enabled test data collection is also a new built-in feature of the Enterprise Edition.

About McCabe Software, Inc.

McCabe Software, an industry leading Application Lifecycle Management company, provides Software Quality Management and Configuration Management solutions worldwide. “McCabe IQ” is used to analyze quality and test coverage of mission, life, and business critical applications, utilizing a comprehensive set of advanced software metrics including the McCabe-authored Cyclomatic Complexity metric. Our configuration management solution, “McCabe CM”, allows organizations to manage software changes faster and more efficiently, ensuring quality throughout the Application Lifecycle. McCabe Software has offices in the United States and distribution worldwide, and can be found on the web at www.mccabe.com .

froglogic Releases Automated Java GUI Testing Tool Squish/Java

02.01.2007 · Posted in Java

Hamburg, Germany – 2007-01-31 froglogic GmbH today announced the first release of Squish/Java. Squish/Java is a new edition of the powerful, automated GUI testing framework Squish. This new edition features the automatic creation and execution of tests for Java Swing, AWT, SWT RCP/Eclipse applications.

Squish is the leading, cross-platform and cross-browser automated GUI testing tool for applications based on a variety of GUI technologies such as Trolltech’s Qt library, Web/HTML/Ajax, Tk, Four J’s Genero and XView.

The new Squish/Java edition is based on the recently released version 3.1 of Squish and takes advantage of its mature testing framework while adding support for the standard Java GUI technologies Swing, AWT, SWT and Eclipse Rich Client Platform. Java classes, functions and fields are dynamically exposed as script interfaces in Squish thus enabling the development of sophisticated automated tests."We are very excited about this new release which is already in use by first customers. With Squish/Java we cover another major GUI technology after already supporting technologies such as the Qt toolkit and HTML and Ajax Web applications. This will further strengthen our leading position in the cross-platform GUI testing market", said Reginald Stadlbauer, CEO and co-founder of froglogic.

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

Similar to preexisting Squish editions, tests for Java 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 Java application.

Squish/Java packages are available now. If you are interested in evaluating Squish/Java, or any other Squish edition, please visit http://www.froglogic.com/evaluate or contact squish@froglogic.com. For more information, visit http://squish.froglogic.com.

About froglogic

froglogic GmbH is a software company based in Hamburg, Germany. Their flagship product is Squish, the market-leading automated testing tool for GUI applications based on Qt, Tk or XView and for HTML/Ajax-based web applications running in different web browsers. froglogic also offers services in the areas QA/automated testing and Qt C++ programming and consulting. More about froglogic at http://www.froglogic.com.

froglogic Pre-Announces Automated Mac OS X GUI Testing Tool Squish/Mac

01.24.2007 · Posted in Java

Hamburg, Germany – 2007-01-24. Squish/Mac will become available as a new edition of the powerful, platform-independent testing framework Squish. This new edition will feature the automatic creation and execution of tests for native Mac OS X Carbon and Cocoa applications.

Squish is the market-leading cross-platform GUI testing tool for applications based on a variety of GUI technologies such as Swing/SWT/RCP/Eclipse, Trolltech’s Qt, Tk, Four J’s Genero and XView. Additionally, Squish supports automatically testing Web and Ajax applications running in different web browsers.

Squish is a cross-platform solution that runs natively on Windows, Linux/Unix, embedded Linux and Mac OS X. The new Squish/Mac edition takes advantage of Squish’s mature testing framework while adding test automation support for the native Mac OS X GUI technologies Carbon and Cocoa."While the popularity of Mac OS X is constantly growing, no tools for automated testing of native Mac OS X applications are available today. After the huge success of Squish with different GUI technologies, we are very excited to fill this gap by providing a solid and powerful test solution to companies targeting the Mac OS X market.", explained Rainer Schmid, froglogic’s Mac OS X Engineer.

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

Similar to preexisting Squish editions, tests for Mac 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 internal structure of a Mac application.

Previews of Squish/Mac will become available in the next weeks. If you are interested in exploring and providing feedback for Squish/Mac, please contact us at squish@froglogic.com. If you would like to evaluate any other Squish edition, please visit http://www.froglogic.com/evaluate or contact squish@froglogic.com. For more information, visit http://squish.froglogic.com.

About froglogic

froglogic GmbH is a software company based in Hamburg, Germany. Their flagship product is Squish, the market-leading automated testing tool for GUI applications based on Qt, Tk or XView and for HTML/Ajax-based web applications running in different web browsers. froglogic also offers services in the areas QA/automated testing and Qt C++ programming and consulting. More about froglogic at http://www.froglogic.com.

JUnitFactory: an experimental *characterization* test generator

01.16.2007 · Posted in Java

JUnitFactory is a free experimental project from AgitarLabs. You send it Java code and it sends back JUnit characterization tests for your code.

We have made our technology freely available to academic institutions and test researchers, but some of them don’t have the spare computing or IT resources to set-up a test server, so we thought it would be a fun experiment to set-up a dozen CPUs and have students and researchers use the test generator over the web. As the experiment progresses, we plan to make APIs available so that researchers and anyone interested in automated test generation can experiment with their own characterization test generation algorithms and strategies.Before anyone starts complaining about the evil of automated test generation, let me restate that JUnitFactory can only generate characterization tests; and let me clarify what is meant by characterization tests for those that may not be familiar with the term or concept.

In "Working With Legacy Code", Michael Feathers defines characterization tests as tests that characterize and record what the code actually does – not what it’s *supposed* to do. They exercise the code with a range of inputs, and record return values, object state, etc., for each set of inputs.

Characterization tests are useful for working with legacy code which is defined, again by Michael Feathers, as any code without tests.

CTs can come in handy as change detectors when there is a large body of code with little or no tests and provide a safety net when you need to make some changes to it. If the same set of inputs results in different behavior between the original and the revised version of the code, some assertions in the characterization tests will fail. Some of those failures may point to unexpected and/or unwanted changes in behavior that you might want to know about and address.

Colloquially, and in the simplest possible terms, characterization tests will tell you things like the following:

—–
In the original version of the code, ‘Util.foobar("abc", 123)’ returned ’42′. After you made the change, it returns ’43′.
—–

The test has no idea whether the right return value is ’42′ or ’43′, but it lets you know that it has changed and you, the developer, has to decide which one is right and what to do about it. Sorry, no free lunch.

By now it should be amply clear that automatically generated characterization tests are NOT a replacement for TDD or Unit tests lovingly crafted by developers. But, especially with some user input in the selection of test data and test assertions (which is possible with JUnitFactory), they can give developers a valuable jump-start in working with legacy code and complement their manual testing efforts.

Unfortunately, for the time being, we only have a client plug-in for Eclipse. If enough people find the JUnitFactory useful, we plan to add support for other IDEs. As a matter of fact, if you want to help with that let us know – but keep in mind that JUnitFactory is designed to be a free service so all clients will have to be freely available or, better, open-source.

If you don’t use Eclipse, there’s a "toy" web-based demo of the CT generation also – but it only works on one class with no dependencies.

Anyway, if you have any interest in JUnit generation, go to the website, request an invitation and give it a try.

Remember, it’s still experimental and mostly for fun so don’t expect too much or bang on it too hard.

http://www.junitfactory.com

Alberto Savoia
Agitar Software Laboratories

InCisif Software releases InCisif.net 1.2

01.03.2007 · Posted in Tools

(December 29, 2006) InCisif Software released InCisif.net 1.2.

InCisif.net is an automation tool designed to implement client-side functional testing of web applications under Internet Explorer 6.x or 7.x, using the C# or VB.NET language with Visual Studio 2003 or 2005.

In the release 1.2 the following new features have been added:

– An interactive DOM viewer available at record time offering support for Ajax applications
– NUnit support (source code available for integration with other test frameworks)
– Support for the Visual Studio Add-in TestDriven.net (source code available for integrating other Add-ins)

To learn more and download an evaluation copy, go to the InCisif web site.

MoreUnit 0.7 released

12.24.2006 · Posted in Java

A new version of the Eclipse plugin MoreUnit has been released with bug fixes and new features. Enjoy.

moreUnit is an Eclipse plugin to assist developers in writing more unit tests. It currently:

- Decorates classes which have a test case.
- Marks methods in the editor which are under test.
- Jumps to a test case in the editor via the menu or a shortcut
- Generates a test method stub for the method under cursor-position in the editor via the menu or a shortcut.

Pulse Continuous Integration Server 1.2 M3

12.05.2006 · Posted in Tools

This is the third milestone in the 1.2 series. New features include customizable build columns, manual release support, post stage actions, P4Web integration, LDAP group integration, executable projects, and reporting of "broken since" builds for test failures.

Pulse home page.

Article on jsTest JavaScript unit testing tool

11.28.2006 · Posted in Tools

A new article has been published on thinkPond.org.

"This article is about jsTest, a JavaScript unit testing tool. Although this tool could be used in many JavaScript testing scenarios, it is specifically designed for writing unit tests as part of the Test Driven Development (TDD) iteration cycle: write a test, make the test pass, refactor, repeat."

Read the full article here.

ClasspathSuite for JUnit 4 released

11.15.2006 · Posted in Java

The first release of ClasspathSuite is available.

This JUnit 4 extensions allows you to run a suite of testcases that live anywhere in your classpath. This is useful e.g. in multi project settings in Eclipse 3.2 since the integrated test runner does not support multi project testing. ClasspathSuite uses the @RunWith annotation to build up test suites.

See this blog entry for details about usage.

froglogic Squish/Web Testing Tool Supports Microsoft Internet Explorer 7

10.19.2006 · Posted in Tools

Hamburg, Germany – 2006-10-19 froglogic GmbH today announced support
for testing web applications running in the freshly released Microsoft
Internet Explorer 7.

Squish/Web is a professional functional GUI testing tool to create and run automated GUI tests on Web/HTML/Ajax applications.

Squish works on different platforms such as Windows, Linux/Unix, Mac OS X and embedded Linux and supports testing web applications in Microsoft Internet Explorer 6, Firefox, Mozilla, Safari and Konqueror.

Support for testing web applications running in the new Microsoft Internet Explorer 7 has now been added and is available in version 3.0.2 of Squish/Web."Following our cross-platform and cross-browser philosophy it is important for us to stay up to date with latest developments in the web browser market. We decided to react quickly and implemented support for the highly improved version 7 of Microsoft Internet Explorer within hours after it was released", said Reginald Stadlbauer, froglogic’s CTO.

Squish offers a versatile testing framework for web applications 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 IDE aiding the creation and debugging of tests and a set of command line tools facilitating fully automated test runs.

Tests created with Squish are cross-platform and browser independent and can be executed in any of the supported browsers without any changes.

If you are interested in evaluating or purchasing Squish/Web or any other edition of Squish, please contact squish@froglogic.com or visit www.froglogic.com/squish.

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.

Internet Explorer is a registered trademark of Microsoft Corporation.

froglogic Pre-Announces Squish Integration for Mercury Quality Center

10.17.2006 · Posted in Tools

Hamburg, Germany – 2006-10-17 froglogic GmbH today pre-announced the new Mercury Quality Center Squish Add-On. This add-on allows to create, run and manage automated Squish tests from within Mercury Quality Center.

Squish is a professional cross-platform functional GUI testing tool. It supports testing applications based on any of the following GUI technologies:

- Trolltech’s Qt class library
- HTML/Ajax/Web 2.0 in a variety of web browsers
- Tcl/Tk
- Four J’s Genero clients (GDC and GWC)
- XViewSquish works on different platforms such as Windows, Linux/Unix, Mac OS X and embedded Linux.

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 IDE aiding the creation and debugging of tests and a set of command line tools facilitating fully automated test runs.

With the new Squish Mercury Quality Center Add-On customers can easily integrate existing Squish tests into Quality Center and control the complete test automation and testing process from within Quality Center. Squish reports test result back to Quality Center allowing Squish users to take full advantage of Quality Center’s management, statistics and reporting features to control and analyze the quality assurance process.

"The development of this new add-on has been completely driven by customers’ demand and is already in use in a first pilot project. This integration makes Squish even more attractive to professional testers and will increase their productivity.", said Frerich Raabe, Test Management Expert at froglogic.

Pre-releases of the Squish Quality Center integration will be made available in two weeks, the final release is planned for end of November.

If you are interested in obtaining a pre-release of the Squish Quality Center Integration or would like to receive information about any other editions of Squish, please contact squish@froglogic.com or visit www.froglogic.com/squish.

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.

Mercury Quality Center is a trademark of Mercury Interactive Corporation.

New Web Testing Tool Using C# or VB.NET

10.09.2006 · Posted in Tools

(September 16, 2006) InCisif Software released InCisif.net 1.1 a new automation tool designed to implement client-side functional testing of web applications under Internet Explorer 6.x, using the C# or VB.NET language and Visual Studio Environment.

To learn more and download a evaluation copy, go to incisif.net.

LiFT – Literate Functional Testing

09.24.2006 · Posted in Java

We are pleased to announce that an initial version of the LiFT framework is now available as open source on java.net.

LiFT is a framework for Literate Functional Testing. LiFT allows writing automated tests in a style that makes them very readable, even for non-programmers. Using the LiFT API, we can write tests that read almost like natural language, allowing business requirements to be expressed very clearly. This aids communication amongst developers and customers, helping give all stakeholders confidence that the right things are being tested.

Robert Chatley and Tom White gave a presentation on Literate Functional Testing at the Google London Test Automation Conference, the slides and [url=http://video.google.com/videoplay?docid=1505469784301926538&q=label%3Altac]video[/url] are available online.

TestNG and JUnit 4 compared

09.02.2006 · Posted in Java

Still the most popular link on testdriven.com, Cédric Beust‘s versatile java unit-testing tool, TestNG, made the highlights on IBM DeveloperWorks last Tuesday, with Andrew Glover’s article, JUnit 4 vs. TestNG: Why TestNG is still the better framework for large-scale testing.

Abstract: "With its new, annotations-based framework, JUnit 4 has embraced some of the best features of TestNG, but does that mean it’s rendered TestNG obsolete? Andrew Glover considers what’s unique about each framework and reveals three high-level testing features you’ll still find only in TestNG."

Mocha – a new twist on mocking in Ruby

09.02.2006 · Posted in Tools

Mocha is a library for mocking and stubbing within tests using a syntax like that of JMock, and SchMock.

The main difference between this mocking library and others like FlexMock and RSpec is that it allows you to mock and stub methods on real (non-mock) classes and instances.

You can for example stub ActiveRecord instance methods like :create, :save, :destroy and even class methods like :find to avoid hitting the database in unit tests. There are more examples here.

JSMock 1.0 released

08.09.2006 · Posted in Tools

JSMock is a fully featured Mock Object library for JavaScript that provides the necessary tools to do effective interactive-based testing.

JSMock provides expectation recording and matching, and has the ability to return, throw, and stub on object method calls. The interface is simple and easy to use, which makes testing easy.

Visit JSMock.

JsTester 1.1 Released

08.01.2006 · Posted in Java

Dear TestDriven Community, I’m pleased to announce that JsTester version 1.1 has been released.

Download | Documentation

JsTester allows validation of javaScript code inside java. It provides a group of assert methods like JUnit’s Assert, it also supports the validations described here, and the ability to use your own validations (unary & binary predicates). The project provides two ways of creating your tests: by inheritance (JsTestCase), and by composition (JsTester). Use JsTestCase as you would normally use any extension of TestCase. Use JsTester with JUnit4 and annotations, or inside another TestCase hierarchy.

Changes:

* Added JsTestCase for quick test implementations. Suggested by Cagatay Civici.
* Added all project TestSuite
* Updated the howto

NDbUnit 1.2 Released

07.26.2006 · Posted in Tools

Quality Labs (www.qualitylabs.org) has released a new version of NDbUnit 1.2.

NDbUnit, a .NET framework for simplifying developer testing of code which relies on a database, addresses some enhancements and bug fixes.

Read more.

Pulse Continuous Integration Server 1.1 (Beta)

07.25.2006 · Posted in Tools

Zutubi is proud to announce the public beta release of the Pulse automated build server, version 1.1. This new release is a major milestone, including dozens of new features and improvements. The most notable new feature is a powerful distributed building model that allows you to build and test in parallel across multiple platforms. Other highlights include AJAX-enabled real time build logs (even for remote builds!), optional changelist isolation, LDAP integration, support for linking to external tools, dependent project triggering, incremental building, source code tagging, AJAX working copy browsing, built in Xcode support, an improved user interface and more!

Refer to the what’s new page for more details. You can download and try Pulse 1.1 today with a free 30-day evaluation license.

TestNG 5.0 released

07.20.2006 · Posted in Java

Cédric Beust has announced the availability of the latest version of his versatile Java testing tool, TestNG. Here is a short list of changes that have appeared in version 5.0:

* Configuration annotations are now called @BeforeTest, @BeforeSuite, etc…
* Reports are now created in their own directory (one per suite) and a main index file shows a list of all the suites that were just run. They have also received a series of improvements in appearance and content.
* It is now possible to specify the suite and test names directly in the @Test annotations, which allows you to do without a testng.xml.
* expectedExceptions has moved inside @Test.
* TestNG shows friendly stack traces.

Much more information in Cédric’s full announcement. Download TestNG here.

Cerberus 0.1.0 released

07.18.2006 · Posted in Tools

Cerberus (Continuous Integration tool for Ruby) has published its first release.

Cerberus is a simple command-line tool that periodically checks your project’s tests and sends email notification to developers if they fail.

Cerberus has support only for Subversion now, but in the near future it is planned to add support of other popular VCS.Cerberus has no GUI – it is a command-line tool and can easily be scheduled from Cron.

Cerberus works perfectly on *nix and Windows platforms.

Cerberus’ installation and usage is very simple. To install just type:

gem install cerberus (provided you already have Ruby installed)

To add your project:

cerberus add SVN_URL RECIPIENTS=somemail@company.com

To build the project with Cerberus:

cerberus build YOUR_PROJECT

Cerberus can be found here.

TeamCity – an integrated team environment from JetBrains

07.17.2006 · Posted in Tools

JetBrains announced the full feature set for its new product TeamCity that is a new integrated team environment, cross-platform and IDE-independent. The feature set and key benefits include:

• Continuous Integration Support
• Delayed Commit
• Effective Build Management
• Code Coverage Analysis
• Static Code Analysis
• Remote Tests Run
• Web-based Interface

The product is now in the Early Access Program stage giving the possibility to try all these features and influence the product development. Learn more about TeamCity or [url=http://www.jetbrains.net/confluence/display/TW/Team+Server+Home]join EAP.[/url]

TargetProcess:Suite v1.7, agile pm and bug tracking solution, released

07.11.2006 · Posted in Tools

Version 1.7 of TargetProcess:Suite, agile project management solution, has been released.

Major news:

- Free version with 1 user license available
- TargetProcess:Hosting, on-demand solution, available at $19.95 per user per month
- Version 1.7 has many important features that greatly improve project tracking, data importing and customizability.The product release includes:

- Import from CSV
- New Release/Iteration burn down charts with forecasting
- Release planning area
- Drop Downs in custom fields
- Context Help
- Advanced Search
- Quick Jump to bug by id. For example "bug:234"
- Batch Time Addition in ToDo

You may download latest version with 1 free license from
http://www.targetprocess.com/download.asp

Detailed description of new functionality
http://www.targetprocess.com/version17features.asp

Changelog
http://www.targetprocess.com/changelog.asp

The availability of TargetProcess:Hosting, on-demand web-based software solution, announced.

TargetProcess:Hosting may be subscribed on the monthly basis and available at $19.95 per user per month.

During the first moth of usage TargetProcess:Hosting is free.

Visit http://targetprocess.com/buy_hosting.aspx to subscribe.