python+selenium自动化软件测试(第16章):基础实战(3)
#coding:utf-8 from time import sleep
from selenium import webdriver class cloudedge_register(object): def __init__(self,mailaddr,passwd,url):
self.mailaddr = mailaddr
self.passwd = passwd
self.url = url
self.browser = webdriver.Firefox() def register(self):
self.browser.get(self.url)
self.browser.maximize_window()
self.browser.implicitly_wait(10)
self.browser.find_element_by_link_text("注册").click()
self.browser.implicitly_wait(10)
self.browser.find_element_by_id("reglForm.email").clear()
self.browser.find_element_by_id("reglForm.email").send_keys(self.mailaddr)
self.browser.find_element_by_id("reglForm.password").clean()
self.browser.find_element_by_id("reglForm.password").send_keys(self.passwd)
self.browser.find_element_by_id("reglForm.confirmPassword").clear()
self.browser.find_element_by_id("reglForm.confirmPassword").send_keys(self.passwd)
sleep(8)
self.browser.find_element_by_link_text ("立即注册").click() class add_domain_info(object):
def __init__(self,username,password,domainName,originlp):
self.browser = webdriver.Firefox()
self.username = username
self.password = password
self.domainName = domainName
self.originlp = originlp
self.url = 'https://www.xxx.com/cn/index.html' def add_info(self):
'''登陆部分'''
self.browser.get(self.url)
self.browser.maximize_window()
self.browser.implicitly_wait(10)
self.browser.find_element_by_link_text("登录").click()
self.browser.implicitly_wait(10)
self.browser.find_element_by_id("username").clean()
self.browser.find_element_by_id("username").send_keys(self.username)
self.browser.find_element_by_id("password").clean()
self.browser.find_element_by_id("password").send_keys(self.password)
sleep(8) #输验证码
self.browser.find_element_by_id("loginBtn").click()
self.browser.implicitly_wait(10) '''新增加速域名'''
self.browser.find_element_by_link_text("xxxx").click()
self.browser.implicitly_wait(3)
self.browser.find_element_by_link_text("xxxx").click()
self.browser.find_element_by_id("xxxx).clear()
self.browser.find_element_by_id("xxxx").send_keys(self.domainName)
self.browser.find_element_by_id("xxxxx").clear()
self.browser.find_element_by_id("xxxxx").send_keys(self.oniginlp)
self.browser.find_element_by_class_name("saddd").click()
self.browser.implicitly_wait(3) #可有些问题 self.browser.find_element_by_name("xxx").send_keys("xxxx")
self.browser.find_element_by_name("xxxx").send_keys("xxx")
self.browser.find_element_by_link_text("xxxx").click()
self.browser.find_element_by_link_text("xxx").click() class modify_domain_info(object):
def __init__(self):
pass test = add_domain_info('cntanght@163.com','xxxxx','www.baidu.com、'1.0.0.1’)
test.add_info()
python+selenium自动化软件测试(第16章):基础实战(3)的更多相关文章
- python+selenium自动化软件测试(第15章):基础实战(2)
#coding:utf-8 #for windows/py2.7 from time import sleep from selenium import webdriver browser = web ...
- python+selenium自动化软件测试(第14章):基础实战(1)
#coding=utf- from selenium import webdriven from selenium.webdriver.common.by import By from seleniu ...
- python+selenium自动化软件测试(第13章):selenium面试题
前言最近看到群里有小伙伴贴出一组面试题,最近又是跳槽黄金季节,小编忍不住抽出一点时间总结了下 一.selenium中如何判断元素是否存在?expected_conditions模块提供了16种判断方法 ...
- python+selenium自动化软件测试(第10章):测试驱动TDD
测试驱动开发模式,要求开发在写业务代码的时候,先写出测试代码,同时单元测试例子决定了如何来写产品的代码,并且不断的成功的执行编写的所有的单元测试例子,不断的完善单元测试例子进而完善产品代码, 这样随着 ...
- python+selenium自动化软件测试(第8章) :多线程
前戏:线程的基础 运行多个线程同时运行几个不同的程序类似,但具有以下优点:进程内共享多线程与主线程相同的数据空间,如果他们是独立的进程,可以共享信息或互相沟通更容易.线程有时称为轻量级进程,他们并不需 ...
- python+selenium自动化软件测试(第11章):持续集成jenkins和GitHub的使用
11.1 jenkins持续集成环境 相关安装包下载链接:http://pan.baidu.com/s/1qYhmlg4 密码:dcw2赠送jenkins集成selenium环境视频链接http:// ...
- python+selenium自动化软件测试(第9章) :Logging模块
9.1 Logging模块 什么是日志记录?记录是跟踪运行时发生的事件的一种手段.该软件的开发人员将记录调用添加到其代码中,以指示某些事件已发生.事件由描述性消息描述,该消息可以可选地包含可变数据(即 ...
- python+selenium自动化软件测试(第12章):Python读写XML文档
XML 即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进 行定义的源语言.xml 有如下特征: 首先,它是有标签对组成:<aa></aa> ...
- python+selenium自动化软件测试(第7章):Page Object模式
什么是Page ObjectModel模式Page Objects是selenium的一种测试设计模式,主要将每个页面看作是一个class.class的内容主要包括属性和方法,属性不难理解,就是这个页 ...
随机推荐
- pug模板引擎(原jade)
前面的话 为什么要引入pug,pug有什么特别之处呢?有一些嵌套层次较深的页面,可能会出现巢状嵌套,如下图所示 在后期维护和修改时,一不小心少了一个尖括号,或者某个标签的开始和闭合没有对应上,就会导致 ...
- 安装j2ee开发环境
先安装jdk,再安装eclipse ,再安装myeclipse. eclipse与myeclipse必须在图形化界面安装. 1. 挂载光驱/硬盘 mount /mnt/cdrom/ 挂载光驱 ...
- 一步一步学Vue(九)
接上篇,这次是真的接上篇,针对上篇未完成的部分,增加鉴权功能,开始之前,我们先要介绍一个新的知识,路由元数据. 在vue-router中,定义元数据的方式: const router = new Vu ...
- 各种排序算法及其java程序实现
各种排序算法:冒择路(入)兮(稀)快归堆,桶式排序,基数排序 冒泡排序,选择排序,插入排序,稀尔排序,快速排序,归并排序,堆排序,桶式排序,基数排序 一.冒泡排序(BubbleSort)1. 基本思想 ...
- Dapper入门教程(三)——Dapper Query查询
介绍 查询方法(Query)是IDbConnection的扩展方法,它可以用来执行查询(select)并映射结果到C#实体(Model.Entity)类 查询结果可以映射成如下类型: Anonymou ...
- 为Tornado框架加上基于Redis或Memcached的session 【第三方】
Tornado 没有session,只有cookie_secret,这在一些情况下是不利于开发的.所有我们可以给Tornado加上session的功能. 这篇文章讲解的是依靠第三方包来实现.以后的文章 ...
- 原生JS实现各种经典网页特效——Banner图滚动、选项卡切换、广告弹窗等
在制作网页过程中,我们可能会遇到各种常用的经典网页特效,比如Banner图片滚动.选项卡循环播放.右下角广告弹窗.评论提交展示.选项动态增删.剪刀石头布小游戏等等等...是不是感觉都见到过这些场景.那 ...
- 同步读取各平台StreamingAssets文件
//Path为StreamingAssets文件后面的路径 public AssetBundle GetstreamingAssets(string Path) { #if UNITY_EDITOR ...
- 【待整理】MySQL alter table modify vs alter table add产生state不一样
MySQL:5.6.35 OS:redhat5.8 今天更新数据库某些表字段,有如下两SQL: ①alter table xx modify xxxx;(表大概是77w) ②alter table s ...
- 再起航,我的学习笔记之JavaScript设计模式06(抽象工厂模式)
我的学习笔记是根据我的学习情况来定期更新的,预计2-3天更新一章,主要是给大家分享一下,我所学到的知识,如果有什么错误请在评论中指点出来,我一定虚心接受,那么废话不多说开始我们今天的学习分享吧! 前两 ...