前言

今天继续上一篇文章https://www.cnblogs.com/linuxchao/p/linuxchao-selenium-apione.html分享selenium' webdriver api的用法,

⑪判断页面元素是否可见

用于测试的HTML代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>HTML中显示与隐藏元素</title>
    <meta http-equiv="Content-Type" content="text/html"; charset="utf-8" />
    <script type="text/javascript">
        function showAndHidden1() {
            var div1 = document.getElementById("div1");
            var div2 = document.getElementById("div2");
            if(div1.style.display=='block') div1.style.display='none';
            else div1.style.display='block';
            if(div2.style.display=='block') div2.style.display='none';
            else div2.style.display='block';

        }
        function showAndHidden2() {
            var div3 = document.getElementById("div3");
            var div4 = document.getElementById("div4");
            if(div3.style.visibility=='visible') div3.style.visibility='hidden';
            else div3.style.visibility='visible';
            if(div4.style.visibility=='visible') div4.style.visibility='hidden';
            else div4.style.visibility='visible';
        }
    </script>
</head>
<body>
    <div>display:元素不占用页面位置</div>
    <div id="div1" style="display: block;">DIV 1</div>
    <div id="div2" style="display: none;">DIV 2</div>
    <input id="button1" type="button" onclick="showAndHidden1();" value="DIV切换" />
    <hr>
    <div>visibility:元素占用页面位置</div>
    <div id="div3" style="visibility: visible;">DIV 1</div>
    <div id="div4" style="visibility: hidden;">DIV 2</div>
    <input id="button2" type="button" onclick="showAndHidden2();" value="DIV切换" />
</body>
</html>

调用API实例代码

 1     def testElementIsDisplay(self):
 2         self.driver.get(r'file:///C:/Users/v-xug/Desktop/isdisplay.html')
 3         # 找到div2元素
 4         div2 = self.driver.find_element_by_id('div2')
 5         # 判断div2元素是否可见
 6         if div2.is_displayed():
 7             print('div2 元素可见')
 8         else:
 9             print('div2 元素不可见')
10         # 点击第一个按钮
11         button1 = self.driver.find_element_by_id('button1')
12         button1.click()
13         # 再次判断div2元素是否可见
14         if div2.is_displayed():
15             print('div2 元素可见')
16         else:
17             print('div2 元素不可见')
18         #找到div4元素
19         div4 = self.driver.find_element_by_id('div4')
20         # 判断div4是否可见
21         if div4.is_displayed():
22             print('div4 元素可见')
23         else:
24             print('div4 元素不可见')
25         # 点击第二个按钮
26         button2 = self.driver.find_element_by_id('button2')
27         button2.click()
28         # 再次判断div4元素是否可见
29         if div4.is_displayed():
30             print('div4 元素可见')
31         else:
32             print('div4 元素不可见')
判断元素是否可见

相关文章: