2017-08-16 13 views
1

目前,我正在工作一个项目,我打印表格我的testNG电子邮件报告 问题是我不知道如何将它分在另一排?像每13行,新行会开始,我会给一个行name.Thanks对我的支持硒列表大小印在使用java的表格

@Test 
public void Oz_Stays_dashboard() throws InterruptedException { 
    wd.manage().window().maximize(); 

    Thread.sleep(5000); 
    wd.findElement(By.xpath(".//*[@id='login-form']/div[4]/input")).click(); 
    Thread.sleep(5000); 
    wd.findElement(By.xpath(".//*[@id='mws-navigation']/ul/li[1]/a/table/tbody/tr/td[2]")).click(); 
    wd.findElement(By.xpath(".//*[@id='mws-navigation']/ul/li[1]/ul/li[2]/a")).click(); 
    Thread.sleep(5000); 
    Reporter.log("<!DOCTYPE html>"); 
    Reporter.log("<html>"); 
    Reporter.log("<head>"); 
    Reporter.log("<style>"); 
    Reporter.log("table, th, td {"); 
    Reporter.log(" border: 1px solid black;"); 
    Reporter.log("border-collapse: collapse;"); 
    Reporter.log("}"); 
    Reporter.log("th, td {"); 
    Reporter.log("padding: 5px;"); 
    Reporter.log("text-align: left;"); 
    Reporter.log("}"); 
    Reporter.log("</style>"); 
    Reporter.log(" </head>"); 
    Reporter.log("<body>"); 
    Reporter.log("<table>"); 
    Reporter.log(" <tr>"); 
    Reporter.log("<th>Ad Rev.</th>"); 
    Reporter.log("<th>Lead Rev.</th>"); 
    Reporter.log("<th>Booking Rev.</th>"); 
    Reporter.log("<th>Homeaway Rev.</th>"); 
    Reporter.log("<th>VRBO Rev.</th>"); 
    Reporter.log("<th>Hotels.com Rev.</th>"); 
    Reporter.log("<th>Airbnb Rev.</th>"); 
    Reporter.log("<th>Total Projected Rev.</th>"); 
    Reporter.log("<th>Ad Spend</th>"); 
    Reporter.log("<th>G.Profit</th>"); 
    Reporter.log("<th>G.Margin</th>"); 
    Reporter.log("<th>Ad Rev/Spend</th>"); 
    Reporter.log("<th>ROAS</th>"); 
    Reporter.log(" <tr>");  
    List<WebElement> rhrev = wd.findElements(By.xpath(".//*[@class='mws-stat-value']"));   

    int size=rhrev.size(); 
      **for(WebElement e : rhrev) { 
    String clink=e.getText(); 
    System.out.println(clink); 

    Reporter.log("<th>"+clink+ "</th>"); 

    }** 
    Reporter.log(" </tr>"); 
    Reporter.log("</table>"); 
    Reporter.log("</body>"); 
    Reporter.log("</html>"); 

,这里是我的电流输出 enter image description here

enter image description here

回答

1

只需在您的类中替换下面的代码

int count =1; 
String clink=null; 
List<WebElement> rhrev = wd.findElements(By.xpath(".//*[@class='mws-stat-value']"));   
int size=rhrev.size(); 

for(WebElement e : rhrev) 
{ 
    clink=e.getText(); 
    System.out.println(clink); 

    if(count<=13) 
    { 
     Reporter.log("<td>"+clink+ "</td>"); 
     count++; 
    } 
    else 
    { 

     count=1; 
     clink=e.getText(); 
     Reporter.log(" </tr>"); 
     Reporter.log(" <tr>"); 
     Reporter.log("<td>"+clink+ "</td>"); 
     count++; 
    } 
} 

您需要在每第13列后添加新行。此代码将有所帮助。我已经在我的测试结束,它的工作正常。如果面对任何问题,让我知道:)

完整的代码是:

Reporter.log("<!DOCTYPE html>"); 
Reporter.log("<html> <head> <style> table, th, td { border: 1px solid black; border-collapse: collapse; }"); 
Reporter.log("th, td { padding: 5px; text-align: left; }"); 
Reporter.log("</style> </head>"); 
Reporter.log("<body> <table> <tr>"); 
Reporter.log("<th>Ad Rev.</th> <th>Lead Rev.</th> <th>Booking Rev.</th> <th>Homeaway Rev.</th> <th>VRBO Rev.</th>"); 
Reporter.log("<th>Hotels.com Rev.</th> <th>Airbnb Rev.</th> <th>Total Projected Rev.</th> <th>Ad Spend</th> <th>G.Profit</th> <th>G.Margin</th> <th>Ad Rev/Spend</th> <th>ROAS</th>"); 
Reporter.log(" <tr>");  
List<WebElement> rhrev = wd.findElements(By.xpath(".//*[@class='mws-stat-value']"));   
int count =1; 
String clink=null; 
for(WebElement e : rhrev) 
{ 
    if(count<=13) 
    { 
     clink=e.getText(); 
     System.out.println(clink); 
     Reporter.log("<td>"+clink+ "</td>"); 
     count++; 
    } 
    else 
    { 
     count=1; 
     clink=e.getText(); 
     Reporter.log(" </tr> <tr>"); 
     Reporter.log("<td>"+clink+ "</td>"); 
     count++;      
    }     
} 
Reporter.log(" </tr> </table> </body> </html>"); 
+0

您help.It的工作由于tuks但在13号列打印2 times.same栏我得到13的问题, 1号码栏 – zsbappa

+0

它是在表格中插入正确的值吗?或者还有与打印相同的问题? – NarendraR

+0

我附上了一张图片,请你检查一下吗?它显示第1行13列号和第2行第1列相同的值也 第2行13列号和第3行第1列相同的值..但其不同的 – zsbappa

0

怎么样为列增加一个循环

for(WebElement e : rhrev) { 
     String clink=e.getText(); 
     System.out.println(clink); 
     Reporter.log("<tr>"); 
     for (int col=0; col< 13; col++){ 
      Reporter.log("<td>"+clink+ "</td>");  
     } 
     Reporter.log("<tr>"); 

    }