2012-04-11 3 views
0

セレンを初めて使ったので、別のドロップダウンリストから項目を選択して動的にバインドされたアイテムをドロップダウンリストで見つけました。私のサンプルコードに続いて:セレンのダイナミックドロップダウンアイテムが見つかりませんRC

selenium.Open( ".../Default.aspx");

selenium.WindowMaximize();

selenium.Click( "name = ddCountry");

selenium.Click( "// div [@ id = 'ddCountry_DropDown']/div/ul/li [1]");

str = selenium.GetText( "// div [@ id = 'ddCountry_DropDown']/div/ul/li [1]");

selenium.Type( "name = ddCountry"、strValue);

selenium.Click( "name = ddCity");

selenium.Click( "// div [@ id = 'ddCity_DropDown']/div/ul/li [1]");

str = selenium.GetText( "// div [@ id = 'ddCity_DropDown']/div/ul/li [1]");

selenium.Click( "id = btnRedirect");

selenium.WaitForPageToLoad( "30000");

上記のコードでは、国のドロップダウンでアイテムを選択した後、私は好きなようにしようとしていました。選択変更イベントの火災で都市のドロップダウンにバインドされた項目はほとんどありませんでした。私の問題は "このコードが実行されると、" selenium.Click( "// div [@ id = 'ddCity_DropDown']/div/ul/li [1]"); " 私は" Element // div [@id = 'ddCity_DropDown']/div/ul/li [1]が見つかりません "。事前にこの問題の解決策を提供してください。

に関して、 ヴェンカト

答えて

0

市がドロップダウンからであるドロップダウン国によって結合です。あなたは都市のドロップダウンが表示されるように国のドロップダウンの後にいくつかの意図的な待機を追加する必要があります。

あなたはこのようなあなたのデータベースのコード後の最初のテストケースには、Javaでいくつかの待ち時間を誘導することができます

長いEND3 =にSystem.currentTimeMillis()+ 6000;

while(System.currentTimeMillis()<end3) 
    { 
     // Do nothing here Just time pass. 
    } 

これは、Javaコードは6000ミリ

を待つことを保証します
関連する問題