web自动化测试终篇:总结我理解的ui自动化,整理归纳:

https://blog.csdn.net/CCGGAAG/article/details/89669592

web页面自动化知识点

1、web页面,html页面。Dom页面

2、获取元素属性,修改元素属性

3、webdriver元素定位8种方式:id\name\class name\tag name\link text\partial link text\xpath\css selecter

//div[@tpl="tieba_general"]

//div[text()="吧_百度贴吧"]'

//input[contains(text(),‘密码’)],

//input[contains(@class,‘a’)],

/div/following-sibling::div

选取div标签之后的所有同级div标签

/div/preceding-sibling::div

选取div标签之前的所有同级div标签

4、元素基础操作:clear(),send_keys(),click(),submit(),

5、浏览器操作:get(),back(),forward(),refresh(),maximize_window(),close(),quit()

6、页面元素属性的获取:get_attribute(),text(),size(),is_displayed(),is_enabled(),is_selected()

7、浏览器\页面信息的信息:current_url(),title()

8、模拟鼠标操作:ActionChains(driver).move_to_element(element).perform(),

context_click(ele),double_click(ele),move_by_offset(x,y),click_and_hold(ele=None),send_keys(Keys.CONTROL, "a")

10、webdriver浏览器版本驱动对应以及下载(火狐-谷歌-IE浏览器)火狐47版本,ie2.5版本

11、浏览器不同页面的切换:.current_window_handle(),window_handles(),

switch_to.window(window_name)

12、切换页面iframe:切换到一个frame中switch_to.frame(frame_reference),切换到主界面switch_to.default_content():driver.switch_to.parent_frame()

13、关于alert弹窗的方法

switch_to.alert(),dismiss(), accept(),text,send_keys(key):对弹窗对象内的输入框输入数据(如果弹窗的格式有输入框的话可以使用)

driver.switch_to.active_element()

切换到alert弹窗

driver.switch_to.alert()

切换到主页面

driver.switch_to.default_content()

通过id、name、element(定位的某个元素)、索引来切换到某个frame

driver.switch_to.frame(frame_reference)

切换到指定的window_name页签

driver.switch_to.window(window_name)

13、select类:Select(select_ele).select_by_value(“2”)

select_by_value(values):选择option标签中value属性为:values的选项

select_by_index(index):选择索引为index_number的选项(索引从0开始)

select_by_visible_text(text):选择option选项内容为:text的选项

14、查找元素方式:首先有两个万能定位方法:

find_element()寻找符合条件的第一个元素

find_elements()寻找所有符合条件的元素

find_elements_by_id(),find_elements_by_name(),find_elements_by_tag_name(),find_elements_by_class_name(),find_elements_by_link_text(),find_elements_by_partial_link_text()

,find_elements_by_css_selector(),find_elements_by_xpath()

driver.find_element(By.NAME, "kw1")

15、js语句:driver.execute_script(script, *args)

16、3种等待:sleep(5),implicitly_wait(30),webDriverwait

WebDriverWait(self.driver,timeout,poll_frequency).until(EC.visibility_of_element_located(loc))

WebDriverWait(driver,10).until(EC.new_window_is_opened(windows))

WebDriverWait(driver,10).until(EC.frame_to_be_available_and_switch_to_it("login_frame_qq"))

WebDriverWait(driver,20).until(EC.alert_is_present())

from selenium import webdriver

from selenium.webdriver.support.ui import WebDriverWait

from selenium.webdriver.support import expected_conditions as EC

from selenium.webdriver.common.action_chains import ActionChains

from selenium.webdriver.common.keys import Keys

from selenium.webdriver.support.ui import Select

from selenium.webdriver.commonimport By

from time import sleep

