基础知识已经准备的差不多了,今天开始我们就开始写我们的接口测试框架,框架结构已经说过了:

今天我们先完善需要的常量,也就是setting.py文件中的内容,代码如下:

  1. # coding: utf-8
  2. import logging
  3. import os
  4. import time
  5. import inspect
  6. '''
  7. Log日志设置
  8. '''
  9. # 获取当前文件路径
  10. file_path = inspect.stack()[0][1]
  11. cwd = os.path.split(file_path)[0]
    # 以下设置会在log文件夹下生成.log日志,如上图
  12. logging.basicConfig(level=logging.DEBUG,
  13.                    format='%(asctime)s '
  14.                            '%(filename)s '
  15.                            '%(funcName)s '
  16.                            '[line:%(lineno)d] '
  17.                            '%(levelname)s '
  18.                            ':%(message)s',
  19.                    datefmt='%Y-%m-%d %H:%M:%S',
  20.                    filename='%s/log/%s.log' % (cwd, time.strftime("%y-%m-%d")),
  21.                    filemode='a')
  22. '''
  23. ENVIRONMENT CONFIG
  24. '''
  25. ENVIRONMENT_CONFIG = {
  26.    "interfaceUrl": {
  27.        "login": "接口地址"
  28.    }
  29. }
  30. '''
  31. 电子邮件配置
  32. '''
  33. EMAIL_CONFIG = {
  34.    'sender':'你的发件邮箱',
  35.    'receiver':'收件邮箱',
  36.    'subject':u'测试报告',
  37.    'smtpserver':'smtp.163.com',
  38.    'username': 'abc@163.com',
  39.    'password': '你的授权码'
  40. }

setting.py文件放的是我们用到的一些常量,比如邮箱地址、接口地址前缀、logging日志打印的内容和格式等等。

以上就是setting.py文件暂时需要的内容,用到了logging模块的知识,大家可以顺便复习以下logging模块哦~~~

微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~

接口测试框架——第一篇-大框架和setting.py常量文件的更多相关文章

  1. 第一篇web框架

    第一篇web框架 http协议 web应用和web框架 主 文 http协议 HTTP简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维 ...

  2. Spring框架第一篇之Spring的第一个程序

    一.下载Spring的jar包 通过http://repo.spring.io/release/org/springframework/spring/地址下载最新的Spring的zip包,当然,如果你 ...

  3. Django(二)框架第一篇基础

    https://www.cnblogs.com/haiyan123/p/7701412.html 一个小问题: 什么是根目录:就是没有路径,只有域名..url(r'^$') 补充一张关于wsgiref ...

  4. Django框架第一篇基础

    一个小问题: 什么是根目录:就是没有路径,只有域名..url(r'^$') 补充一张关于wsgiref模块的图片 一.MTV模型 Django的MTV分别代表: Model(模型):和数据库相关的,负 ...

  5. 接口测试基础——第一篇smtplib发送文字邮件

    现在我们就开始进入接口测试框架的知识准备阶段,今天是第一篇,很简单的,就是发送纯文字的电子邮件,会的童鞋可以忽略,不会的就多敲几遍,直到自己能敲出来为止~~ # coding: utf-8 impor ...

  6. 轻量级ORM框架——第一篇:Dapper快速学习

    我们都知道ORM全称叫做Object Relationship Mapper,也就是可以用object来map我们的db,而且市面上的orm框架有很多,其中有一个框架 叫做dapper,而且被称为th ...

  7. 第一篇CodeIgniter框架的下载及安装

    初次学习Php,网上搜了很多php框架,最后选择了CodeIgniter. 安装环境:php5+mysql6.5+iis7 我的电脑是用来办公写文档用的,win7系统,不想换系统,所以就安装了win7 ...

  8. Springboot第一篇:框架了解与搭建

    在上一章,我讲解了React+node+express相应的框架搭建,一个项目只有一个前端框架够么,当然不够啦!!! 所以这节我们就来讲后台springboot框架的搭建和相关原理吧~~~版本(2.1 ...

  9. django-rest-framework框架 第一篇

    本课件是为了教学任务自己写的学习django-rest-framework框架. 方便自己授课,也成为学生的复习教程. 本课程学习后:具有REST编程思维:并可以通过django及专业的django- ...

随机推荐

  1. STOMP协议规范【转】

    STOMP协议规范英文原文:http://stomp.github.io/stomp-specification-1.2.html STOMP协议规范译文原文:http://simlegate.com ...

  2. 数组中的k个最小值

    问题:输入n个整数,找出其中最小的k个数. 方案一:将输入的n个整数进行排序,输出前k个数即为所求的k个最小数.时间复杂度为O(nlogn). 方案二:创建一个大小为k的容器,来存储最小的k个数.遍历 ...

  3. CSS3:边框属性

    前言 学习这些CSS属性并不是要自己要设计多好看的样式,而是看到网上的代码能看得懂. 效果 本章将围绕如下效果进行解释: border border-width: 边框宽度. border-style ...

  4. IEnumerable<T>作为方法返回值类型——建议通过yield return返回

    若IEnumerable<T>作为方法返回值的类型,则建议使用“迭代”模式(yield return) private IEnumerable<TwoLevelTreeNodeVie ...

  5. gem doorkeeper(4000✨) ,Go-rails视频

    博客OAuth教程:https://i.cnblogs.com/EditPosts.aspx?postid=9531091 doorkeeper: (4000

  6. Ansible 小手册系列 十七(特性模块)

    异步操作和轮询 --- # Requires ansible 1.8+ - name: 'YUM - fire and forget task' yum: name=docker-io state=i ...

  7. hdu 6114 chess(排列组合)

    Chess Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  8. Marketing™Series用户手册(Marketing™Series Manual)

    起源(Origin) 每日构建(Daily Build) 软件不支持的功能(Functions which are not supported.) 软件支持的功能(Functions which ar ...

  9. LeetCode OJ:Remove Duplicates from Sorted List II(链表去重II)

    Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numb ...

  10. PHP stripos()、strripos()和strrpos() 使用方法和区别

    区别 stripos():查找字符串首次出现的位置(不区分大小写) 写法:stripos ( string $haystack , string $needle [, int $offset = 0 ...