一.execl数据驱动 1.xlutils简要说明 导包:pip3 install xlutils 注意⚠️:xlutils在介些Execl文件的时候,只识别.xls后缀的文件,如果是.xlsx后缀的文件被解析,.xlsx后缀的文件会被破坏 2.接口自动化中对execl简单的读取 #!/user/bin/env python #coding:utf-8 #Author:shenqiang '''xlrd写入文件,同时清空原文件''' import xlrd import os '''拿到文件的路…
环境准备 1.安装ddt模块,打开cmd输入pip install ddt在线安装 数据驱动原理 1.测试数据为多个字典的list类型 2.测试类前加修饰@ddt.ddt 3.case前加修饰@ddt.data() 4.运行后用例会自动加载成三个单独的用例 # coding:utf-8 import ddt import unittest # 测试数据 test_data1 = [{"username": "zhangsan", "pwd": &…
前言 有很多小伙伴在拿163作为登录案例的时候,发现不管怎么定位都无法定位到,到底是什么鬼呢,本篇详细介绍iframe相关的切换 以http://mail.163.com/登录页面10为案例,详细介绍switch_to_frame使用方法. 一.frame和iframe区别 Frame与Iframe两者可以实现的功能基本相同,不过Iframe比Frame具有更多的灵活性. frame是整个页面的框架,iframe是内嵌的网页元素,也可以说是内嵌的框架 Iframe标记又叫浮动帧标记,可以用它将一…
章节:自动化基础篇——自动化预备知识上&&下 主要讲解内容及笔记: 一.需要具备的能力: 测试一年,编程一年,熟悉并掌握业界自动化测试工具(monkey--压力测试.monkeyrunner--基于坐标点的可用作功能测试和回归测试.robotium.UIAutomator-google2013年推出的基于控件的框架),Python脚本写过自动化 二.希望具备能力: 1.linux命令(上学学过,但是忘记了,需要回顾和使用) 2.会android简单开发(只是停留在超级基础阶段,还需要看教程…
前言 selenium2启动Chrome浏览器是需要安装驱动包的,但是不同的Chrome浏览器版本号,对应的驱动文件版本号又不一样,如果版本号不匹配,是没法启动起来的. 一.Chrome遇到问题 1.如果在启动chrome浏览器时候,出现如下界面,无法打开网址,那么首先恭喜你,踩到了坑,接下来的内容或许对你有所帮助 >># coding:utf-8>>from selenium import webdriver >>driver = webdriver.Chrome()…
前言 在设计用例的时候,有些用例只是参数数据的输入不一样,比如登录这个功能,操作过程但是一样的.如果用例重复去写操作过程会增加代码量,对应这种多组数据的测试用例,可以用数据驱动设计模式,一组数据对应一个测试用例,用例自动加载生成. 一.环境准备 1.安装ddt模块,打开cmd输入pip install ddt在线安装 >>pip install ddt 二.数据驱动原理 1.测试数据为多个字典的list类型 2.测试类前加修饰@ddt.ddt 3.case前加修饰@ddt.data() 4.运…
前言 批量执行完用例后,生成的测试报告是文本形式的,不够直观,为了更好的展示测试报告,最好是生成HTML格式的. unittest里面是不能生成html格式报告的,需要导入一个第三方的模块:HTMLTestRunner 一.导入HTMLTestRunner 1.这个模块下载不能通过pip安装了,只能下载后手动导入,下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html 2.Download下HTMLTestRunner.py文件就是我们需…
前言 有不少小伙伴在安装selenium环境后启动firefox报错,因为现在selenium升级到3.0了,跟2.0的版本还有有一点区别的. 安装环境过程中主要会遇到三个坑: 1.'geckodriver' executable needs to be in PATH 2.Expected browser binary location, but unable to find binary in default location 3.Unsupported Marionette protoco…
前言 系统弹窗这个是很常见的场景,有时候它不弹出来去操作的话,会抛异常.那么又不知道它啥时候会出来,那么久需要去判断弹窗是否弹出了. 本篇接着Selenium2+python自动化42-判断元素(expected_conditions)讲expected_conditions这个模块 一.判断alert源码分析 class alert_is_present(object):    """ Expect an alert to be present.""&q…
前言 获取页面title的方法可以直接用driver.title获取到,然后也可以把获取到的结果用做断言. 本篇介绍另外一种方法去判断页面title是否与期望结果一种,用到上一篇Selenium2+python自动化42-判断元素(expected_conditions) 提到的expected_conditions模块里的title_is和title_contains两种方法 一.源码分析 1.首先看下源码,如下 class title_is(object):    """…