2016-04-28 12 views
0

いくつかの間隔を置いていくつかのリンクをクリックしたいのですが、xpathが1つの要素だけ変更されています。私はここでは8つの要素forループでxpathを使いたい

.//*[@id='nav']/li[2]/ul/li/div[2]/ul/li[1]/a 
    .//*[@id='nav']/li[2]/ul/li/div[2]/ul/li[2]/a 
    .//*[@id='nav']/li[2]/ul/li/div[2]/ul/li[3]/a 
    .//*[@id='nav']/li[2]/ul/li/div[2]/ul/li[4]/a 
    .//*[@id='nav']/li[2]/ul/li/div[2]/ul/li[5]/a 
    .//*[@id='nav']/li[2]/ul/li/div[2]/ul/li[6]/a 
    .//*[@id='nav']/li[2]/ul/li/div[2]/ul/li[7]/a 
    .//*[@id='nav']/li[2]/ul/li/div[2]/ul/li[8]/a 

のみのLiのためにこれらのXPathを有する

例は、[N]の要素は、私はコード

for(int i=1;i<=8;i++) 
{ 
    System.out.println(i); 
    driver.findElement(By.xpath(
     ".//[@id='nav']/li[2]/ul/li/div[2]/ul/li["+i+"]/a" 
    )).click(); 
} 

下に試みたが、このコードが動作していない変更されています。私がいくつかの情報を逃した場合は、私に知らせてください。

+0

テストを検討する必要があります。 "xpath tester"のgoogle検索を実行して、xpath式が正しいことを確認するための多くのツールを見つけてください。 – DwB

答えて

0

小型タイプミス:

".//[@i... 

".//*[@i... 
+0

これもSryと試してみましたが、これも動作していません。driver.findElement(By.xpath( ".//* id = 'nav')/ li [2]/ul/li/div [2]/ul/li ["+ i +"]/a "))をクリックします。 – monil

+0

@monil次に、isuseの再現を可能にするあなたのHTMLの実例を提供します – wero

関連する問題