Automation Testing

UFT API TEST RETURNS HTTP 401 ERROR

By Test Guild
  • Share:
Join the Guild for FREE

Server returned HTTP status code 401:

Since publishing my UFT book The UFT API Testing Manifesto – A step-by-step, hands-on testing guide for the masses, I've received a few emails from folks who are receiving this error message: Server returned HTTP status code 401: Unauthorized while attempting to run their API tests.

More about the 401 Unauthorized error

According to Wikipedia, the 401 Unauthorized message is “401 Unauthorized is similar to 403 Forbidden, but specifically for use when authentication is required and has failed or has not yet been provided.[2] The response must include a WWW-Authenticate header field containing a challenge applicable to the requested resource. See Basic access authentication and Digest access authentication.”

Why this 401 error occurs in UFT API

Sometimes the server you're testing against expects to receive authentication information before transport. For this reason, you must add some additional information to your API request's HTTP header. This can be done using custom code in BeforeApplyProtocolSettings event handler.

How to add a username and password to your HTTP Request Header

  • In your test, click on the web service activity on your main canvas area.
  • Under its Properties section, click on the Events icon.


  • Select the Create a default handler…option from the BeforeApplyProtocolSettings event.


  • In the TestUserCode.cs file, under the StServiceCallActivity5_OnBeforeApplyProtocolSettings method, add the following (note your StServiceCallActivity number might be different)
  • Create a string variable that contains the user name and password your server needs for authentication:

string myAuth = “Basic” + Convert.FromBase64String(System.Text.Encoding.ASCII.GetBytes(“YourUserName:YourPassword));

  • Next, add your authentication variable value as a parameter to the HttpRequestHeaders Add method:

this.StServiceCallActivity5.HttpRequestHeaders.Add(“Authorization”,myAuth);


  • Run your test. You should no longer receive a 401 error message.

   
More UFT API Automation Awesomeness


For more UFT API Automation Awesomeness, tips, tricks and how-tos, check out my new book The UFT API Testing Manifesto – A step-by-step, hands-on testing guide for the masses –now available on Amazon.com!

Don't own a Kindle? No Problem — you can still read my book!

I'm aware that some of you have had trouble accessing my books in the past. The truth is that you don't need a Kindle! There are a variety of free ways you can read a Kindle eBook:

  • Read it on your PC or Mac (Kindle Cloud Reader)
  • Read it on your iPhone or iPad (iTunes App)
  • Read it on your Android (Kindle for Android)
  • Read it on your Blackberry (Kindle for Blackberry)

In short, it's really simple to read Amazon Kindle books, no matter what type of device you use to access the Internet.

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

9 Ways AI Improves Software Testing

Posted on 07/02/2024

I recently co-hosted a webinar, with Blinq.io to delve into the impact of ...

Strategic Test Environment Setup For Automation Success

Posted on 06/18/2024

Understanding the importance of test environment setup Test environment setup is crucial for ...

Top 18 Visual Testing Tools for Testers (2024 Guide)

Posted on 06/10/2024

When you're a web developer, making sure that your site looks great – ...