1. A computerized apparatus for generating a testcase, the computerized apparatus having a processor and a storage device, the computerized apparatus comprising: a test template obtainer operative to obtain a test template associated with a system-under-test (SUT), wherein the SUT comprises a plurality of units, wherein the test template represents alternative testcases in which the plurality of units interact, wherein the test template defines system-level generation tasks and unit-level generation tasks; a system-level generator operative to generate an abstract testcase based on the test template, wherein said system-level generator is operative to perform the system-level generation tasks, wherein the abstract testcase is an incomplete testcase that cannot be executed, wherein the abstract testcase comprises the unit-level generation tasks; and at least one unit-level generator operative to generate a testcase comprising the abstract testcase, wherein said at least one unit-level generator is operative to perform the unit-level generation tasks.