Home > Blockchain >  How to follow the redirct and test again in test script
How to follow the redirct and test again in test script

Time:03-23

I have this test script for uploading file

    with open('_material/content.xlsx','rb') as fp:
        response = self.client.login(username="[email protected]", password="qwpo1209")

        response = self.client.post('/cms/content/up',
        {'name': 'test', 'content_file': fp,"is_all":"True"})
    
        self.assertEqual(response.status_code,302) # it shows ok
        
        #then next, how can I follow the redirect and test the page??
        self.assertContains(response, "success!")

It returns the redirect 302 but I want to follow the redirect and nect check.

Because there comes the message such as success!

Is it possible?

CodePudding user response:

You can use follow=True to follow the redirect in a .post(…) call [Django-doc], so:

response = self.client.post(
    '/cms/content/up',
    {'name': 'test', 'content_file': fp, 'is_all': 'True'},
    follow=True
)

as is specified in the documentation:

If you set follow to True the client will follow any redirects and a redirect_chain attribute will be set in the response object containing tuples of the intermediate urls and status codes.

  • Related