2014-09-20 34 views
0

我在Facebook应用上创建了一个测试用户。如何对Facebook用户进行单元测试?

如通过邮差在Chrome中我可以轻松地使用此URL访问,并得到一个200响应解释here

其实我可以访问测试用户。

https://graph.facebook.com/v2.1/xxxxxx/accounts/test-users?access_token=yyyyyyy 

但是,同样的网址在我的单元测试中不起作用。我得到一个404为rv 我可以忽略什么?

class TestFBConnectAPI(BaseTest): 
    def __init__(self, *args, **kwargs): 
     super(TestFBConnectAPI, self).__init__(*args, **kwargs) 

    def test_connect_signup(self): 
     app_access_token = facebook.get_app_access_token(app.config['FB_CLIENT_ID'], 
                 app.config['FB_CLIENT_SECRET']) 

     rv = self.client.post('https://graph.facebook.com/v2.1/{0}/accounts/test-users?access_token={1}'.format(app.config['FB_CLIENT_ID'], app_access_token)) 
     self.assertTrue(rv.status_code, 200) 

回答

1

Test client是GET/POST模拟你正在开发,而不是外部服务Django的看法。

如果您想与外部服务进行交互,您需要使用模块/库,如urllib,requests

import requests 

.... 

url = ('https://graph.facebook.com/v2.1/{0}/' 
     'accounts/test-users?access_token={1}'.format(app.config['FB_CLIENT_ID'], 
                app_access_token)) 
response = requests.post(url) 
self.assertEqual(response.status_code, 200) 
相关问题