如何使用selenium检查行相同类型的数据

时间:2017-01-25 05:56:46

标签: selenium

场景是在点击旋转按钮后,如果任何行具有相同类型的形状,则应在分数框中打印500个点,如果任何行具有相同类型的2个形状且一个形状不同于300个点应打印在分数框,如果任何行有三个不同的形状,那么100分应打印在分数框中。

附件,

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

您还没有提及任何html或任何内容。我有一些可以帮助你的解决方案

  1. 假设你的所有9张图片都在一张桌子上展示,<td>标签会在旋转后将类名更改为对应的图像,例如td图像更改为方形图像然后将类添加到该图像td喜欢 - <td class="square">

  2. 确定html中发生的事情的唯一性,并根据简单的逻辑示例更改代码 -

    List<WebElement> allelement = driver.findElements(By.xpath("//table[@id='mytable']//td"));
    
    int count=0;
    for(int i=0;i<allelement.size();i++)
    {
        switch(i)
        {
        case 0:
        case 3:
        case 6:
            if(allelement.get(i).getAttribute("class").equals(allelement.get(i+1).getAttribute("class")))
            {
                if(allelement.get(i).getAttribute("class").equals(allelement.get(i+2).getAttribute("class")))
                {
                    System.out.println("Spin 500");
                }
                else
                {
                    System.out.println("Spin 300");
                }
             }
            else if(allelement.get(i+1).getAttribute("class").equals(allelement.get(i+2).getAttribute("class")))
            {
                System.out.println("Spin 300");
            }
            else
            {
                count++;
                if(count==3)
                {
                    System.out.println("Spin 100");
                }
            }
            break;
        }
    }