11 2019 档案

摘要:我们在做自动化的时候可能会遇到选择日期这种情况 这个时候我们可能就会想到直接定位不就可以了,为啥还要使用js这种东西呢? 首先,我们想一下定位:定位不仅麻烦而且还不稳定,所以这种方式我是直接就弃用了 还是总结下js怎么使用吧 这里我一12306网站为例子: 在这里我们需要选择日期,那么我们用js怎么 阅读全文
posted @ 2019-11-29 10:41 大渝 阅读(239) 评论(0) 推荐(0)
摘要:在做UI自动化我们可能会遇到 上传文件操作 上传文件有两种情况: input标签 非input标签 1、对于input标签的话我们直接传递一个路径就可以了 2、对于非input标签的话,我们需要借助第三方工具来实现了: AutoIt 调用其生成的au3或者是exe文件,太麻烦了,我们不用 SendK 阅读全文
posted @ 2019-11-29 10:32 大渝 阅读(460) 评论(0) 推荐(0)
摘要:昨天遇到了一个问题,在京东页面,元素是动态加载的,这个怎么获取呢? 今天总结下这个动态加载的元素获取 因为京东这个网页东西太多,元素也有很多,所以处理的为动态加载,何为动态加载呢?也就是说,滑动到可视区域后才会加载。那么有人可能会有疑问说什么是可视区域呢? 看图说话: 整个红框就可以看成是可视区域, 阅读全文
posted @ 2019-11-28 13:26 大渝 阅读(1224) 评论(0) 推荐(0)
摘要:在做UI自动化项目的时候,我们不免会遇到一些页面的内容比较多,导致会有滚动条,但是我们又主要操作当前页面看不到的元素,这怎么办呢? 在我们实际操作过程中,我们肯定是直接滑动鼠标操作就可以完成,但是在做自动化的时候,我们怎么办呢? 今天总结下用js代码来实现滚动条的操作 在selenium中是使用ex 阅读全文
posted @ 2019-11-26 16:38 大渝 阅读(2594) 评论(0) 推荐(0)
摘要:在web自动化中,我们可能会遇到需要通过键盘或者鼠标去操作某些元素,那么我们就需要用到键盘事件和鼠标事件了,今天对键盘和鼠标操作进行一个总结 鼠标事件 鼠标事件需要引入ActionChains类,查看源码可以看到ActionChains初始化需要传递的是当前会话 鼠标操作的步骤: 1、储存鼠标操作 阅读全文
posted @ 2019-11-26 10:49 大渝 阅读(187) 评论(0) 推荐(0)
摘要:我们在做UI自动化时,不得不会遇到一些窗口跳转与弹框,在这种的时候如果不进行切换的话,继续执行脚本必然会报错,所以我们就需要用到切换窗口的方法。 selenium中主要是三种窗口 Windows窗口 iframe窗口 alert窗口 1、Windows窗口 这类窗口也就是我们常说的句柄,句柄的切换是 阅读全文
posted @ 2019-11-24 14:26 大渝 阅读(3209) 评论(0) 推荐(0)
摘要:之前有总结到说定位元素的方法,我习惯是用xpath的,上篇文章已经提到过怎么用xpath来定位,在我们做UI自动化,定位到了元素,但是在页面中元素不一定被渲染出来了,这个时候我们运行脚本肯定会给你报错的,那么我们怎么解决这种问题呢? selenium中有三大定位方式可以解决这种问题: 强制等待 隐性 阅读全文
posted @ 2019-11-23 14:28 大渝 阅读(262) 评论(0) 推荐(0)
摘要:做web自动化,之前我们已经将环境搭建好了,现在的话总结下怎么定位元素的 最基本的元素定位是有6种: driver.find_element_by_id("") driver.find_element_by_class_name("") driver.find_element_by_link_tex 阅读全文
posted @ 2019-11-21 11:12 大渝 阅读(1762) 评论(0) 推荐(0)
摘要:之前有人问过我,在接口自动化中,测试数据是怎么写的,比如我的注册接口里面,注册的是手机号码,怎么保证我的手机号每次都不一样呢?下面我就介绍下我是怎么处理这个问题的吧 首先,比如注册接口就只有手机号这个参数(这是举个栗子哈) 我们写测试数据可以这么写:{"phone":"#phone#"} 那么问题来 阅读全文
posted @ 2019-11-15 16:13 大渝 阅读(430) 评论(0) 推荐(0)
摘要:selenium是一个运用于web自动化的工具,大家一定知道测试中的金字塔模型吧 从金字塔模型可以看出,单元测试>接口自动糊>UI自动化,既然前面我们做了接口自动化后为什么还要做UI自动化呢? UI层面上都是由前端工程师去做的,前端工程师一般常用的就是HTML、JS、CSS,他们也是有自己的逻辑处理 阅读全文
posted @ 2019-11-14 10:19 大渝 阅读(330) 评论(0) 推荐(0)
摘要:前面已经说了很多关于接口自动化所用到的库以及封装代码了,但是可能有的小伙伴还是对于接口自动化的框架到底是怎么个构建 今天我主要在这里分享下我自己搭建的一个简单的接口自动化框架 上面就是我整个接口自动化的框架示意图,下面简单那介绍下各个模块的作用 项目名称: 公用方法: db_handler.py:这 阅读全文
posted @ 2019-11-12 16:50 大渝 阅读(297) 评论(0) 推荐(0)
摘要:上次我们提到了unittest单元测试框架,运用单元测试框架unittest进行编写测试用例 但是遇到了一个问题,就是难道我一个测试点中有多个测试用例,我要每一个都要去编写一条测试用例嘛?这实在是太复杂了,人工成本太高了 经过一系列的挣扎,最开始是使用的for循环实现的,这个也可以,但是过于累赘,然 阅读全文
posted @ 2019-11-12 15:12 大渝 阅读(1058) 评论(0) 推荐(1)
摘要:今天我介绍一个测试框架:不管我们是做接口自动化还是UI自动化,我们都要用的一个框架 unittest unittest是python里面的一个单元测试框架,我们做自动化测试的话,都是要用到这个测试框架的(当然,我们也可以用pytest) 下面介绍下unittest的一些简单特性吧, 1、unitte 阅读全文
posted @ 2019-11-11 15:41 大渝 阅读(344) 评论(0) 推荐(1)
摘要:我们在做接口自动化项目,自己做框架的话,肯定是要用到配置文件的,因为做框架肯定是避免不了将一些数据或者配置项什么的给放到配置文件中去,当然配置文件我们可以用很多种形式, 比如说:.ini 、.config、.py等文件其实都可以作为我们的配置文件,这个就看自己的一些目的了,去选择最优的配置文件类型 阅读全文
posted @ 2019-11-11 14:47 大渝 阅读(601) 评论(0) 推荐(1)
摘要:前面已经写到了日志类的封装了,因为我们做接口自动化避免不了需要连接数据库做一些数据库的查询,或者是断言数据库中的数据 这些操作我们都是需要连接数据库的,在企业中用的最广泛的还是MySQL,下面我来说下怎么连接MySQL数据库的吧! 在python中连接MySQL数据库用的是pymysql这个库 安装 阅读全文
posted @ 2019-11-05 19:26 大渝 阅读(1081) 评论(0) 推荐(1)
摘要:上篇随笔已经写到了读取Excel类的封装了,下面就写下日志类, 日志类在我们自动化的过程中是十分重要的,在我们的自动化程序出现异常的时候就可以打印日志 下面是我自己封装的日志类 import logging import os import time from common.path_dir imp 阅读全文
posted @ 2019-11-01 10:11 大渝 阅读(809) 评论(0) 推荐(2)