API自动化框架
API自动化框架分为conf、data、utils、api、testcase、runner、report、log8个模块。
conf是用来储存系统环境、数据库、邮件等的配置参数、项目的绝对路径、各个模块的绝对路径、各个接口的参数url、data、headers、json、verify(关掉https),其中有ini、yaml、xlsx文件等,通过响应的方法来处理相应的文件。ini文件是section、option、value的形式,一般通过继承configparse模块进行处理,yaml文件的读取是以字典的形式,一般是用@unitest.skip@file_data@unpack装饰器进行读取,xlsx文件主要是通过openxlsx、xlrd、xlwt、xlutils模块进行读取。
data是用来封装进行的是用例的数据,一般是通过xlsx进行读取。
utils模块封装了处理文件、读取数据库内容、发送报告、处理日志等模块。调用数据库用到pymysql模块、控制日志输出用到了logging模块、邮件发送用到了smtp模块和Email模块、处理ini文件用到了configparse模块、读取xlsx用到了openxlsx、xlrd、xlwt、xlutils等模块。
api模块封装了各个接口的发送api请求的方法。通过调用request模块来进行请求的发送。
testcase模块用来封装测试用例。通过unitest测试框架,继承unitest.TestCase类、api模块封装的接口连接方法、使用ddt数据驱动进行测试。
runner模块用来封装要运行的测试用例,可以通过unitest.TestSuite来封装要运行的测试用例,而大部分都是通过unitest.defaultTestLoad.discover()方法来批量指定要运行的测试用例文件、可以通过unitest.TestRunner来运行测试用例,可以通过HTMLTestRunner运行测试用例和生成测试报告。
report是用来储存运行测试用例后的测试报告。
log是用来存储运行测试用例的日志,用到logging模块,设置输出到控制台的日志文件,设置输出到文件的日志等级等。

多测师讲解a'pi自动化框架设计思想_高级讲师肖sir的更多相关文章

  1. 多测师讲解ui自动化框架设计思想_高级讲师肖sir

    UI自动化框架:UI自动化框架可以分为8个模块,conf.data.public.pageobject.testcase.runner.report.log.conf是用来储存系统环境.数据库.邮件的 ...

  2. 多测师讲解unittest介绍及自动化测试实现流程_高级讲师肖sir

    unittest框架介绍 unittest框架是python中一个标准的库中的一个模块,该模块包括许多的类如 test case类.test suit类.texttest runner类.textte ...

  3. 多测师讲解selenium_运行报告相出错归纳_高级讲师肖sir

    <_io.TextIOWrapper name='<stderr>' mode='w' encoding='UTF-8'> EETraceback (most recent c ...

  4. 多测师讲解selenium _a标签定位()_高级讲师肖sir

    shift+ctrl+c 快捷键  调出元素

  5. 多测师讲解selenium_输入性弹框定位_高级讲师肖sir

    #输入性弹框from selenium import webdriverfrom time import sleepdrvier=webdriver.Chrome()url='file:///F:\d ...

  6. 多测师浅谈 学员实现价值就是我们的幸福_高级讲师肖sir

    学员实现价值就是我们的幸福 作为一名资深的IT高级讲师,在传统的行业IT薪资基本都是过万,作为一名IT培训教师,培养出在不同领域的测试,并且接触各种各样的产品,目前市场流行的比如银行业务系统,语音类系 ...

  7. 多测师讲解自动化selenium___定位元素002___高级讲师肖sir

    高级自动化测试python+selenium教程手册 --高级讲师肖sir(Harm) 第 2 章8种定位方法 总结: selenium 的 webdriver 提供了八种基本的元素定位方法,前面六种 ...

  8. 多测师讲解自动化--rf断言(下)--_高级讲师肖sir

    1.Page Should Contain 1.1存在页面上的内容 1.2 不存在页面上的内容, 运行抛异常 1.3 Page Should Not Contain 1.4 1.5 输入页面元素,判断 ...

  9. 多测师讲解自动化--rf关键字--断言(下)_高级讲师肖sir

    断言: 1.1Page Should Contain Maximize Browser Window sleep 2 Comment Page Should Contain hao123 #断言当前页 ...

随机推荐

  1. vue.js 的安装

    包含vue的脚手架的安装. 1,到项目目录下输入 cnpm i -g vue-cli 2,安装完毕后咱们看看.输入 vue 即可看到vue的安装情况. 3,输入 vue list 即可看到框架的选择 ...

  2. jzoj 6797. 【2014广州市选day2】hanoi

    Description 你对经典的hanoi塔问题一定已经很熟悉了.有三根柱子,n个大小不一的圆盘,要求大盘不能压在小盘上,初始时n个圆盘都在第一根柱子上,最少要多少步才能挪到最后一根柱子上? 现在我 ...

  3. 编程体系结构(03):Java集合容器

    本文源码:GitHub·点这里 || GitEE·点这里 一.集合容器简介 集合容器是Java开发中最基础API模块,通常用来存储运行时动态创建的元素,基本特点如下: 泛型特点,存储任意类型对象: 动 ...

  4. django之models字段参数

    字段内部参数: null 数据库中字段是否可以为空 db_column 数据库中字段的列名 db_tablespace default 数据库中字段的默认值 primary_key 数据库中字段是否为 ...

  5. [算法]体积不小于V的情况下的最小价值(0-1背包)

    题目 0-1背包问题,问要求体积不小于V的情况下的最小价值是多少. 相关 转移方程很容易想,初始化的处理还不够熟练,可能还可以更简明. 使用一维dp数组. 代码 import java.util.Sc ...

  6. js动画之轮播图

    一. 使用Css3动画实现 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  7. maven安装配置以及eclipse的配置

    一.需要准备的东西 JDK Eclipse Maven程序包 二.下载与安装 前往https://maven.apache.org/download.cgi下载最新版的Maven程序: 将文件解压到D ...

  8. 1.2Hadoop概述

  9. 利用Python爬取疫情数据并使用可视化工具展示

    import requests, json from pyecharts.charts import Map, Page, Pie, Bar from pyecharts import options ...

  10. 深入研究Broker是如何持久化的

    前言 上篇文章王子和大家讨论了一下RocketMQ生产者发送消息的底层原理,今天我们接着这个话题,继续深入聊一聊RocketMQ的Broker是如何持久化的. Broker的持久化对于整个Rocket ...