One of the reasons large mobile development projects fall behind schedule is poor interaction between project teams, namely between front-end and back-end developers. This is especially the case if teams work in different time zones. Mismatching protocols, invalid data and date formats, services that don't work, SSL errors — these small bugs can become a big problem and slow any project down considerably.
While working on a recent mobile project, we found our solution. It’s Chrome extension Postman REST Client, an HTTP client for testing web services. Today I’ll share how we’ve made the working process smooth and efficient with all bugs timely found, documented and fixed.
Other API testing methods: Logging
Often developers use the most apparent solution: they log running apps. This approach has several drawbacks:
- It's time-consuming, since in order to run a query one needs to interact with UI, fill forms, etc.
- The log output format is usually unreadable and extra work is required to improve data representation.
- Reproducing bugs or tracking unusual behavior of an app becomes a real problem for other team members, e.g. managers or back-end developers, since they don’t use the same development environment, might lack qualification, etc. Front-end team's "Server doesn't work" meets back-end's "Server works just fine. It's something on the client side that doesn't" — this situation might seem familiar to many teams.
The above-said indicates that there is a real need for a special instrument that improves interaction between teams and simplifies the API testing procedure. In an earlier article, we wrote an overview of useful developer tools and discussed some instruments from this category, but in one of the recent projects we tried a new one: Postman REST Client, and it showed great results.
Why we recommend Postman?
Postman saved our project that was running under quite stressful conditions:
- while we were developing client-side, the server-side was being developed by another company;
- there was a 12-hour time zone difference between ours and the other company’s team;
- API and documentation for the project were not finished;
- deadline was looming.
Installation of Chrome extension is a minute task and right after the installation process Postman is fully at your service. Based on our experience, Postman really simplified mobile client development process. Below are several reasons why it was helpful.
Efficient API testing
Even if the API had been completed, using Postman for test queries was much faster than to implement them through the application code. In our case, with the query protocol being constantly updated, the friendly and simple interface of Postman helped us a lot — all necessary changes were committed quickly and smoothly.
Documentation of test results
Postman provides a convenient, visual display of query results. Besides JSON and XML, one can view titles and web-pages (if a server returns an error in a format that differs from the API protocol format).
Any test queries could be saved with all parameters and organized into collections. The collections could be exported to a JSON file and shared with other team members, so they could import the queries and check API themselves.
Using Postman in a mobile development project
In addition to what I mentioned above, Postman helped us solve the following issues:
- In early stage of the project a serious API drawback was detected, namely the API didn’t meet the standard REST/JSON requirements: the response format for one and the same query varied depending on the number of elements returned, which exceeded the API difficulty level on client side.
- The data format in query responses contained no time zone data which was critical for our project.
- Several API errors with uploading files were found.
- The original API required enhancement, since the initial version didn’t support sending of array of objects during client-server synchronisation.
Whatever difficulty you and your team might face while working on a development project, it can be solved with the right instrument at hand. This time, Postman helped us finish the project within the originally estimated timeframes, even though the amount of work turned to be larger than we expected. Next time we might find some new tool to boost the productivity and we’ll certainly share our discoveries with you.