python selenium 自动化流程的一些总结与思考
首先要考虑的项目为什么要做自动化测试?(主要从自动化测试的优点着手)
其次是什么项目才适合做自动化测试?
自动化测试覆盖率要达到什么样的程度?因为都知道不可能达到100%的,不然脚本太臃肿,反而会失去初衷,偏离目标。
再次再来解决如何做自动化测试?
自动化测试主要流程有哪些呢?如何开展的问题等。
先是战略上清晰,才能开始解决战术上的问题,如:如何开展自动化测试,自动化测试的主要流程等问题。
因为不是任何系统都可以做自动化测试的,当然,局部还是可以的。
下面来讲一讲本人做自动化测试时的一些大概思路与步骤吧。
1,安装PYTHON,配置好环境,下载浏览器的驱动并配置在PYTHON的根目录下。(我用的是谷歌浏览器的驱动,大家可以随机选择别的浏览器驱动,操作步骤一致)
2,下载PYTHON的编辑器,也可以使用IDLE,我用的是PYCHARM,功能很强大,自动补全功能用起来很舒服,而且报错有提示。方便定位问题。
3,安装SELENIUM,我是直接用PIP命令安装,省时省力。
以上是基本的环境配置,完成后,再继续下面的自动化的的操作。(前提是理解了业务需求)
1,根据业务需求,初步写一次冒烟测试的自动化,有助于了解各个业务步骤,同时为后面的用例的撰写提供了大概的思路。
2,开始定义函数,把相同步骤,相似操作的步骤分别定义为一个函数,同时,函数的参数进行参数化。(这一步很重要,需要仔细,参数化可以是文本内容,也可以是定位的元素。)
3,当定义了多个函数后,就可以开始写自动化用例了,把多个函数组装成一个用例,此时的用例内是有数据的。
4,把组装好的用例内的数据剥离出来,我是记录在EXCEL表格中。(方便后期更改数据来驱动测试)
5,利用PYTHON的单元测试框架,把用例组织,执行,并查看结果。
持续更新中,
python selenium 自动化流程的一些总结与思考的更多相关文章
- python selenium自动化点击页面链接测试
python selenium自动化点击页面链接测试 需求:现在有一个网站的页面,我希望用python自动化的测试点击这个页面上所有的在本窗口跳转,并且是本站内的链接,前往到链接页面之后在通过后退返回 ...
- python+selenium自动化登录dnf11周年活动界面领取奖励登录部分采坑总结[1]
背景: Dnf的周年庆活动之一,游戏在6月22日 06:00~6月23日 06:00之间登陆过游戏后可以于6月25日 16:00~7月04日 06:00领取奖励 目标:连续四天自动运行脚本,自动领取所 ...
- Python+selenium 自动化-启用带插件的chrome浏览器,调用浏览器带插件,浏览器加载配置信息。
Python+selenium 自动化-启用带插件的chrome浏览器,调用浏览器带插件,浏览器加载配置信息. 本文链接:https://blog.csdn.net/qq_38161040/art ...
- Python+Selenium自动化总结
Python+Selenium自动化总结 1.环境搭建 1.1.安装selenium模块文件 pip install selenium 1.2.安装ChromeDriver驱动 [1]下载安装Chro ...
- Python+Selenium自动化-定位一组元素,单选框、复选框的选中方法
Python+Selenium自动化-定位一组元素,单选框.复选框的选中方法 之前学习了8种定位单个元素的方法,同时webdriver还提供了8种定位一组元素的方法.唯一区别就是在单词elemen ...
- Python+Selenium自动化-模拟键盘操作
Python+Selenium自动化-模拟键盘操作 0.导入键盘类Keys() selenium中的Keys()类提供了大部分的键盘操作方法:通过send_keys()方法来模拟键盘上的按键. # ...
- Python+Selenium自动化-设置等待三种等待方法
Python+Selenium自动化-设置等待三种等待方法 如果遇到使用ajax加载的网页,页面元素可能不是同时加载出来的,这个时候,就需要我们通过设置一个等待条件,等待页面元素加载完成,避免出现 ...
- Python+Selenium自动化-清空输入框、输入内容、点击按钮
Python+Selenium自动化-清空输入框.输入内容.点击按钮 1.输入内容 send_keys('valve'):输入内容valve #定位输入框 input_box = browser. ...
- Python+Selenium自动化-设置浏览器大小、刷新页面、前进和后退
Python+Selenium自动化-设置浏览器大小.刷新页面.前进和后退 1.设置浏览器大小 maximize_window():设置浏览器大小为全屏 set_window_size(500,5 ...
随机推荐
- jmeter添加自定义扩展函数之Strng---base64解密
1,打开eclipse,新建maven工程,在pom中引用jmeter核心jar包,具体请看---https://www.cnblogs.com/guanyf/p/10863033.html---,这 ...
- springboot 应用程序的文件检索描述
SpringApplication从application.properties以下位置的文件加载属性并将它们添加到Spring Environment: 一个/config当前目录下的子目录. 当前 ...
- swoole webSocket 聊天室示例
swoole1.7.9增加了内置的WebSocket服务器支持,通过几行PHP代码就可以写出一个异步非阻塞多进程的WebSocket服务器. 基于swoole websocket的用户上下线通知,在线 ...
- 【Oracle】详解v$session
首先查看一下v$session都存在哪些列 SYS@ORCL>desc v$session Name Null? ...
- docker调用yum时“"/usr/libexec/urlgrabber-ext-down" is not installed”
原因: 1 docker镜像为高版本的fedora30:latest镜像,yum本身已被dnf替代,但部分功能仍不完整: 如:yum-builddep SPECS/xxx.spec 解决办法: 1 安 ...
- Java管理Cookie增删改查操作。
Cookie属性 了解这几个属性之后,就知道如何进行Cookie的操作了. name Cookie的名称. value Cookie的值. maxAge Cookie的失效时间,有以下几种值,默认为- ...
- C#反射的实现
一,什么是反射? 1,System.Reflection 命名空间中的类与 System.Type 使你能够获取有关加载的程序集和其中定义的类型的信息,如类.接口和值类型. 可以使用反射在运行时创建. ...
- PHP多选测试练习
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- elasticsearch Mapping使用自定义分词器
创建索引及配置分析器 PUT /my_index { "settings": { "analysis": { "char_filter": ...
- runtime之归档和解档
IOS开发之NSCoding协议(使用runtime)近期学习IOS的runtime库,然后看到之前写的NSCoding协议有点复杂,如果属性少还好,如果100多个属性,则会显得麻烦.下面使用常规方式 ...