文档章节

Python+Selenium搭建UI自动化测试框架

FunGa
 FunGa
发布于 2015/09/06 11:45
字数 590
阅读 8919
收藏 11

本文原文来自GitHub个人主页 > Python+Selenium搭建UI自动化测试框架

Python语言是非常强大的编程语言,很多时候也拿来当脚本语言用。

Selenium是web应用测试工具,支持Java、Python等多种语言脚本,支持Chrome、Firefox等多种主流浏览器。主要实现的就是模拟人使用web应用,自动的打开浏览器、打开应用、进入应用进行各种模拟业务操作等等。

接下来,一步一步带领大家实现下Python+Selenium实现使用脚本自动发微博的功能。

1、Python安装

一般Linux系统自带了Python,Windows系统可以参考本人之前文章 【Python基础教程】第一章 入门简介 去安装Python

2、Selenium安装

#进入selenium安装包
cd selenium-2.47.1 
#安装selenium
python setup.py install
#进入Python解释器
python
#导入Selenium
import selenium

如果导入没有报错,说明已经成功安装了Selenium。

3、Xpath

我们使用Xpath定位页面元素,所以,如果不懂Xpath,建议先去了解一下。Xpath教程

4、使用Selenium发微博脚本

#!/usr/bin/python
#-*-coding:utf8-*-
from selenium import webdriver
import time

#获得一个火狐浏览器对象,会打开火狐
ff = webdriver.Firefox()
#会进入weibo.com
ff.get('http://weibo.com/')
#每步操作留3秒时间  
time.sleep(3)
#输入用户名(你的微博账号)
ff.find_element_by_xpath("/html/body/div[1]/div[1]/div/div[1]/div[2]/div/div[2]/div[3]/div[2]/div[1]/div/input").send_keys('xxx@sina.cn')
time.sleep(3)
#输入密码(你的微博密码)
ff.find_element_by_xpath("/html/body/div[1]/div[1]/div/div[1]/div[2]/div/div[2]/div[3]/div[2]/div[2]/div/input").send_keys('*******')
time.sleep(3)
#点击登录
ff.find_element_by_xpath("/html/body/div[1]/div[1]/div/div[1]/div[2]/div/div[2]/div[3]/div[2]/div[6]/a").click()

#写微博
time.sleep(10)
ff.find_element_by_xpath('/html/body/div[1]/div/div[2]/div[3]/div[2]/div[1]/div[1]/div/div[2]/textarea').send_keys('test from selenium')
#发布
time.sleep(3)
ff.find_element_by_xpath('/html/body/div[1]/div/div[2]/div[3]/div[2]/div[1]/div[1]/div/div[3]/div[1]/a').click()

5、执行脚本

python weibo.py


本文原文来自GitHub个人主页 > Python+Selenium搭建UI自动化测试框架

© 著作权归作者所有

FunGa
粉丝 5
博文 10
码字总数 11477
作品 0
东城
私信 提问
Python+Selenium自动化

1,什么是selenium selenium是一个开源的自动化测试框架,主要适用WEB测试,可以支持多种语言(Java, C#, Python,php等),既然支持多语言开发,那跨平台自然就不用多说啦,selenium有几个版本...

拉夫斯基
2015/12/01
239
0
Android 自动化测试资料汇总

android常用自动化测试框架 Android UI 自动化测试 使用uiautomator做UI测试 .在 Android studio 上运用 UI Automator 执行自动化测试 Android Espresso(UI自动化测试)的搭建 Android UI 自动...

IT追寻者
2016/07/19
219
0
selenium使用chrome时,报错ignore certificate errors

使用python+selenium驱动chrome做自动化测试是一个很常见的场景,以前使用chrome时页面头部出现了一个小黄条报错提示“您使用的是不受支持的命令行标记:--ignore-certificate-errors。稳定性...

rasine的杂货铺
2015/12/28
8.6K
1
Docker + selenium + jenkins 并行跑自动化测试

背景 目标:使用docker做UI自动化测试并在Jenkins运行 调试环境:MocOS 运行环境:Linux ubuntu + docker 涉及工具:docker,selenium,unittest, jenkins 基本思路 找一个适合做自动化的doc...

呐呐丶嘿
2018/12/11
522
0
docker+robot framework+selenium并发web应用UI自动化测试实践

自己在日常测试中,会搭建UI自动化测试框架来进行web应用的回归测试,在这过程中遇到了许多问题,如测试脚本和执行机不分离,串行测试效率低下,环境搭建麻烦等问题。在这个过程中,自己也在...

Ivanli1990
2017/09/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

只需一步,在Spring Boot中统一Restful API返回值格式与统一处理异常

统一返回值 在前后端分离大行其道的今天,有一个统一的返回值格式不仅能使我们的接口看起来更漂亮,而且还可以使前端可以统一处理很多东西,避免很多问题的产生。 比较通用的返回值格式如下:...

晓月寒丶
今天
58
0
区块链应用到供应链上的好处和实际案例

区块链可以解决供应链中的很多问题,例如记录以及追踪产品。那么使用区块链应用到各产品供应链上到底有什么好处?猎头悬赏平台解优人才网小编给大家做个简单的分享: 使用区块链的最突出的优...

猎头悬赏平台
今天
27
0
全世界到底有多少软件开发人员?

埃文斯数据公司(Evans Data Corporation) 2019 最新的统计数据(原文)显示,2018 年全球共有 2300 万软件开发人员,预计到 2019 年底这个数字将达到 2640万,到 2023 年达到 2770万。 而来自...

红薯
今天
61
0
Go 语言基础—— 通道(channel)

通过通信来共享内存(Java是通过共享内存来通信的) 定义 func service() string {time.Sleep(time.Millisecond * 50)return "Done"}func AsyncService() chan string {retCh := mak......

刘一草
今天
57
0
Apache Flink 零基础入门(一):基础概念解析

Apache Flink 的定义、架构及原理 Apache Flink 是一个分布式大数据处理引擎,可对有限数据流和无限数据流进行有状态或无状态的计算,能够部署在各种集群环境,对各种规模大小的数据进行快速...

Vincent-Duan
今天
50
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部