/// <summary>
        /// Builds a unit test for a form.
        /// </summary>
        /// <param name="testType"> The test type to create.</param>
        /// <param name="form"> The form to edit.</param>
        /// <returns> An edited form tag with applied test.</returns>
        public HtmlFormTag BuildUnitTestForm(UnitTestType testType, HtmlFormTag form)
        {
            HtmlFormTag ret=null;
            IHtmlFormUnitTest tester;
            // Call FillForm
            switch (testType)
            {
                case UnitTestType.BufferOverflow:
                    tester = new BufferOverflowTester((BufferOverflowTesterArgs)this.Arguments);
                    ret = tester.FillForm(form);
                    break;
                case UnitTestType.DataTypes:
                    tester = new DataTypesTester((DataTypesTesterArgs)this.Arguments);
                    ret = tester.FillForm(form);
                    break;
                case UnitTestType.Predefined:
                    tester = new PredefinedTester(((PredefinedTesterArgs)this.Arguments));
                    ret = tester.FillForm(form);
                    break;
                case UnitTestType.SqlInjection:
                    tester = new SqlInjectionTester((SqlInjectionTesterArgs)this.Arguments);
                    ret = tester.FillForm(form);
                    break;
                case UnitTestType.XSS:
                    tester = new XssInjectionTester((XssInjectionTesterArgs)this.Arguments);
                    ret = tester.FillForm(form);
                    break;
            }

            return ret;
        }