Путаница в назначении значений формы для типа ввода текста - PullRequest
1 голос
/ 22 марта 2012

Ниже моя страница и спецификации.Я могу ввести значение для firstName, но я получаю приведенную ниже ошибку для lastName.Я думал, что мы можем присвоить значение с помощью оператора '=' на основе Geb doc здесь http://www.gebish.org/manual/current/navigator.html#text_inputs_and_textareas

geb.error.UnresolvablePropertyException: Unable to resolve lastName as a property to set on NewConsumerApplicationPage's Navigator context
    at geb.content.NavigableSupport.propertyMissing(NavigableSupport.groovy:141)
    at geb.Browser.propertyMissing(Browser.groovy:182)
    at geb.spock.GebSpec.propertyMissing(GebSpec.groovy:59)
    at WorkItemSpec.Create workitem(WorkItemSpec.groovy:32)

Страница

class NewConsumerApplicationPage extends Page
{static content =
    {
        newApplicationForm
        { $("form", id: "newApplicationConsumerForm") }

        firstName
        {newApplicationForm.find("input", id: "newApplication_primaryApplicant:consumerIdentification:firstName")}

        lastName
        {newApplicationForm.find("input", id: "newApplication_primaryApplicant:consumerIdentification:lastName")}

        submitButton
        {
            $("button", id: "newConsumerApplication_submit")
        }
    }
}

Spec

def "Create workitem"()
{
    given : "I am successfully logged into the application"
    to NewConsumerApplicationPage

    when:
    firstName.value "CCERASTOSTIGMA"
    lastName = "PAULA"

    submitButton.click()

    then : 
    at ApplicationSummaryPage
}

1 Ответ

2 голосов
/ 28 марта 2012

Я получил ответ из списка рассылки Geb.Размещать его здесь для всеобщего блага.

Это немного сбивает с толку, но этот раздел руководства является частью "ярлыков управления формой", то есть он работает только с элементом содержимого формы.Предполагая, что ваша форма имеет элемент ввода name=lastName, это будет работать:

newApplicationForm.lastName = 'value'

Однако это не работает при выборе элементов ввода формы вручную с помощью $/find.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...