2017-06-30 2 views
0

Im Folgenden Schritte, die ich tun müssen:Checkbox funktioniert nicht richtig in Selen

  1. zu überprüfen, ob das Kontrollkästchen aktiviert ist oder nicht.

a) Wenn es dann bestimmte Schritte

b) folgen aktiviert ist Wenn es dann das Kontrollkästchen nicht markiert ist ticken und die gleichen Schritte in a) folgen

Das ist mein HTML-Code:

<td style="width: 4.5%; padding-left: 2px;" class="heading" data-bind="css: selected() ? 'headingSelected' : 'heading'"> 
    <img title="Click to show all employees" data-bind="click: _apps.expandUnExpand, visible: !expanded()" class="clickable" src="/Content/Images/plus.gif" style="display: none;"> 
    <img title="Click to hide all employees" data-bind="click: _apps.expandUnExpand, visible: expanded()" class="clickable" src="/Content/Images/minus.png"> 
    <img title="Click To Select Application" data-bind="click: _apps.selectUnSelect, visible: !selected() &amp;&amp; !_apps.readOnly() " class="clickable" src="/Content/Images/unchecked.png"> 
    <img title="Click To Unselect Application" data-bind="click: _apps.selectUnSelect, visible: selected() &amp;&amp; !_apps.readOnly() " class="clickable" src="/Content/Images/checked.png" style="display: none;"> 
</td> 

Unten ist mein Code:

if(driver.findElement(By.xpath("//[@id='AuraACLs']/div[2]/div[1]/table/tbody/tr/td[1]/img[3]")).isEnabled()) //Xpath when checbox is ticked 
{ 
    System.out.println("checkbox is selected"); 
    driver.findElement(By.xpath("//button[text()='Add to ACL']")).click(); 
} 
else if(driver.findElement(By.xpath("//[@id='AuraACLs']/div[2]/div[1]/table/tbody/tr/td[1]/img[3]")).isEnabled()) //xpath when checkbox is not ticked 
{ 
    System.out.println("checkbox is unselected"); 
    driver.findElement(By.xpath("//[@id='AuraACLs']/div[2]/div[1]/table/tbody/tr/td[1]/img[3]")).click();// tick the checkbox 
    driver.findElement(By.xpath("//button[text()='Add to ACL']")).click(); 
} 

Wenn ich mit einzelnen versuchen, wenn der Code funktioniert, aber wenn ich sowohl das If (if und else if) Code kombinieren funktioniert nicht

+0

Das ist mein HTML-Code: suchi

Antwort

1

Es sieht aus wie Ihre if-Anweisungen die gleiche Frage sind

if (checkbox.isEnabled()) 
{ 
    //Do this 
} 
else if (checkbox.isEnabled()) 
{ 
    // Do something else 
} 

Aber in beiden if-Anweisungen ist Ihre Prüfbedingung dieselbe. Ändern Sie else-if in

else if (!checkbox.isEnabled()) Die ! ist ein Negationsoperator und überprüft, dass die Bedingung nicht wahr ist.