2012-03-22 9 views
1

以下はマイページと仕様です。私はfirstNameの値を入力することができますが、私はlastNameの下のエラーを取得しています。私たちはゲブここドキュメント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) 

ページに基づいて、私が持っている

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

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

    submitButton.click() 

    then : 
    at ApplicationSummaryPage 
} 

答えて

2

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") 
     } 
    } 
} 

スペックを '=' 演算子を使用して値を割り当てることができます思いましたGebメーリングリストからの回答。みんなの利益のためにここに掲示する。

これはちょっと混乱しますが、マニュアルのこのセクションは 「フォームコントロールのショートカット」の一部です。つまり、フォームコンテンツ 要素でのみ機能します。 name=lastName入力要素は、この が働くだろうフォームをしていると仮定すると:手動$/findを使用して フォームの入力要素を選択する際

newApplicationForm.lastName = 'value' 

しかしそれは動作しません。

関連する問題