以下演示使用http://www.w3school.com.cn/tiy/t.asp?f=html_button_disabled进行演示

一、disabled标签

disabled 属性规定应该禁用 input 元素。

被禁用的 input 元素既不可用,也不可点击。可以设置 disabled 属性,直到满足某些其他的条件为止(比如选择了一个复选框等等)。然后,就需要通过 JavaScript 来删除 disabled 值,将 input 元素的值切换为可用。

 二、对于包含disabled属性的标签我们无法进行操作

可以使用isEnable方法进行判断:

package basicweb;

import java.util.concurrent.TimeUnit;

import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

class ElementState {
    WebDriver driver;
    String url;
    private WebElement ifarme;

    @BeforeEach
    void setUp() throws Exception {
        driver = new ChromeDriver();
        url = "http://www.w3school.com.cn/tiy/t.asp?f=html_button_disabled";
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
        driver.manage().window().maximize();
        driver.get(url);
    }

    @Test
    void test() {
//        因为该元素在ifarme中,我们需要先切换到ifarme中才能对元素进行操作
         ifarme = driver.findElement(By.name("i"));
         driver.switchTo().frame(ifarme);
//        WebElement与String一样,也是一种数据类型
        WebElement e1 = driver.findElement(By.tagName("Button"));
//        判断该元素是否是可操作,可以操作返回true,否则返回flase
        System.out.println("判断该元素是否是禁用元素:"+e1.isEnabled());    
        }
    
    @AfterEach
    void tearDown() throws Exception {
        Thread.sleep(2000);
        driver.quit();
    }
}

运行结果为:flase表示该元素不可用

 

二、在使用selenium进行自动化的过程中,如果遇到需要操作的元素包含disabled属性,那么就需要使用其它标签来进行操作。

 

如果有不明白的小伙伴可以加群“555191854”问我,群里都是该行业的小伙伴。

内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!