Skip to main content

FoCuS

A tool that implements the functional coverage methodology, providing detailed coverage information and improving testing.

Date Posted: April 26, 1999

alphaworks tab navigation


 

Update: November 10, 2008 Version 1.6.3.2: New features: substring hole analysis, comparative coverage report, test selection, test plan, decision trees for review, and many GUI improvements and modifications.

 

What is FoCuS?

FoCuS is a tool that implements the functional coverage methodology and improves testing of applications by providing detailed coverage information on the areas in which testing is lacking. Functional coverage refers to testing the performance and functionality of an e-business application and making sure that the design of the test is complete and covers every aspect of what the application is meant to do.

FoCuS also provides extensive views for code coverage. It can read code coverage data generated by ConTest for Java or IBM Binary Prober (both alphaWorks® technologies) or by other tools if appropriately customized.

How does it work?

FoCuS allows for user definition of the coverage models and then it creates those models. It collects the data, creates regressions, and shows reports. FoCuS desegregates the coverage model definition from the tool. Coverage models can be defined to fit the design in the best way while FoCuS retains all the benefits of a coverage tool, such as data collection and processing, creation of coverage reports, and generation of regression-suites with high coverage.

Most of the coverage tools in the market share the same functions, such as data gathering and coverage reports, but they all have different models that they implement for different situations, making them difficult and costly to write. FoCuS, a single, general-purpose tool, is independent of specific applications, yet it provides all the functionality of existing tools.

The documentation contains a tutorial, a white paper, and a 120-slide presentation that explains what functional coverage is, how it compares to code coverage, and what it can do.

About the technology author(s)

Shmuel Ur is a research scientist at the IBM® research lab in Haifa, Israel. He works in the field of software testing and concentrates on coverage and testing of multi-threaded programs. Dr. Ur is the technical lead of the area of coverage in IBM and is an IBM Master Inventor. In addition, he teaches software testing at the Technion and Haifa University. Dr. Ur received his Ph.D. in algorithms optimization and combinatorics in 1994 at Carnegie Mellon University; he received his Ms.C. and Bs.C. from the Technion in Israel. Dr. Ur has published papers in the fields of hardware testing, artificial intelligence, algorithms, software testing, and testing of multi-threaded programs; he is also the co-chair of PADTAD, a workshop on testing multi-threaded applications. In the area of coverage, he has worked and published papers on functional coverage, minimizing regression suite size, coverage-directed generation, visual code coverage techniques, and coverability.

Yarden Nir-Buhcbinder holds an M.A. in philosophy from the University of Haifa and a B.Sc. in computer science from the Technion, Israel Institute of Technology. Since 2000 he has been working at the IBM Haifa Research Laboratory, where he participates in the development of software testing tools.

Trademarks




Related technologies