Viktor Slavchev

Clippings | Bulgaria

BIO: Viktor is a tester with background in social science, so you will very often see him speak and write about testing and science or testing as a science. You will also hear him talk about epistemology, sociology, logic, philosophy, but don’t be scared, he is doing it simply to add more dimensions and color to your understanding about testing. To him testing is interdisciplinary, multi-layer, multi-dimensional craft with one solid foundation – human intellect. Anything else comes as an extension to this. He is currently working as a Senior QA at Siteground and part time lecturer in Pragmatic and his interests are in the area of heavy-weight critical thinking, giving the better story of testing and morphing exploratory testing and automation. If you are interested in his views on testing and want to read some more of his thoughts, you can visit his blog: http://mrslavchev.com

TALK: Hindsight lessons about API testing

Session level: intermediate

About a year ago I volunteered to write an automated framework for testing an API we were creating. It was exciting, I always thought it makes much more sense to automate the API layer rather than the UI layer.

During my journey, I found myself facing some significant challenges in API automation like:

  • The lack of valuable information about API testing principles
  • The lack of automation design patterns
  • Some significant cognitive bias, when testing via API
  • The right balance between positive and negative tests
  • The specifics of an API and what’s worth testing there
  • How the hell do you test an API?!

Not knowing all these honed my exploratory instincts even more. I decided to approach API testing with my exploratory hat on.

This talk will be a short resume of the “lessons I wish I knew, before it was too late”. The topics that I am going to present for you are:

  • Problems that I first encountered when I started testing API
  • Model that I created to do API checking better
  • What tests are worth automating in the API layer
  • Building the framework and the usage of the hermetic design pattern
  • Few painful mistakes I made.

To help visualize, I will use a tool called Codeception – PHP based full-stack testing tool , because it has very transparent syntax, but I won’t dig into details about the tool, but rather principle questions about API testing.

This topic is related to an article on my blog and you can find it here, as a part of my “Hindsight lessons about automation” series.

Takeaways

  • Understanding of API testing as a concept
  • Model of approaching API testing
  • Short list of dos and don’ts in API testing, that I encountered in my personal experience.