Testing and Debugging Main
Articles:
- Towards Bug-Free Code by Ashwin Jayaprakash - [Clicks: 43]
Ashwin Jayaprakash shows how generics can be used in support of loose-coupling, which makes your code more testable.
[Includes sample code]
http://www.onjava.com/pub/a/onjava/2004/12/22/towardsbugfree.html - Dec, 2004 - Learn the essentials of debugging by Terence Parr - [Clicks: 7]
Debugging software is challenging. Without a process to follow, resolving problems can seem impossible. Most inexperienced programmers find themselves in precisely that situation when confronted with a bug. In this article, walk through a sample problem-solving session to learn the art of debugging and highlight six essential elements of the debugging process.
http://www-106.ibm.com/developerworks/web/library/wa-debug.html - Dec, 2004 - Getting started with test-driven development by Thomas Hammell, Russell Gold, Tom Snyder - [Clicks: 14]
In this article, an excerpt from Test-Driven Development: A J2EE Example (Apress, 2004), author Thomas Hammell helps you select the right tools for getting started with test-driven development (TDD).
http://www.javaworld.com/javaworld/jw-12-2004/jw-1206-tdd.html - Dec, 2004 - Why Coding Standards? by Nigel Cheshire - [Clicks: 14]
Organizations adopt coding standards to ensure the delivery of reliable applications. See how standards can help reduce time for reviews and correct violations automatically.
http://www.ftponline.com/javapro/2005_01/magazine/features/ncheshire/ - Dec, 2004 - Unit Test More Efficiently with Mock Object Alternatives by Javid Jamae - [Clicks: 34]
The mock-object testing pattern has commonly been used to test an individual unit of code without testing its dependencies. While this pattern works well for interaction-based testing, it can be overkill for state-based testing. Learn how to streamline your unit-testing using stubs and the pseudo-objects testing pattern.
http://www.devx.com/Java/Article/22599 - Dec, 2004 - Agile User Interface Development by Paul Hamill - [Clicks: 6]
Paul Hamill, author of Unit Test Frameworks, discusses separating GUI elements into smart objects and thin view components and doing TDD of the smart objects.
http://www.onjava.com/pub/a/onjava/2004/11/17/agileuser_1.html - Nov, 2004 - Got Project Automation? by Mike Clark - [Clicks: 144]
Editor's Note: In his new book, Pragmatic Project Automation, Mike Clark gives you soup-to-nuts recipes for automating your software project: creating one-step builds with Ant, scheduling continuous builds with CruiseControl, generating software releases at the push of a button, installing and deploying applications with ease, and monitoring builds and running programs via email, RSS, your cell phone, and, yes, even lava lamps. The recipes include working examples that make it easy for beginners to follow along, while more advanced topics teach the old hands something new. In this article, he presents an overview of the benefits that automating your project can bring.
http://www.onjava.com/pub/a/onjava/2004/11/10/automation.html - Nov, 2004 - JDemo: Interactive Testing Refactored by Markus Gebhard - [Clicks: 17]
This article will introduce the JDemo framework and its techniques for writing code for interactive testing. It will also show the benefits that can be gained from writing demo code.
http://www.onjava.com/pub/a/onjava/2004/09/08/jdemo.html - Sep, 2004 - Bug Tracking Made Simple by Yaron Sinai - [Clicks: 20]
Are software bugs costing you money? Understand the need for bug-tracking software, what a bug tracking tool can do, and review the process here.
http://www.developer.com/java/other/article.php/3389021 - Aug, 2004 - Java theory and practice: Kill bugs dead by Brian Goetz - [Clicks: 12]
Most advice on programming style is aimed at creating high-quality, maintainable code, which makes sense because the easiest time to fix a bug is before the bug is created (an ounce of prevention . . .). Unfortunately, prevention is not always enough, and while some fine tools exist to help you create good code, fewer tools are available to help you analyze, maintain, or improve the quality of existing code. This month, columnist Brian Goetz builds on Chris Grandstaff's earlier Introduction to FindBugs and shows you how this static analysis tool can help you analyze your code for compliance with design principles that have been discussed in past issues of this column.
http://www-106.ibm.com/developerworks/library/j-jtp06294.html - Jun, 2004 - Create a Quality Testing Program by Peter Varhol - [Clicks: 20]
Testing is a crucial component of the software development lifecycle. Combine testing tools with methodologies such as XP and TDD to boost quality assurance.
http://www.fawcette.com/special/j2ee/varhol/ - Jun, 2004 - Automated Unit Testing Frameworks by Yasser EL-Manzalawy - [Clicks: 22]
Beside the Java language, a world of Java frameworks exists. These frameworks can afford substantial improvements in programmer productivity and enhance the quality, performance, reliability, and interoperability of different Java applications. Fortunately, many of these popular and widely used frameworks are open source projects so anyone can benefit from them if he can invest some time in learning when and how to use such frameworks. This article, the third one in the frameworks series, encourages Java programmers to employ unit tests to get robust code quickly. It also introduces JUnit, an open source Java framework for unit testing any Java code.
http://www.developer.com/java/ent/article.php/3372151 - Jun, 2004 - Container Driven Testing Part II: Testing Entity Beans by N. Alex Rupp - [Clicks: 2]
Container driven testing lets you write more isolated, fine-grained and robust unit tests. Using code samples, N. Alex Rupp covers techniques and strategies for testing your Entity Beans. Entity Beans come with their own special considerations and issues, because in addition to the bean classes and the test cases, you must also concern yourself with generating a database.
[Includes source code]
http://www.theserverside.com/articles/article.tss?l=ContainerDrivenTestingSeries&page=part2 - Jun, 2004 - Container Driven Testing: Advanced EJB Testing with OpenEJB - Part 1: Testing Inside the Container by N. Alex Rupp - [Clicks: 10]
In this article, the first in a 3 part series on Container Driven Testing, N. Alex Rupp shows you how to test your beans directly inside the EJB Container. Container driven testing lets you write more isolated, fine-grained and robust unit tests. Using code samples, he discusses how to use OpenEJB's container driven testing features to simplify and 'supercharge' your EJB testing.
http://www.theserverside.com/articles/article.tss?l=ContainerDrivenTestingSeries - Jun, 2004 - FindBugs, Part 1: Improve the quality of your code by Chris Grindstaff - [Clicks: 6]
Static analysis tools promise to find existing bugs in your code without requiring much effort on the part of the developer. Of course, if you've been programming for long, you know those promises don't always pan out. Even so, good static analysis tools are a valuable addition to your toolbox. In this first of a two-part series, Senior Software Engineer Chris Grindstaff looks at how FindBugs can help improve the quality of your code and eliminate bugs lying in wait.
http://www-106.ibm.com/developerworks/java/library/j-findbug1/ - May, 2004 - FindBugs, Part 2: Writing custom detectors by Chris Grindstaff - [Clicks: 8]
FindBugs is a static analysis tool that can be extended and customized to meet your team's unique requirements. In the second article of this series, Senior Software Engineer Chris Grindstaff shows you how to create application-specific bug detectors.
http://www-106.ibm.com/developerworks/library/j-findbug2/ - May, 2004 - Best practices for test-driven development by Michael Grove, Brooks Bollich - [Clicks: 21]
Test-driven development is a valuable strategy to employ; however, it can be tricky for beginners. In this article, Michael Grove and Brooks Bollich present some best practices that will ease test-driven development.
http://www.javaworld.com/javaworld/jw-05-2004/jw-0510-tdd.html - May, 2004 - Monitoring and response for distributed systems by Frank San Miguel - [Clicks: 13]
Building complex distributed systems is easier than ever, but many development and operations teams are not prepared for the volume of data that results from run-time failures. This paper describes a design and operations philosophy for monitoring and responding, which helps to manage these run-time failures. Real-world examples are used to illustrate the problems and solutions.
http://www-106.ibm.com/developerworks/web/library/wa-monresp/ - Apr, 2004 - Rules for Effective Source Code Control by Mike Gunderloy - [Clicks: 1]
As a developer, you should already be using a source code control system. But are you using it as well as you could be? These four rules will help you get the most out of source code control.
http://www.developer.com/java/other/article.php/3330801 - Mar, 2004 - JVM Monitoring and Management Specification by Benoy Jose - [Clicks: 12]
Application monitoring and profiling are a crucial part of any software system. Even if careful planning is done during design, architecture applications need to be monitored and profiled during QA testing and production to make sure that the performance of the application is optimal. There are a variety of third party products like JProbe from Quest software, Optimizeit from Borland and JPofiler from EJ Technologies which help in analyzing threads, monitor memory leaks and do other performance problems. IDEs like web sphere studios have built-in profiling tools which allow profiling and performance tuning during development. Most of tools in the market use the profiling API supplied with Java.
http://javaboutique.internet.com/articles/jvm_monitor/ - Mar, 2004 - One Assertion Per Test by Dave Astels - [Clicks: 5]
For some time I've been thinking about how TDD tests can be as simple, as expressive, and as elegant as possible. This article explores a bit about what it's like to make tests as simple and decomposed as possible: aiming for a single assertion in each test.
http://www.artima.com/weblogs/viewpost.jsp?thread=35578 - Feb, 2004 - Designing Performance Testing Metrics into Highly Distributed J2EE Applications by Frank Teti - [Clicks: 8]
Frank Teti describes a reusable mechanism for capturing application-bound, performance statistics for highly distributed J2EE applications. He examines the design and edits required to collect basic instrumentation/timing estimates for a sample Internet Order Entry Application distributed across a 5-tier architecture.
http://www.theserverside.com/articles/article.jsp?l=PerfTestingMetrics - Feb, 2004 - Approaches to Mocking by Simon Stewart - [Clicks: 9]
Everyone knows what a mock is, just from the name, but as with many seemingly simple ideas, there is more to them than first meets the eye. This article explores the two types of mocks that exist and covers some of the problems inherent in their use. Finally, it considers the reason why a developer might chose to use mocks.
http://www.onjava.com/pub/a/onjava/2004/02/11/mocks.html - Feb, 2004 - Managing Your Dependencies with JDepend by Glen Wilcox - [Clicks: 17]
In this article, I'll introduce you to JDepend, a freely available tool that can provide insight into several qualities of your software architecture. JDepend analyzes the relationships between Java packages using the class files.
http://www.onjava.com/pub/a/onjava/2004/01/21/jdepend.html - Jan, 2004 - Test-Driven Development - Testing Java Classes with JUnit by Wellie Chao - [Clicks: 119]
This article, the second of a five part series on test-driven development, looks at the advantages of JUnit as a testing framework, overviews essential testing concepts and terminology, and walks you through writing a JUnit test case for a sample, FactorCalculator application. The remaining three articles in this series will cover, unit testing of EJB components, black box and in-container testing of servlets and JSPs, and in-container testing of Struts web applications.
[Includes source code]
http://www.theserverside.com/articles/article.jsp?l=TestDrivenDevelopmentPart2 - Jan, 2004
[Top]
Books:
- Unit Test Frameworks
by Paul Hamill - [Clicks: 12]
This is the only book to explore unit testing as a language-independent, standalone development methodology. It covers the theory and methodology of unit test frameworks, offers instruction in unit test development, provides useful code examples in both Java and C++, and details the most commonly used frameworks from the XUnit family, including JUnit for Java, CppUnit for C++, and NUnit for .NET. It also includes the complete source code for CppUnit for C++ and NUnit for .NET.
O'Reilly Media, Inc., Paperback - Nov, 2004 - Test-Driven Development: A J2EE Example
by Thomas Hammell, Russell Gold, Tom Snyder - [Clicks: 6]
While basic techniques of test-driven development are simple to understand, real-world application requires knowledge of tools and techniques to effectively create, run and organize tests. This book bridges the gap between simple concepts and complex application. Ideal for you Java developers, this book explains how to use test-driven development to improve J2EE construction. Not version-specific, this unprecedented book explains development tools and methodologies in conjunction with real-world cases and examples. The authors include complete stages: test coverage strategies, test organization, TDD incorporation, and automation. Two appendices are also included, for test planning and reference.
Apress, Paperback - Jul, 2004 - Java Testing and Design : From Unit Testing to Automated Web Tests
by Frank Cohen - [Clicks: 17]
This book shows how to understand what application you want to write, what strategies are likely to get you there, and then how to measure your level of success. This book offers practical, concrete advice about how to stay in tune with your project and ensure that your products are at least as good as your plans.
Prentice Hall PTR, Paperback - Mar, 2004 - Java Testing Patterns
by Jon Thomas - [Clicks: 8]
Wiley, Paperback - Mar, 2004
[Top]
Presentations:- Enterprise Builds by Vincent Massol - [Clicks: 44]
This session presents a detailed panorama of all testing activities that happen during development. What types of tests should we write and when are they needed? How to integrate them in a continuous build process? The following topics will be covered: automated functional tests, unit testing with mock objects, integration tests (including a presentation of Cactus v2), test metrics and strategies, continuous quality improvement. We will also discuss how to include testing in the project methodology, making it a first-class citizen of development.
[TheServerSide Java Symposium]
http://www.pivolis.com/pdf/Enterprise_Builds_V1.0.pdf - May, 2004 - (PDF)
[Top]