---恢复内容开始---

主要使用的模块:

  1. selenium/webdriver模块(须准备Chrome驱动),主要用于调用浏览器实现自动点击。
  2. unittest模块,主要用于整合测试用例。
  3. xlrd模块,主要用于调用Excle获取测试数据。
  4. HTMLTestRunnerCN模块,主要用于生成测试报告。

框架分层思路:

  • 常用函数层
  • 测试数据层
  • 测试元素层
  • 测试用例层
  • 测试结果层

详细解释层级划分:

  一、常用函数层:主要写常用的一些类,方便后面调用,如:selenium调用浏览器、读取URL的EXCEL、读取用户数据的EXCEL等

  二、测试数据层:主要存放一些用户数据/URL/测试数据等到EXCEL中方便后续调用 我这里存放的主要有:

  1. 测试网站的URL。
  2. 项目中不同权限用户的用户名和密码
  3. 常用配置文件信息

  三、测试元素层:主要存放一些较长的Xpath和Css定位路径,使后续脚本简洁

  四、测试用例层:主要使用unittest模块 创建测试用例:

class Test(unittest.TestCase):
def setUp(self):
self.flag = 1
self.ca = function.OpenChrome()
self.br = function.OpenChrome().open()
self.xpath = element.Element()
self.eid = element.ID()
self.css = element.Css()
self.temp = function.Openurl()
self.br.maximize_window()
#以上为定义unittest类,并在setUp中添加前置条件 def test_登录用户(self):...
def test_xxx(self):...
def test_xxx(self):...
def test_xxx(self):...
def test_xxx(self):...
#以上为使用test__xx函数逐个创建测试用例 def tearDown(self):
self.assertEqual(self.flag,1,msg="用例执行失败")
self.br.close()
#以上为添加后置条件,如:断言,关闭浏览器等

  五、测试结果层:主要使用HTMLTestRunnerCN模块生成测试报告:

    filepath = '../result/Yunque_result.html'
fp = open(filepath,'wb')
runner = HTMLTestRunnerCN.HTMLTestReportCN(stream=fp,title='xx测试报告',tester='测试人员',description = '报告中描述部分')
runner.run(suite)

测试结果如下图:

python+selenium自动化框架的更多相关文章

  1. python+selenium自动化框架搭建

    环境及使用软件信息 python 3 selenium 3.13.0 xlrd 1.1.0 chromedriver HTMLTestRunner 说明: selenium/xlrd只需要再pytho ...

  2. python+selenium+unnittest框架

    python+selenium+unnittest框架,以百度搜索为例,做了一个简单的框架,先看一下整个项目目录结构 我用的是pycharm工具,我觉得这个工具是天使,超好用也超好看! 这些要感谢原作 ...

  3. python selenium自动化点击页面链接测试

    python selenium自动化点击页面链接测试 需求:现在有一个网站的页面,我希望用python自动化的测试点击这个页面上所有的在本窗口跳转,并且是本站内的链接,前往到链接页面之后在通过后退返回 ...

  4. python+selenium自动化登录dnf11周年活动界面领取奖励登录部分采坑总结[1]

    背景: Dnf的周年庆活动之一,游戏在6月22日 06:00~6月23日 06:00之间登陆过游戏后可以于6月25日 16:00~7月04日 06:00领取奖励 目标:连续四天自动运行脚本,自动领取所 ...

  5. Python+selenium 自动化-启用带插件的chrome浏览器,调用浏览器带插件,浏览器加载配置信息。

    Python+selenium 自动化-启用带插件的chrome浏览器,调用浏览器带插件,浏览器加载配置信息.   本文链接:https://blog.csdn.net/qq_38161040/art ...

  6. Python+Selenium自动化总结

    Python+Selenium自动化总结 1.环境搭建 1.1.安装selenium模块文件 pip install selenium 1.2.安装ChromeDriver驱动 [1]下载安装Chro ...

  7. Python+Selenium自动化-定位一组元素,单选框、复选框的选中方法

    Python+Selenium自动化-定位一组元素,单选框.复选框的选中方法   之前学习了8种定位单个元素的方法,同时webdriver还提供了8种定位一组元素的方法.唯一区别就是在单词elemen ...

  8. Python+Selenium自动化-模拟键盘操作

    Python+Selenium自动化-模拟键盘操作   0.导入键盘类Keys() selenium中的Keys()类提供了大部分的键盘操作方法:通过send_keys()方法来模拟键盘上的按键. # ...

  9. Python+Selenium自动化-设置等待三种等待方法

    Python+Selenium自动化-设置等待三种等待方法   如果遇到使用ajax加载的网页,页面元素可能不是同时加载出来的,这个时候,就需要我们通过设置一个等待条件,等待页面元素加载完成,避免出现 ...

随机推荐

  1. CCPC-Wannafly Camp #2 (部分题解)

    L: New Game! 题目描述: Eagle Jump公司正在开发一款新的游戏.泷本一二三作为其员工,获得了提前试玩的机会.现在她正在试图通过一个迷宫. 这个迷宫有一些特点.为了方便描述,我们对这 ...

  2. 【Ehcache】基础知识学习

    一.Ehcache概述 1.1 简介 1.2 Ehcache的主要特性 二.Ehcache使用介绍 2.1 Ehcache缓存过期策略 2.2 如何解决缓存与db不同步的问题. 三.Ehcache 基 ...

  3. 【Offer】[34] 【二叉树中和为某一值的路径】

    题目描述 思路分析 测试用例 Java代码 代码链接 题目描述 输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径.从树的根节点开始往下一直到叶节点所经过的节点形成一条路径.  ...

  4. git 中文乱码-一次被坑经历

    git log和gitcommit中文出现乱码,花了大半天的时间试了网上的各种方法,还是搞不定. 只好放大招. 卸载软件后重装,还是不行.然后git config --list 发现一些奇怪的配置信息 ...

  5. Python编译器及Sublime Text3安装及开发环境配置

    1.初学Python,你需要一个好的开发编辑器 在选择Python编辑器时,可能纠结于那个Python的版本更好一些,在Python2.x和Python3.x版本中, Python3.x版本更好一些, ...

  6. windows update自启动解决方法

    win+r打开运行,输入services.msc打开服务面板 找到Windows update服务,将常规选项卡的启动类型改为禁用,然后选择恢复选项卡,将三个失败选项都改为无操作 win+r打开运行, ...

  7. DevExpress的对话框XtraMessageBox的使用

    场景 在Winform中一般弹出对话框使用的是MessageBox,而在 DevExpress中使用的是XtraMessageBox实现对话框. 效果 实现 首先新建确认按钮的调用方法: public ...

  8. 开源导入导出通用库Magicodes.ExporterAndImporter发布

    导入导出通用库 Magicodes.ExporterAndImporter为心莱团队封装的导入导出通用库,并且仍在跟随项目不断地打磨. GitHub地址: https://github.com/xin ...

  9. 即时聊天APP(二) - MainActivity

    主活动包含三个Fragment,分别是会话.联系人和设置,初始布局隐藏所有碎片,然后把应该显示的显示出来: //隐藏所有Fragment private void hideAll(){ Fragmen ...

  10. TestNG(十一) 超时测试

    package com.course.testng.suite; import org.testng.annotations.Test; public class TimeOutTest { @Tes ...