鱼C论坛

 找回密码
 立即注册
查看: 1340|回复: 9

关于python中,如何把A函数的得到参数n返回,在B函数中去使用n参数?

[复制链接]
发表于 2019-2-22 12:22:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
python
'''
import requests

import unittest

class Testlogin(unittest.TestCase):
    ''' 登陆接口测试'''
    def setUp(self):
        self.url = "http://xxxxxxx/login"  # 全局变量需要加self

    def test_A(self):
        params = {"mobile": "1372708xxxx", "password": "qwe123"}
        s = requests.Session()
        rel = s.post(url=self.url,data=params)
        cookie_data=rel.cookies

        return cookie_data

        #self.assertEqual(rel.status_code,200)
        #self.assertEqual(rel.json()['message'],'登录成功')


    def test_B(self):


if __name__ =="__main__":
    unittest.main()

'''

## 如何在test_B中使用到 cookie_data?  还请帮忙写下具体代码,跪谢!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-2-22 12:48:54 | 显示全部楼层
你把返回的东西赋值给实例属性,然后其他函数调用就行了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-22 12:55:04 | 显示全部楼层
在类里面直接设为成员变量即可在不同的函数中直接调用
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-22 13:00:09 | 显示全部楼层
塔利班 发表于 2019-2-22 12:48
你把返回的东西赋值给实例属性,然后其他函数调用就行了

如果赋值,那也仅仅是在布局 ,  在下一个函数是无法调用的,。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-22 13:02:02 | 显示全部楼层
BngThea 发表于 2019-2-22 12:55
在类里面直接设为成员变量即可在不同的函数中直接调用

不能设置为类变量,,,  我写cases 的时候, 类变量会有其他参数。  我在网上查找到过相应的, 大概的意思是在函数中添加变量, 然后return。  再下一个函数中就可以调用了。  具体我不会怎么写。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-22 13:29:27 | 显示全部楼层
本人是丶帅哥 发表于 2019-2-22 13:02
不能设置为类变量,,,  我写cases 的时候, 类变量会有其他参数。  我在网上查找到过相应的, 大概的意 ...

不就是返回值吗?
def A():
    #do something
    return a

def B():
    #调用a
    tmp = A()
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-22 13:37:15 | 显示全部楼层
这样不行吗?
  1. class Testlogin():
  2.     def __init__(self):
  3.         pass
  4.     def test_A(self):
  5.         xxxx
  6.         return test_A_return_value
  7.     def test_B(self, test_A_return_value):
  8.         xxxx

  9. obj = Testlogin()
  10. res = obj.test_A()
  11. obj.test_B(res)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-22 14:00:43 | 显示全部楼层
本人是丶帅哥 发表于 2019-2-22 13:00
如果赋值,那也仅仅是在布局 ,  在下一个函数是无法调用的,。

你还是回头好好复习下类属性
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-23 23:25:22 | 显示全部楼层
  1. def test_A(self):
  2.         params = {"mobile": "1372708xxxx", "password": "qwe123"}
  3.         s = requests.Session()
  4.         rel = s.post(url=self.url,data=params)
  5.         self.cookie_data=rel.cookies
复制代码


个人拙见,没有测试,按照我的理解这样应该是可以的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-24 00:58:32 | 显示全部楼层
本帖最后由 Stubborn 于 2019-2-24 01:12 编辑

我觉的我刚刚写好的代码块应该可以帮到你:12306订票

可以直接设置全局调用,没毛病啊  比如这个:tj 就是全局调佣的
123.png

或者你可以直接这样用啊,很复杂吗
  1.     def test_B(self):
  2.         cookie_data = self.test_A()
复制代码

  1. class QueryPane(QWidget,Ui_Form):

  2.     def __init__(self,parent=None,*args,**kwargs):
  3.         super().__init__(parent,*args,**kwargs)
  4.         self.setupUi(self)
  5.         self.setupBookPan()
  6.         self.setupData()
  7.         self.tj = {"zw":None,"phone_num":None}
复制代码

  1.     def filter_tickets(self):
  2.         print("Query_Pane.filter_tickets启动:筛选列车票")
  3.         print("Query_Pane.filter_tickets调用:APITool.get_all_stations获取到火车字典")
  4.         dic = APITool.get_all_stations()#出发时间
  5.         start_data = self.dateEdit.text()#类型
  6.         purpose_codes = self.buttonGroup.checkedButton().property("q_value")#出发地
  7.         from_city_code = dic[self.comboBox.currentText()]#目的地
  8.         to_city_code = dic[self.comboBox_2.currentText()]
  9.         result = APITool.query_tickets(start_data,from_city_code,to_city_code,purpose_codes,seat_type=self.tj["zw"]) #,seat_type=self.tj["zw"]
  10.         print("Query_Pane.filter_tickets退出:接收到APITool.query_tickets返回")
  11.         return result
复制代码

  1.     def book_ticket_filter(self,tj):
  2.         #self.hide_book_pan()
  3.         self.tj = tj
  4.         self.timer.start(3000)
复制代码

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-14 03:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表