selenium自动化 | 实现抢课功能】的更多相关文章

# -*- coding: utf-8 -*-"""Created on Wed Jan 1 23:39:34 2020@author: billie程序运行环境要求:-python3-selenium(python第三方库,可用pip安装)-chromedriver(配置方法可自行百度,需配置对应chrome版本的chromedriver)网络环境要求:-学校内网-----------------具备上述环境要求之后才可成功运行下面的程序,不想配置的话找我帮你选吧-----…
加速IE浏览器自动化执行效率:Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析 1.技术背景       在Web应用中,用户通过键盘在输入框中输入值和鼠标点击按钮,链接等.比如在用户名输入框和密码输入框输入正确的用户名和密码,然后点击登录按钮进行登录.在Selenium自动化中,Selenium提供多种API来对HTML元素进行操作,对于每个HTML元素,需要一个可以标识它的标识符,在Selenium中称之为定位器,Selenium支持多种不同类型的定位器,有标…
通常在编写 Selenium 的 WebUI 自动化脚本时,有些元素不易定位元素,或有些元素为隐藏的(此时用 WebElement.getText() 获取其值的时候,返回的结果为空),对日常的 UI 自动化脚本的编写造成了一定程度的影响.若亲有一定的前段开发基础,肯能会想到可否通过 JavaScript 脚本来操作元素呢?答案是肯定的,Slenium 已经为各位小主们提供了执行 js 脚本的功能,那就是 JavascriptExecutor,小主们只需要将 WebDriver 转换为 Java…
Selenium Selenium 是ThoughtWorks专门为Web应用程序编写的一个验收测试工具. Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE.Mozilla Firefox.Mozilla Suite等.这个工具的主要功能包括:测试与浏览器的兼容性--测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上.测试系统功能--创建衰退测试检验软件功能和用户需求.支持自动录制动作和自动生成.Net.Java.Perl等不同语言的测试脚本.…
2.1 操作元素基本方法 前言前面已经把环境搭建好了,从这篇开始,正式学习selenium的webdriver框架.我们平常说的 selenium自动化,其实它并不是类似于QTP之类的有GUI界面的可视化工具,我们要学的是webdriver框架的API.本篇主要讲如何用Python调用webdriver框架的API,对浏览器做一些常规的操作,如打开.前进.后退.刷新.设置窗口大小.截屏.退出等操作. 2.1.1 打开网页 1.从selenium里面导入webdriver模块2.打开Firefox…
本文转自 selenium自动化添加日志 于logging日志的介绍,主要有两大功能,一个是控制台的输出,一个是保存到本地文件 先封装logging模块,保存到common文件夹命名为logger.py,以便于调用,直接上代码 filename:用指定的文件名创建FiledHandler(后边会具体讲解handler的概念),这样日志会被存储在指定的文件中.filemode:文件打开方式,在指定了filename时使用这个参数,默认值为“a”还可指定为“w”.format:指定handler使用…
系统类型: [root@bogon home]# uname -aLinux bogon 2.6.32-431.el6.x86_64 #1 SMP Sun Nov 10 22:19:54 EST 2013 x86_64 x86_64 x86_64 GNU/Linux Python版本: [root@bogon home]# python -VPython 2.6.6 安装并配置vnc-server: [root@bogon home]# rpm -ivh vnc-server-4.1.2-14.…
Selenium 获取 JavaScript 返回值非常简单,只需要在 js 脚本中将需要返回的数据 return 就可以,然后通过方法返回 js 的执行结果,方法源码如下所示: /** * Get Object of return from js * * @author Aaron.ffp * @version V1.0.0: autoSeleniumDemo main.aaron.sele.core SeleniumCore.java execJSR, 2015-8-9 1:39:17 Ex…
在自动化脚本编写过程中,操作元素之前,需要对元素进行高亮显示(通过修改元素的边框样式),同时进行截图,以记录操作的元素对象.在实际应用中较为少见,通常用于演示,或者发生错误时的屏幕截图捕捉,用于错误报告分析. 直接上码了...... /** * * @function height light the element * * @author Aaron.ffp * @version V1.0.0: autoUISelenium main.java.aaron.sele.core Selenium…
通过 JS 或 JQuery 获取到元素后,通过 offsetLeft.offsetTop.offsetWidth.offsetHeight 即可获得元素的位置和大小,非常的简单,直接上源码了,敬请参阅! /** * Get element position by jquery, and return integer Array [left distance, top distance, width distance, height distance] * * @author Aaron.ffp…
日常的 Web UI 自动化测试过程中,get 或 navigate 到指定的页面后,若想截图的元素或者指定区域范围不在浏览器的显示区域内,则通过截屏则无法获取相应的信息,反而浪费了无畏的图片服务器资源,当然,最重要的还是未能达到自己的预期,是不是很内伤啊.此时,我们就不得不像正常用户操作一样,通过滚动页面至相应的区域,那么该如何滚动呢,此文就此给出答案. 此文实现的页面滚动,是通过 js 操作实现的,敬请各位小主参阅.若有不足之处,敬请大神指正,非常感谢! 直接上码了...... /** *…
前几篇文章中简略概述了,如何获取.设置浏览器窗口大小,那么我们该如何获取浏览器显示区域的大小呢?此文讲对此进行简略概述,敬请各位小主参阅.若有不足之处,敬请各位大神指正,不胜感激! 获取浏览器显示区域的方法,我目前想到的只有以下两种方法: 1.通过 JavaScript  获取浏览器显示区域的大小 2.通过 WebDriver 截图,获取截图的大小,从而获得浏览器显示区域的大小 此文主要以第一种方法示例演示,第二种方法进行后续更新,敬请期待!谢谢! /** * Get width and hei…
总结Selenium自动化测试方法 一.自动化测试基础 1.什么样的项目适合自动化测试 ①任务测试明确,不会频繁变动 ②每日构建后的测试验证 ③比较频繁的回归测试 ④软件系统界面稳定.变动少 ⑤需要在多平台上运行的相同的测试案例.组合遍历型的测试,大量的重复性执行的测试 ⑥软件维护周期比较长 ⑦项目进度压力不太大 ⑧被测软件系统开发较为完善和规范.能够保证系统的可测试性 ⑨具备大量的自动化测试平台以及测试人员具备较强的编程能力 2.一般满足下面三个条件我们说就可以做自动化测试了 ①软件的需求变动…
最近在看python的爬虫框架(scrapy),一个词概括就是:"酸爽"!等把selenium自动化版块讲完后,打算写一写关于scrapy相关的知识,打算从源码角度解析下scrapy这个框架.我的想法是它不仅仅是用来爬网页的,更重要的是如何检测一个网站所有页面的健康性...回到正题,我想讲讲这个话题的起因是同事在自动化过程中遇到了flash的点击操作,查阅网上的相关资料也得不到有效解决.今天我想想谈谈这个flash的自动化操作问题!! 随着页面做的越来越炫酷,flash被越来越多的嵌入…
很多刚做自动化的小伙伴,会在ChromeDriver版本选择时犯难,看来大家都被坑过,真正掌握独门绝技,都不是难事儿. 看好了主要步骤就4部 1.确定谷歌浏览器版本 2.找到谷歌浏览器版本与ChromeDriver版本对应关系 3.下载ChromeDriver版本 4.解压并放至正确的位置 5.验证Selenium调用ChromeDriver 找到已安装的谷歌浏览器版本 自己的系统配置(win7 64位,谷歌浏览器64位(70.0)) 查找谷歌浏览器版本与ChromeDriver版本的对应关系…
opentwebst一个ie自动化操作测试软件-功能强大 一个ie自动化操作测试软件,自动根据操作记录脚本.生成vbs,js和其他脚本语言,用来运行 里面包含了两个东西: 1.脚本操作自动记录,记录下来的脚本可以保存为js,vbs和其它,共五种语言.保存后可以在程序中调用. 2.一个功能强大的针对ie的操作库 点击下载该软件 下载 下面是英文版的说明书,可惜没有中文的 在线说明书…
python selenium自动化点击页面链接测试 需求:现在有一个网站的页面,我希望用python自动化的测试点击这个页面上所有的在本窗口跳转,并且是本站内的链接,前往到链接页面之后在通过后退返回到原始页面. 要完成这个需求就必须实现3点: 1. 找到原始页面上面所有的在本窗口内跳转的链接 2. 跳转到目标页面之后,“后退”到原始页面 3. 在原始页面上继续点击后续的链接 首先,要找到页面上的所有链接并不困难.selenium为我们提供了find_elements_by_tag_name方法…
selenium自动化测试之整合测试报告 标签(空格分隔): 整合报告 如下截图我们添加一个文件叫做:latest_report.py文件, import time import os import smtplib from email.mime.text import MIMEText from email.header import Header import os import unittest from BSTestRunner import BSTestRunner def send_…
Python3 Selenium自动化-select下拉框 selenium介绍select下拉框相关的操作方法:…
Selenium自动化测试之结果处理 一.断言 断言相当于性能测试中的检查点,常用断言种类很多,具体可以查看断言API:判断预期结果和实际结果是否一致,断言成功,程序继续处理,失败则终止运行,示例如下:…
Selenium自动化测试之数据驱动及用例管理 一.TestNg注解介绍 @Test:表示一个测试方法,在运行测试用例过程中,会自动运行@Test注解的方法. 例:…
Selenium自动化测试之基本控件使用 1.输入框input: 在Html中样式: <input id="username" type="text"> 操作: driver.findElement(By.id("username")).clear(); driver.findElement(By.id("username")).sendKeys("test"); 说明: clear表示清除输入…
Selenium自动化测试之启动浏览器 一.Eclipse新建java工程 1.新建java工程:File->New->Java Project,输入Project name:如AutoTest,名称随意,点击Finish: 2.新建Package:选择AutoTest项目,右键->New->Package,输入name,如com.test.selenium,名称随意,点击Finish: 3.新建class类:选择com.test.selenium包,右键->New->…
背景: Dnf的周年庆活动之一,游戏在6月22日 06:00~6月23日 06:00之间登陆过游戏后可以于6月25日 16:00~7月04日 06:00领取奖励 目标:连续四天自动运行脚本,自动领取所有奖励,每天领取一个 进度:当前未知登陆后是否还有选择区服弹窗,故当前仅处理到成功点击为止 思路: python+selenium自动化点击,程序定时运行 实现方法:timer_exerice.py编写死循环定时器,30s判断一次是否到达相应时间,若到达时间,开始执行selenium_exerice…
(1)selenium的工作原理?        ① 脚本启动driver ② driver去驱动浏览器作为远程服务器 ③ 执行脚本发送请求 ④ 服务器解析请求作出相应操作,并返回给客户端(脚本) (2)selenium自动化页面元素找不到存在异常的原因? ① 元素定位错误 ② 页面加载时间过慢,需要查找的元素程序已经完成,单页面还未加载,此时可以加载页面等待时间 ③ 有可能元素包含在iframe或者frame里面,需要切换. (3)如何去定位属性动态变化的元素? 属性动态变化是指该elemen…
前置步骤 Python版本:3.6.4 selenium版本:3.11.0 >>> import selenium >>> help(selenium) IDE:Pycharm 学习目的 掌握Python版本的selenium自动化技能,对所学的知识总结,可以作为日后工作的参考: 对学习的Python脚本编码能力再磨练,实战中学习: 为后续的跳槽作准备,说难听点,不会编码的测试,去哪都没啥竞争力 正式步骤 Step1:unittest框架中最核心的4个概念:test f…
Python+selenium 自动化-启用带插件的chrome浏览器,调用浏览器带插件,浏览器加载配置信息.   本文链接:https://blog.csdn.net/qq_38161040/article/details/87178444 正常的话我们启用的chrome浏览器是不带插件的,如果你能登陆chrome的话,你会发现登陆信息也没有,还有不管你怎样设置每次新打开的chrome都是默认设置的. 我们正常启动的浏览器每次都要加载配置文件的,一般的配置文件就是在user data里,插件就…
Python+Selenium自动化总结 1.环境搭建 1.1.安装selenium模块文件 pip install selenium 1.2.安装ChromeDriver驱动 [1]下载安装Chrome浏览器. [2]查看Chrome版本. 点击Chrome菜单"帮助"→"关于Google Chrome",查看Chrome的版本号. [3]下载对应ChromeDriver驱动. 官方网站:https://sites.google.com/a/chromium.or…
Python+Selenium自动化-定位一组元素,单选框.复选框的选中方法   之前学习了8种定位单个元素的方法,同时webdriver还提供了8种定位一组元素的方法.唯一区别就是在单词element后面增加了一个s表示复数: 0.定位一组元素 find_elements_by_id('') find_elements_by_id_by_class_name('') find_elements_by_tag_name('') find_elements_by_link_text('') fin…
Python+Selenium自动化-模拟键盘操作   0.导入键盘类Keys() selenium中的Keys()类提供了大部分的键盘操作方法:通过send_keys()方法来模拟键盘上的按键. # 导入键盘类 Keys() from selenium.webdriver.common.keys import Keys 1.常用的键盘操作: send_keys(Keys.BACK_SPACE):删除键(BackSpace) send_keys(Keys.SPACE):空格键(Space) se…