7

Many teams do not deliver GUI but a library or a service that is used by other developers. For instance:

  • A company provides REST APIs and client libraries for their customers to use their services remotely. Ad exchange company provides JavaScript library for publishers to participate in ad real time auctions, hotel booking company can provide an API for hotels to integrate with, Google Cloud Platform provides APIs and libraries to integrate with their cloud infrastructure.

  • A company delivers a library to be used by other developers and testers: it can be as big as JDK (Java Development Kit) from Sun/Oracle or Selenium Web Driver.

  • Your team provides a microservice to be used by other teams in the company.

All those artifacts can have user experience (UX) bugs similarly to GUI -- the name of a method might be misleading and do something else than the name suggests, or finding a class to do X might be hard because of insufficient documentation or wrong abstraction level.

I sometimes complained about such bugs to developers but I have never performed regular usability tests for APIs. I've found that Microsoft did. The approach they took was to involve real user in task-driven tests, just like you do in normal (GUI-based) usability tests, with one small difference -- their end users were developers. You give a development task to a developer to be performed with your software and you observe how they handle it.

I wonder whether other testers do perform usability tests of API?

In the end you would need to get into shoes of a developer or involve them in your tests.

2
  • 3
    So what is the question, given you answered the title in your own question. Your own answer is 'yes elsewhere but not where I work'. Perhaps the question is more 'how can I introduce/persuade my org to do API testing. Your point about the usability of an API is a fantastic point. I missed that on first pass in my (now deleted) answer. Commented Oct 9, 2019 at 11:14
  • @MichaelDurrant Thanks! Looking now at my questions few months later I think it does not fit well StackExchange format. It was more like a survey: here's my story, what's your story? I feel the need to rephrase it a bit but I'm out of context right now, I'm no longer working on APIs testing, while asking "how can I introduce/persuade my org to do API usability testing" definitely requires some context...
    – dzieciou
    Commented Oct 10, 2019 at 7:49

1 Answer 1

1

Do testers perform usability tests in general? I think the answer is NO. You are not the user.

Do testers facilitate usability tests in general? It depends, but I would answer YES. Help users test it, sounds good.

So I think API usability testing with its users (e.g. developers) makes perfect sense, I would start with:

  • Hallway testing by pulling in some developers and let them use the API documentation and the API itself with some code.
  • Test consistency with other similar API's in the platform. I have seen API designs where the naming was not consistent. E.g. dataSet, data-set and dataset as options. Forcing developers using the API to constantly check the documentation.
  • Build a company API usability guideline so developers can check for themselves.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.