老师始终没看懂您的源代码,请看截图,麻烦您解答下我的疑问

来源:5-2 case中如何进行mock数据

慕的地6472387

2020-03-26

图片描述

这是我自己实验的代码,也没看懂

写回答

2回答

小白求学

2020-03-27

第一个问题:res=post_request这个,这里的post_request 并不是post_request(url,data)这个函数,而是success_test。你没看到在res=post_request 这句上面有一句post_request=success_test吗?所以后面的res()并非调用了post_request(url,data), 而是调用了success_test所指向的mock.Mock()。这个方法只有一个返回值,data。所以调用后的结果就是data的值,也就是username

第二个问题:print(success_test) 这个你已经理解了,是打印这个变量所指的地址值。而print(success_test())是指打印success_test()这个函数的执行结果。函数名加上()就代表调用。所以打印的是调用结果。而sucess_test()的执行结果,实际上就是mock.Mock(return_value=data)的执行结果,也就是data。所以结果就是{'username':'111111'}

5
1
Mushishi
不错不错加油
2020-03-28
共1条回复

Mushishi

2020-03-26

哈哈,不错不错,这个是我写的不严谨。就是他上面已经背mock调了//img.mukewang.com/szimg/5e7c5b470900eb3002560029.jpg

0
0

Python接口自动化测试框架实战 从设计到开发

接口自动化测试框架的设计与开发,并教你如何开发桩服务

1720 学习 · 831 问题

查看课程