A good strategy to test a software component involves the generation of the whole set of cases that participate in its operation. While testing only individual values may not be enough, exhaustive testing of all possible combinations is not always feasible. An alternative technique to accomplish this goal is called combinatorial testing. Combinatorial testing is a method that can reduce cost and increase the effectiveness of software testing for many applications. It is based on constructing functional test-suites of economical size, which provide coverage of the most prevalent configurations. Covering arrays are combinatorial objects, that have been applied to do functional tests of software components. The use of covering arrays allows to test all the interactions, of a given size, among the input parameters using the minimum number of test cases. In this book an overview of software testing is presented, the main methods to construct test-suites using combinatorial objects are listed. Finally, we propose a new strategy to construct test-suites using a Grid/Parallel approach.