• Python接口自动化(七) 参数化关联接口


      我们用自动化新建项目之后,要想接着对这个新建项目操作,那就需要用参数关联了,新建项目之后会有一个项目的id,获得到这个id,就可以通过这个项目id继续操作这个新建项目。

    大致流程步骤:登录——>新建项目——>web界面操作项目进度——>fiddler抓取操作请求——>提取参数——>传参——>代码实现。

    一、操作新项目

     1.我们前面讲过新建项目后,那可以继续接着操作,操作项目状态;

     2.用fiddler抓包,抓到操作的请求,从抓包结果可以看出,传的data参数是status,id;

    查看数据库,status=3,表示进行中;

     3.那id哪里来的呢?可以看到新增项目请求的响应结果有id;

    4.也就是说在新建项目的时候,系统随机生成一个id,那接下来我们提取出来就可以了。

    #coding:utf-8
    import requests
    import re
    url="http://47.98.106.11:8088/login"
    data={"username":"libai","password":"123456"}
    headers={"User-Agent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"}
    s=requests.Session()
    rs=s.post(url,data=data,headers=headers)
    print(rs.text)
    #新增项目
    d={"name":"奶茶",
        "aliasname":"cake",
        "started":"2020-07-26",
        "ended":"2020-07-27",
        "desc":"good",
        "id":"0"}
    rs2=s.post("http://47.98.106.11:8088/project/add",data=d,headers=headers)
    print(rs2.text)
    id=re.findall(r"id":"(.+?)"",rs2.text)#提取id
    print(id[0])
    datas={"status":"3","id":id[0]}
    rs3=s.post("http://47.98.106.11:8088/project/ajax/status",data=datas,headers=headers)
    print(rs3.text)
    

     如果想看清楚,可以在操作状态前打断点;

    1)在提取完id的下一行,双击前边即可出现一个红色的大圆点;

     2)点击右上方的昆虫图标;进入debug模式,代码运行到断点处停止运行;

    3)web页面,刷新项目,查看项目,有刚新增的项目;

    4)点击右边的绿色图标一次性执行完后边的代码;

    5)刷新web页面,看到刚新增的项目,状态已经变成进行状态。

     

    越努力,越幸运!!! good good study,day day up!!!
  • 相关阅读:
    LR和SVM等线性模型比较
    博客内容和格式整理想法
    matlab安装matconvnet出错总结
    《java 核心技术一》第二章java程序设计环境
    《java 核心技术一》第一章 程序设计概论
    java eclipse 程序没错,运行结果显示无法加载主类的解决方法
    《贾平凹--朋友圈子就是你人生的世界》读后感
    java try-catch-finally输出异常
    暑假计划
    java 登录注册小程序
  • 原文地址:https://www.cnblogs.com/canglongdao/p/13382079.html
Copyright © 2020-2023  润新知