Selenium2+python自动化39-关于面试的题【转载】

前言

最近看到群里有小伙伴贴出一组面试题,最近又是跳槽黄金季节,小编忍不住抽出一点时间总结了下,

回答不妥的地方欢迎各位高手拍砖指点。

一、selenium中如何判断元素是否存在?

首先selenium里面是没有这个方法的,判断元素存在需要自己写一个方法了。

元素存在有几种形式,一种是页面有多个元素属性重复的,这种直接操作会报错的;还有一种是页面隐藏的元素操作也会报错

判断方法参考这篇:Selenium2+python自动化36-判断元素存在

二、selenium中hidden或者是display = none的元素是否可以定位到?

定位是可以定位到的,但是不能操作,可以判断元素is_displayed()

(我一直不里面这个定位到底是几个意思,只要页面上有的元素,我觉得都能定位到,

实在不行,小编可以爬源码Selenium2+python自动化37-爬页面源码(page_source),能不能操作那是另外一回事)

三、selenium中如何保证操作元素的成功率?也就是说如何保证我点击的元素一定是可以点击的?

一种是隐式等待: driver.implicitly_wait()

另外一种是显式等待:WebDriverWait()

等待时间放长一点参考这篇:Selenium2+python自动化38-显示等待(WebDriverWait)

时间: 2024-10-27 16:37:39

Selenium2+python自动化39-关于面试的题【转载】的相关文章

Selenium2+python自动化39-关于面试的题

前言 最近看到群里有小伙伴贴出一组面试题,最近又是跳槽黄金季节,小编忍不住抽出一点时间总结了下, 回答不妥的地方欢迎各位高手拍砖指点. 一.selenium中如何判断元素是否存在? 首先selenium里面是没有这个方法的,判断元素存在需要自己写一个方法了. 元素存在有几种形式,一种是页面有多个元素属性重复的,这种直接操作会报错的:还有一种是页面隐藏的元素操作也会报错 判断方法参考这篇:Selenium2+python自动化36-判断元素存在 二.selenium中hidden或者是displa

Selenium2+python自动化27-查看selenium API【转载】

前言 前面都是点点滴滴的介绍selenium的一些api使用方法,那么selenium的api到底有多少呢?本篇就叫大家如何去查看selenium api,不求人,无需伸手找人要,在自己电脑就有. pydoc是Python自带的模块,主要用于从python模块中自动生成文档,这些文档可以基于文本呈现的.也可以生成WEB 页面的,还可以在服务器上以浏览器的方式呈现! 一.pydoc 1.到底什么是pydoc? ,这个是准确的解释:Documentation generator and online

Selenium2+python自动化63-简易项目搭建【转载】

前言 到unittest这里基本上可以搭建一个简易的项目框架了,我们可以用一条run_main.py脚本去控制执行所有的用例,并生成报告,发送邮件一系列的动作 一.新建工程 1.打开pycharm左上角File>New Project,在Location位置输入项目名称:D:\test\test_blog 2.创建之后,选择Opin in current window就可以了 二.项目结构 1.在测试工程下,创建文件夹,一定要选Python Package的方式创建,要不然后面导入自己写的模块会

Selenium2+python自动化30-引入unittest框架【转载】

本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/unittest/ from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.common.keys import Keysfrom selenium.webdriver.support.ui import Selectfrom selenium.co

Selenium2+python自动化15-select下拉框【转载】

前言最近由于工作原因,更新慢了一点,今天终于抽出一点时间给大家继续更新selenium系列,学习的脚本不能停止,希望小伙伴能多多支持. 本篇以百度设置下拉选项框为案例,详细介绍select下拉框相关的操作方法. 一.认识select    1.打开百度-设置-搜索设置界面,如下图所示 2.箭头所指位置,就是select选项框,打开页面元素定位,下方红色框框区域,可以看到select标签属性:<select id="nr" name="NR">    3.

Selenium2+python自动化59-数据驱动(ddt)

前言 在设计用例的时候,有些用例只是参数数据的输入不一样,比如登录这个功能,操作过程但是一样的.如果用例重复去写操作过程会增加代码量,对应这种多组数据的测试用例,可以用数据驱动设计模式,一组数据对应一个测试用例,用例自动加载生成. 一.环境准备 1.安装ddt模块,打开cmd输入pip install ddt在线安装 >>pip install ddt 二.数据驱动原理 1.测试数据为多个字典的list类型 2.测试类前加修饰@ddt.ddt 3.case前加修饰@ddt.data() 4.运

Selenium2+python自动化47-判断弹出框存在(alert_is_present)

前言 系统弹窗这个是很常见的场景,有时候它不弹出来去操作的话,会抛异常.那么又不知道它啥时候会出来,那么久需要去判断弹窗是否弹出了. 本篇接着Selenium2+python自动化42-判断元素(expected_conditions)讲expected_conditions这个模块 一.判断alert源码分析 class alert_is_present(object):    """ Expect an alert to be present.""&q

Selenium2+python自动化54-unittest生成测试报告(HTMLTestRunner)

前言 批量执行完用例后,生成的测试报告是文本形式的,不够直观,为了更好的展示测试报告,最好是生成HTML格式的. unittest里面是不能生成html格式报告的,需要导入一个第三方的模块:HTMLTestRunner 一.导入HTMLTestRunner 1.这个模块下载不能通过pip安装了,只能下载后手动导入,下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html 2.Download下HTMLTestRunner.py文件就是我们需

Selenium2+python自动化52-unittest执行顺序

前言 很多初学者在使用unittest框架时候,不清楚用例的执行顺序到底是怎样的.对测试类里面的类和方法分不清楚,不知道什么时候执行,什么时候不执行. 本篇通过最简单案例详细讲解unittest执行顺序. 一.案例分析 1.先定义一个测试类,里面写几个简单的case # coding:utf-8import unittestimport timeclass Test(unittest.TestCase):    def setUp(self):        print "start!"