背景:

一、执行case的过程:

首先需要,我们能够通过excel获取单元格的内容。获取内容时,首先需要知道获取的数据是哪一行的,这行数据中需要拿那些参数,比如case 名称、请求url、请求方式、header、依赖id、依赖数据所属字段、请求数据、预期结果;

然后需要,判断字段、数据的合法性,将合法case组合成接口请求;

最后需要,执行case,进行断言、生成报表等。

二、问题:在执行case时需要知道需要执行哪个case,

三、解决方案:但是我们并不知道要拿哪个单元格的内容,这需要通过获取执行的是哪一行那一列的case来确认,因此需要有一个文件存放行和列的常量。

python 实现:

global_var中的属性为每一行中,每个列元素所在单元格的位置序号。

以下get_*()方法,返回的是组成case的元素,在Excel表格中的列序号。

  1. #coding=utf-8
  2. class global_var:
  3. #class_id
  4. Id = 0;
  5. url = ''
  6. run = ''#是否执行
  7. request_way = ''#请求方式
  8. header = ''
  9. class_depend = ''#依赖id
  10. data_depend = ''
  11. field_depend = ''#数据依赖所属字段
  12. request_data = ''
  13. expect = ''
  14. result = ''#实际结果
  15.  
  16. #获取caseid
  17. def get_id():
  18. return global_var.Id
  19. #获取url
  20. def get_url():
  21. return global_var.url
  22.  
  23. def get_run():
  24. return global_var.run
  25.  
  26. def get_request_way():
  27. return global_var.request_way
  28.  
  29. def get_header():
  30. return global_var.header
  31.  
  32. def get_class_depend():
  33. return global_var.class_depend
  34.  
  35. def get_data_depend():
  36. return global_var.data_depend
  37.  
  38. def get_field_depend():
  39. return global_var.field_depend
  40.  
  41. def get_request_data():
  42. return global_var.request_data
  43.  
  44. def get_expect():
  45. return global_var.expect
  46.  
  47. def get_result():
  48. return global_var.result

python接口自动化—封装获取常量的类的更多相关文章

  1. python接口自动化20-requests获取响应时间(elapsed)与超时(timeout)

    前言 requests发请求时,接口的响应时间,也是我们需要关注的一个点,如果响应时间太长,也是不合理的. 如果服务端没及时响应,也不能一直等着,可以设置一个timeout超时的时间 关于reques ...

  2. python接口自动化20-requests获取响应时间(elapsed)与超时(timeout) ok试了 获取响应时间的

    前言 requests发请求时,接口的响应时间,也是我们需要关注的一个点,如果响应时间太长,也是不合理的.如果服务端没及时响应,也不能一直等着,可以设置一个timeout超时的时间 关于request ...

  3. 【python接口自动化】获取根目录

    将该方法放在根目录下面,在其他类中直接import 该方法. import os def getRootPath(): rootPath = os.path.dirname(os.path.abspa ...

  4. python接口自动化-参数化

    原文地址https://www.cnblogs.com/yoyoketang/p/6891710.html python接口自动化 -参数关联(一)https://www.cnblogs.com/11 ...

  5. python接口自动化5-Json数据处理

    前言 有些post的请求参数是json格式的,这个前面第二篇post请求里面提到过,需要导入json模块处理. 一般常见的接口返回数据也是json格式的,我们在做判断时候,往往只需要提取其中几个关键的 ...

  6. python接口自动化8-参数化

    前言 前面一篇实现了参数的关联,那种只是记流水账的完成功能,不便于维护,也没什么可读性,接下来这篇可以把每一个动作写成一个函数,这样更方便了. 参数化的思维只需记住一点:不要写死 (由于博客园登录机制 ...

  7. python接口自动化(十)--post请求四种传送正文方式(详解)

    简介 post请求我在python接口自动化(八)--发送post请求的接口(详解)已经讲过一部分了,主要是发送一些较长的数据,还有就是数据比较安全等.我们要知道post请求四种传送正文方式首先需要先 ...

  8. python接口自动化-Cookie_绕过验证码登录

    前言 有些登录的接口会有验证码,例如:短信验证码,图形验证码等,这种登录的验证码参数可以从后台获取(或者最直接的可查数据库) 获取不到也没关系,可以通过添加Cookie的方式绕过验证码 前面在“pyt ...

  9. python接口自动化28-requests-html爬虫框架

    前言 requests库的好,只有用过的人才知道,最近这个库的作者又出了一个好用的爬虫框架requests-html.之前解析html页面用过了lxml和bs4, requests-html集成了一些 ...

随机推荐

  1. TCP/IP详解 IP路由选择

    TCP/IP详解 IP路由选择 在本篇文章当中, 将通过例子来说明IP路由选择器过程 如图所示, 主机A与主机B分别是处在两个不同的子网当中, 中间通过一个路由连接. 如果主机A请求与主机B进行通行, ...

  2. Docker之Alpine制作镜像且上传至阿里云

    目的: Alpine制作jdk镜像 Alpine制作jre镜像(瘦身) Docker镜像上传至阿里云 Alpine制作jdk镜像 alpine Linux简介 Alpine Linux是一个轻型Lin ...

  3. 打家劫舍I

    题目描述(LeetCode) 你是一个专业的小偷,计划偷窃沿街的房屋.每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系 ...

  4. mPass多租户系统微服务开发平台

    目录 项目总体架构图 基于SpringBoot2.x.SpringCloud并采用前后端分离的企业级微服务,多租户系统架构微服务开发平台 mPaaS(Microservice PaaS)为租户业务开发 ...

  5. vue报错[Vue warn]: Unknown custom element: <router-Link> - did you register the component correctly? For recursive components, make sure to provide the "name" option.

    vue浏览器报错,如下 vue.runtime.esm.js?2b0e:619 [Vue warn]: Unknown custom element: <router-Link> - di ...

  6. (转).NET Core中实现AOP编程

    原文地址:https://www.cnblogs.com/xiandnc/p/10088159.html AOP全称Aspect Oriented Progarmming(面向切面编程),其实AOP对 ...

  7. [转]Go语言string,int,int64 ,float之间类型转换方法

    1 正文 (1)int转string s := strconv.Itoa(i) 等价于s := strconv.FormatInt(int64(i), 10) (2)int64转string i := ...

  8. 英语eschaunge交易所

    eschaunge  Eschaunge是一个外文单词,名词译为交易所,交易,交换,兑换(率),动词译为兑换, 交换,互换,交换,调换.是Exchange的替代形式 中文名:交易所,交易,交换 外文 ...

  9. 关于ABViewer的疑问解答

    很多 CAD小伙伴都对 ABViewer 这款软件不陌生吧.ABViewer 是用来处理图纸和工程文档管理的一款通用软件.可以用它来查看,编辑,转换,测量和打印DWG和其他CAD文件,以及3D模型和光 ...

  10. 【兼容调试】cffi library '_openssl' has no function, constant or global variable named 'Cryptography_HAS

    重装cryptography就好了. conda uninstall cryptography conda install cryptography https://github.com/pyca/c ...