Code Search for Developers
 
 
  

FormTestTag.java from Jameleon at Krugle


Show FormTestTag.java syntax highlighted

/*
    Jameleon HtmlUnit plug-in - A plug-in that uses HtmlUnit to drive web sites
    Copyright (C) 2006 Christian W. Hargraves (engrean@hotmail.com)
    
    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Lesser General Public
    License as published by the Free Software Foundation; either
    version 2.1 of the License, or (at your option) any later version.

    This library is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
    Lesser General Public License for more details.

    You should have received a copy of the GNU Lesser General Public
    License along with this library; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111AssertLevel.NO_FUNCTION07 USA
*/
package net.sf.jameleon.plugin.htmlunit.acceptance;

import net.sf.jameleon.plugin.htmlunit.HtmlUnitFunctionTag;

/**
 * Fills out a form and submits it.
 * 
 * @jameleon.function name="htmlunit-form-test" type="action"
 */
public class FormTestTag extends HtmlUnitFunctionTag{

    /**
     * @jameleon.attribute
     */
    protected String username;
    /**
     * @jameleon.attribute
     */
    protected String password;
    /**
     * @jameleon.attribute
     */
    protected boolean someCheckbox;

    public void testBlock(){
        setWorkingFormByName(formName);
        setTextField(usernameField, username);
        setPasswordField(passwordField, password);
        setCheckBox(someCheckboxField, someCheckbox);
        clickElementWithXPath(genXPath());
    }

    public String genXPath(){
        String xpath = "//form[@name='"+formName+"']//input[@type='button' and @value='"+submitButtonName+"']";
        return xpath;
    }

///////////////////////////////////////////////////////////////////////////////////////////////
// For Field Definitions
// These all have default values and contain attributes we wish to make available to be set.
// However, for the most part, these are attributes that hide the form specifics from the user. 
///////////////////////////////////////////////////////////////////////////////////////////////

    /**
     * @jameleon.attribute default="userid"
     */
    protected String usernameField;
    /**
     * @jameleon.attribute default="password"
     */
    protected String passwordField;
    /**
     * @jameleon.attribute default="ed1"
     */
    protected String someCheckboxField;
    /**
     * @jameleon.attribute default="Go"
     */
    protected String submitButtonName;
    /**
     * @jameleon.attribute default="sample"
     */
    protected String formName;
}




See more files for this project here

Jameleon

Jameleon is a data-driven automated testing tool that is easily extensible via plug-ins. Features of applications are automated in Java and tied together independently in XML, creating self-documenting automated test cases.

Project homepage: http://sourceforge.net/projects/jameleon
Programming language(s): Java,XML
License: other

  FormTestTag.java