web页面自动化总结。selenium的更多相关文章

  1. web常用自动化库——selenium总结

    概述 selenium是一个模拟控制浏览器操作的自动化库,它可以做到元素定位,鼠标事件,浏览器事件,js脚本执行等操作 与request不同的是,request是单独请求一个http,而seleniu ...

  2. Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析

    加速IE浏览器自动化执行效率:Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析 1.技术背景       在Web应用中,用户通过键盘在输入框中输入值和鼠标点击按钮,链 ...

  3. WEB自动化(Python+selenium)的API

    在做Web自动化过程中,汇总了Python+selenium的API相关方法,给公司里的同事做了第二次培训,分享给大家                                         ...

  4. selenium(12)-web UI自动化项目实战(PO模式,代码封装)

    web UI自动化项目实战-项目 项目使用禅道,所以你需要搭建1个禅道,搭建禅道的方法和步骤见 https://www.cnblogs.com/xinhua19/p/13151296.html 搭建U ...

  5. 《手把手教你》系列技巧篇(四十五)-java+ selenium自动化测试-web页面定位toast-上篇(详解教程)

    1.简介 在使用appium写app自动化的时候介绍toast的相关元素的定位,在Web UI测试过程中,也经常遇到一些toast,那么这个toast我们这边如何进行测试呢?今天宏哥就分两篇介绍一下. ...

  6. selenium怎么操作web页面常见的元素

    总结一下selenium怎么操作web页面常见的元素. 主要有: 上传 alter dialog prompt dialog confirm dialog select list radio box ...

  7. web端自动化——selenium Page Object设计模式

    Page Object设计模式的优点如下: ①    减少代码的重复. ②    提高测试用例的可读性. ③    提高测试用例的可维护性,特别是针对UI频繁变化的项目. 当为Web页面编写测试时,需 ...

  8. 《手把手教你》系列技巧篇(四十六)-java+ selenium自动化测试-web页面定位toast-下篇(详解教程)

    1.简介 终于经过宏哥的不懈努力,偶然发现了一个toast的web页面,所以直接就用这个页面来夯实一下,上一篇学过的知识-处理toast元素. 2.安居客 事先声明啊,宏哥没有收他们的广告费啊,纯粹是 ...

  9. 记我的第二次自动化尝试——selenium+pageobject+pagefactory实现自动化下单、退款、撤销回归测试

    需求: 系统需要做下单.退款.撤销的回归测试,有下单页面,所以就想到用selenium做WEB UI 自动化 项目目录结构: common包上放通用的工具类方法和浏览器操作方法 pageobject包 ...

随机推荐

  1. 使用Dom4j、反射自定义实现xml与java对象互转

    一.前言 国庆假期临近,工作动力不强.所以写几篇之前项目中自己用到的一些可能有用的东西分享出来. 今天分享的是Xml与javaBean互转的自定义实现. 先说几种我知道的Xml与javaBean互转的 ...

  2. Skywalking-09:OAL原理——如何通过动态生成的Class类保存数据

    OAL 如何通过动态生成的 Class 类,保存数据 前置工作 OAL 如何将动态生成的 SourceDispatcher 添加到 DispatcherManager // org.apache.sk ...

  3. 【C++ Primer Plus】编程练习答案——第3章

    1 void ch3_1() { 2 using namespace std; 3 unsigned int factor = 12; 4 unsigned int inch, feet; 5 cou ...

  4. 获取HTML网页中option标签元素的值

    在进行表单元素的操作时,难免会遇到对option元素的挑选,下面的示例代码能够很好的获取到你option元素选择的值,如果要传递给后端,可通过ajax或者其他方式传递即可. 示例代码 <!doc ...

  5. 前端快闪四: 拦截axios请求和响应

    马甲哥继续在同程艺龙写一点大前端: 今天我们来了解一下 如何拦截axios请求/响应? axios是一个基于 promise 的网络请求库,可以用于浏览器和 node.js, promise 类似于C ...

  6. bzoj1407,洛谷2421 NOI2002荒岛野人

    题目大意: 克里特岛以野人群居而著称.岛上有排列成环行的M个山洞.这些山洞顺时针编号为1,2,-,M.岛上住着N个野人,一开始依次住在山洞C1,C2,-,CN中,以后每年,第i个野人会沿顺时针向前走P ...

  7. 2021.3.3--vj补题

    题目 C - C CodeForces - 1166C The legend of the foundation of Vectorland talks of two integers xx and  ...

  8. 解决GitHub访问慢

    话不多说,上干货~~~ 1. 打开 http://tool.chinaz.com/dns/ ,在输入框中填写 github.com,然后点击检测按钮,会列出响应ip,如图: 2. 找到hosts文件, ...

  9. JAVA复习总体大纲

    1 java基础. [1].变量--- 数据类型 变量名=值; 数据类型: 1.基本数据类型. byte[1字节] short[2字节] int[4字节] long[8字节] float[4字节] d ...

  10. 封装ARX给.Net调用

    1:创建工程名.def的文件,内容如下: 2:def文件位置: 3:属性页配置: 4:acrxEntryPoint.cpp下面添加如下代码(可以传参数) 5:c#调用 怕自己忘记,记录一下.