#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)的更多相关文章

  1. python+selenium自动化软件测试(第15章):基础实战(2)

    #coding:utf-8 #for windows/py2.7 from time import sleep from selenium import webdriver browser = web ...

  2. python+selenium自动化软件测试(第14章):基础实战(1)

    #coding=utf- from selenium import webdriven from selenium.webdriver.common.by import By from seleniu ...

  3. python+selenium自动化软件测试(第13章):selenium面试题

    前言最近看到群里有小伙伴贴出一组面试题,最近又是跳槽黄金季节,小编忍不住抽出一点时间总结了下 一.selenium中如何判断元素是否存在?expected_conditions模块提供了16种判断方法 ...

  4. python+selenium自动化软件测试(第10章):测试驱动TDD

    测试驱动开发模式,要求开发在写业务代码的时候,先写出测试代码,同时单元测试例子决定了如何来写产品的代码,并且不断的成功的执行编写的所有的单元测试例子,不断的完善单元测试例子进而完善产品代码, 这样随着 ...

  5. python+selenium自动化软件测试(第8章) :多线程

    前戏:线程的基础 运行多个线程同时运行几个不同的程序类似,但具有以下优点:进程内共享多线程与主线程相同的数据空间,如果他们是独立的进程,可以共享信息或互相沟通更容易.线程有时称为轻量级进程,他们并不需 ...

  6. python+selenium自动化软件测试(第11章):持续集成jenkins和GitHub的使用

    11.1 jenkins持续集成环境 相关安装包下载链接:http://pan.baidu.com/s/1qYhmlg4 密码:dcw2赠送jenkins集成selenium环境视频链接http:// ...

  7. python+selenium自动化软件测试(第9章) :Logging模块

    9.1 Logging模块 什么是日志记录?记录是跟踪运行时发生的事件的一种手段.该软件的开发人员将记录调用添加到其代码中,以指示某些事件已发生.事件由描述性消息描述,该消息可以可选地包含可变数据(即 ...

  8. python+selenium自动化软件测试(第12章):Python读写XML文档

    XML 即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进 行定义的源语言.xml 有如下特征: 首先,它是有标签对组成:<aa></aa> ...

  9. python+selenium自动化软件测试(第7章):Page Object模式

    什么是Page ObjectModel模式Page Objects是selenium的一种测试设计模式,主要将每个页面看作是一个class.class的内容主要包括属性和方法,属性不难理解,就是这个页 ...

随机推荐

  1. SQL Server系列之SQL Server 2016 中文企业版详细安装步骤(超多图)

    1. 下载地址 下载地址 :https://www.microsoft.com/en-us/server-cloud/products/sql-server-2016/ 官方技术文档:https:// ...

  2. SetConsoleWindowInfo 函数--设置控制台窗口的大小和位置

    SetConsoleWindowInfo函数 来源:https://msdn.microsoft.com/en-us/library/windows/desktop/ms686125(v=vs.85) ...

  3. 【CSS】background 的覆盖

    1. 样式覆盖问题描述 现象:class1 为dom节点默认样式,class2为dom节点后增加样式,发现class2的background 被class1的覆盖 解决办法:在class2 的back ...

  4. HDU-4787 GRE Words Revenge 解题报告

    这是我之前博客里提到的一道AC自动机的练手题,但是要完成这道题,我之前博客里提到的东西还不够,这里总结一下这道题. 这道题不是一般的裸的AC自动机,它的询问和插入是交叉出现的所以用我之前写的板子不大合 ...

  5. react 入门教程 阮一峰老师真的是榜样

    -  转自阮一峰老师博客 React 入门实例教程   作者: 阮一峰 日期: 2015年3月31日 现在最热门的前端框架,毫无疑问是 React . 上周,基于 React 的 React Nati ...

  6. 服务器运行环境部署(PHP)

    1.使用的是腾讯云服务器,系统为centOS: 2.LAMP环境配置查看:https://cloud.tencent.com/document/product/213/8043: 3.mysql-se ...

  7. Redux源码分析之applyMiddleware

    Redux源码分析之基本概念 Redux源码分析之createStore Redux源码分析之bindActionCreators Redux源码分析之combineReducers Redux源码分 ...

  8. HDU1002——大整数加法

    题目: I have a very simple problem for you. Given two integers A and B, your job is to calculate the S ...

  9. NYOJ--113--字符串替换

    /* Name: NYOJ--113--字符串替换 Author: shen_渊 Date: 18/04/17 15:41 Description: 字符串水题,秒过 */ #include<b ...

  10. iframe中的模态框遮罩父窗口原理

    关键点: css的position定位为fixed或absolute css的z-index, 最顶层的值最大如遮罩层为0那么弹出框最好是大于等于1的整数,总之记住弹出层要比遮罩的z-index值大就 ...