Python接口测试-模块引用与映射

PyCharm中发现模块引用老是有各种问题

可以用映射来解决,例如需要调用登录模块里面的东西的时,可以这样处理:

登录模块:1-login.py

import this
import requests
import json
import unittest
import HTMLTestRunner

yuming=‘http://test-a.==.cn‘

‘‘‘登录‘‘‘
s=requests.session()
def login(phone):
    headers54 = {‘Content-Type‘: ‘application/x-www-form-urlencoded; charset=UTF-8‘,
               ‘Accept‘: ‘application/json, text/javascript, */*; q=0.01‘,
               ‘Referer‘: ‘{0}/systLogonUser/login.do‘.format(yuming)}
    url54=‘{0}/systLogonUser/adminLogon.do‘.format(yuming)
    data54 ={
            ‘userName‘:phone,
            ‘pwd‘:‘123456Aa‘,
            ‘verifyCode‘:121
    }
    r=s.post(url=url54,data=data54,headers=headers54)
    login_response=r.text
    login_statuscode=r.status_code
    print(login_statuscode, login_response, s)
    return login_statuscode,login_response,s

login(18200717108)

在后面的一个接口中进行调用:

‘‘‘ 用户登录状态这里用到了登录接口中的yuming、s‘‘‘
print(‘*‘*100,‘\n‘,‘/personal/bala‘,‘\n‘,‘*‘*100)
url=‘{0}/personal/bala?_=1556108604971‘.format(f.yuming)
r=f.s.get(url=url,headers=headers11)
print(r.status_code)
print(r.text)

未登录与登录后返回的结果不同:

****************************************************************************************************/personal/bala
 ****************************************************************************************************
200
{"time":"20760719022042","code":"105","msg":"未登录"}
****************************************************************************************************
 /personal/bala
 ****************************************************************************************************
200
{"time":"20760719022042","accountBala":"8210100.80","usableBala":"7543000.80","frozenBala":"667100.00","code":"0","msg":"OK"}
Process finished with exit code 0

原文地址:https://www.cnblogs.com/jpr-ok/p/10818921.html

时间: 2024-08-04 00:46:11

Python接口测试-模块引用与映射的相关文章

Python的模块引用和查找路径

模块间相互独立相互引用是任何一种编程语言的基础能力.对于"模块"这个词在各种编程语言中或许是不同的,但我们可以简单认为一个程序文件是一个模块,文件里包含了类或者方法的定义.对于编译型的语言,比如C#中的一个.cs文件,Java中的一个.java或者编译后的.class文件可以认为是一个模块(但常常不表述为模块):对于解释型的语言会更加直观些,比如PHP的.php文件,在Python中就是.py文件可以认为是一个模块.在"模块"之上有"包",主要是

python——socket模块与列表映射

从socket模块学习中的一段奇怪代码说起 前言:在学习python标准库中的Socket模块中,发现了一段奇怪的代码. import socket def get_constants(prefix): dicts=dict((getattr(socket,n),n) for n in dir(socket) if n.startswith('IPPROTO_')) print (dicts) 疑问:上述代码中的for..in..循环语句和if 语句都没有冒号结束.为什么? 答案:因为上述“异常

Python:模块引用

#!/usr/bin/python3 #Filename function.py #导入模块 import sys #导入function.py#function.py 文件import function import math print("命令行参数如下:") for i in sys.argv: print(i) print("\npython路径为 : ",sys.path,"\n") print("调用 function.py

[转]python pickle模块

持久性就是指保持对象,甚至在多次执行同一程序之间也保持对象.通过本文,您会对 Python对象的各种持久性机制(从关系数据库到 Python 的 pickle以及其它机制)有一个总体认识.另外,还会让您更深一步地了解Python 的对象序列化能力. 什么是持久性? 持久性的基本思想很简单.假定有一个 Python 程序,它可能是一个管理日常待办事项的程序,您希望在多次执行这个程序之间可以保存应用程序对象(待办事项).换句话说,您希望将对象存储在磁盘上,便于以后检索.这就是持久性.要达到这个目的,

python 各模块

01 关于本书 02 代码约定 03 关于例子 04 如何联系我们 1 核心模块 11 介绍 111 内建函数和异常 112 操作系统接口模块 113 类型支持模块 114 正则表达式 115 语言支持模块 12 _ _builtin_ _ 模块 121 使用元组或字典中的参数调用函数 1211 Example 1-1 使用 apply 函数 1212 Example 1-2 使用 apply 函数传递关键字参数 1213 Example 1-3 使用 apply 函数调用基类的构造函数 122

Python 对象的引用计数和拷贝

Python 对象的引用计数和拷贝 Python是一种面向对象的语言,包括变量.函数.类.模块等等一切皆对象. 在python中,每个对象有以下三个属性: 1.id,每个对象都有一个唯一的身份标识自己,可通过内建函数id(obj)查看. 2.type,对象的类型决定了该对象可以保存什么类型的值,可用内建函数type(obj)查看: 3.value,即对象的值. 下面是一个例子: >>> str = "hello world" >>> type(str

python 各模块学习

核心模块 1.1. 介绍 1.2. _ _builtin_ _ 模块 1.3. exceptions 模块 1.4. os 模块 1.5. os.path 模块 1.6. stat 模块 1.7. string 模块 1.8. re 模块 1.9. math 模块 1.10. cmath 模块 1.11. operator 模块 1.12. copy 模块 1.13. sys 模块 1.14. atexit 模块 1.15. time 模块 1.16. types 模块 1.17. gc 模块

Python cPickle模块

新博客地址:http://gorthon.sinaapp.com/ 持久性就是指保持对象,甚至在多次执行同一程序之间也保持对象.通过本文,您会对 Python对象的各种持久性机制(从关系数据库到 Python 的 pickle以及其它机制)有一个总体认识.另外,还会让您更深一步地了解Python 的对象序列化能力. 什么是持久性? 持久性的基本思想很简单.假定有一个 Python 程序,它可能是一个管理日常待办事项的程序,您希望在多次执行这个程序之间可以保存应用程序对象(待办事项).换句话说,您

Python常用模块之模块的使用

  一 模块介绍 1.什么是模块? #常见的场景:一个模块就是一个包含了一组功能的python文件,比如spam.py,模块名为spam,可以通过import spam使用. #在python中,模块的使用方式都是一样的,但其实细说的话,模块可以分为四个通用类别: 1 使用python编写的.py文件 2 已被编译为共享库或DLL的C或C++扩展 3 把一系列模块组织到一起的文件夹(注:文件夹下有一个__init__.py文件,该文件夹称之为包) 4 使用C编写并链接到python解释器的内置模