#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. Java网络连接之HttpURLConnection、HttpsURLConnection

    工具类包含两个方法: http请求.https请求 直接看代码: package com.jtools; import java.io.BufferedReader; import java.io.I ...

  2. tensorflow l2_normalize函数

    1.l2_normalize函数 tf.nn.l2_normalize(x, dim, epsilon=1e-12, name=None) 解释:这个函数的作用是利用 L2 范数对指定维度 dim 进 ...

  3. 安装harbor私有镜像仓库

    有朋友安装harbor的过程中遇到很多问题,为此写一篇最简单安装harbor的文档,希望能帮助所有刚开始接触harbor的新手.harbor的架构不做探究. 实验验环境:os --> cento ...

  4. Angularjs基础(学习整理)

    AngularJS 通过 ng-directives 扩展了 HTML. ng-app 指令定义一个 AngularJS 应用程序. ng-model 指令把元素值(比如输入域的值)绑定到应用程序. ...

  5. PHP中通过sqlsrv调用存储过程——成绩排名去除重复字段的数据行

    培训考试项目中,需要实现考试成绩排名:排名参考项为分数(score降序).参加日期(attendtime升序).第几次参加考试(frequency升序):并且,每个用户只保留一条数据(pid). 考试 ...

  6. Verilog HDL程序设计——基本要素

    Verilog基本上熟悉了,继续整理一下Verilog的学习笔记吧.前面记载了Verilog的结构,写Verilog的结构有了,但是该怎么写呢?在写之前就得了解一下Verilog的一些基本要素了,也就 ...

  7. JS遍历属性和方法

    引用原文:http://www.cnblogs.com/lishenglyx/archive/2008/12/08/1350573.html#undefined <script language ...

  8. javascript基础知识3#引用类

    引用类 引用类型的只是引用类型的一个实例,在ecmascript当中,引用类型是一种数据结构用于将数据和功能组织在一起,也常被称做类. object类型 构造函数[var o = new object ...

  9. 8. Andrénalin ★ Serial

    无花无壳爆破/硬编码 istcmp字符串比较 "<BrD-SoB>" 仅允许非商业转载,转载请注明出处

  10. Dom的增删查改以及常用事件

    dom的增删查改 // 查 var _input = document.getElementById('_input'); var _div = document.getElementsByClass ...