我会尽量澄清我的意思.
假设我有一个url:
https://test-api.com/users?age=17&sex=M
有两个字段:年龄和性别.年龄字段是必需的,但性别字段是可选的.
假设我想进行一系列测试,并使用以下代码:
import requests
def testUserQuery(user_age, user_sex):
url = f'https://test-api.com/users?age={user_age}&sex={user_sex}'
response = requests.get(url)
test_query = testUserQuery(17)
现在,假设我无法进入API本身的实际代码并更改空字段的解释方式...
如何进行此测试并将user\u sex字段留空?
换句话说,是否有一个特殊的通用符号(如"&这意味着"和"对于世界上的每一个URL),我可以为user\u sex设置,这将迫使API忽略字段而不会导致错误?
否则,我必须这样做:
import requests
def testUserQuery(user_age, user_sex=None):
if user_sex is None:
url = f'https://test-api.com/users?age={user_age}'
elif user_sex is not None:
url = f'https://test-api.com/users?age={user_age}&sex={user_sex}'
response = requests.get(url)
test_query = testUserQuery(17)
想象一下,如果我处理10个可选字段.我认为对于可选字段为空的每一种可能的情况,使用多个elif语句来更改URL不是很有效.
我希望我说的很清楚,如果这听起来让人困惑,很抱歉.