Postman brings Flexibility to API QA and Development

With the myriad of API development and QA tools in the marketplace — we’ve covered many examples, most recently, SOAtest — finding one to meet the needs of your shop seems like a daunting task. Postman positions itself as an application able to plan, develop, build, test, and document APIs. Not surprisingly, it is known as the “Swiss Army Knife” of API tools.

Let’s take a closer look at Postman to see if it makes sense in your team’s toolbox. It just might be the API development application with the flexibility to supercharge your productivity.

Build APIs more Quickly with Postman

As an integrated suite for the entire API development lifecycle, Postman offers the promise of building APIs faster and more efficiently. The Postman is app is available at no cost for the Windows, Mac, and Chrome platforms, while Cloud and Enterprise versions with more collaboration features cost only a nominal monthly fee.

The application’s UI facilitates the creation of HTTP requests, while integrating unit testing features to validate both response data and response time. Different requests are able to be grouped into Collections for better management. You can organize these collections into folders to mimic an API’s online structure. Sample responses are stored with each request to better explain its functionality and expected output.

It is important for developers to enter descriptive information into the request and response metadata, as the Postman UI leverages this information to describe the functionality of each request and the entire API. Developers can use the powerful search engine to find a specific request to meet their needs. This same metadata is used to automatically generate the API documentation, which becomes publically sharable with a button click — a boon for shops developing their own public APIs.

An Application Architecture to add even more Flexibility

Postman supports a variety of add-ons to make the application even more flexible. Newman provides automated testing features, including integration with your build app and the ability to kick off testing in a cron job. Chrome users need to check out Interceptor which leverages the Chrome window to easily view cookies and to capture and import requests into the Postman app.

Both add-ons are available as free downloads.

Enterprise Collaboration Features

As mentioned earlier, the regular Postman app is a free download, but development teams can upgrade to either the Cloud or Enterprise versions of the app, providing additional collaboration features for an inexpensive monthly fee.

Postman Cloud is priced at $4.99 per user per month (billed annually), and includes access to Postman’s Cloud API along with real-time collaboration features. Enhanced team management functionality is also part of the Cloud feature set, in addition to support for admin and billing roles — another plus for public API development shops.

All the features of Cloud are also available in Postman Enterprise, with the inclusion of invoice-based billing. Enterprise is priced at $21.99 per user per month billed annually.

Considering the basic version of Postman is simply a free download, it makes perfect sense to grab a copy and give the app a test run. You may find it becomes an invaluable part of your API development arsenal. The Cloud and Enterprise editions add useful functionality for shops specializing in public API development.

Keep an eye on the Betica Blog for additional dispatches from the worlds of software development and QA. Thanks for reading!

News from the World of Software Development and QA — September 2016

It’s that time of the month where we take a look at a few of the interesting news stories September brought to the overall software development and QA world. If you are interested in checking out last month’s stories — including news about the growing outsourced testing market — simply click on this link. Hopefully, this month’s news digest provides some insight into your own programming and testing activities.

Microsoft deploying a Cloud-based Bug Detector

The growth of Cloud-based testing services has been previously noted in this blog. Microsoft continues to emphasize the Cloud as part of its business line; most notably in their Azure commercial Platform as a Service product. The company also is making available a Cloud-based automated bug detector, known as Project Springfield

Springfield is a Cloud-based “fuzz” testing system aimed at finding critical security bugs in applications. Redmond used the product internally for testing Windows, Office, and other Microsoft applications. A key component of the tool — known as SAGE — found nearly one-third of the critical security holes in Windows 7 before that operating system hit the market.

Project Springfield leverages AI routines to perform a host of “what if” tests on issues possibly causing an application to crash or to be hacked. The tool runs multiple times trying to hone it on what it feels are the most critical problems with an app.

Springfield runs on top of an Azure instance, offering the convenience of a Cloud-based application. In addition to SAGE, Microsoft includes a host of fuzz testing tools along with a dashboard and user interface making Springfield easy to use for those who aren’t security experts. It sounds like a tool worth exploring for many development shops.

Localization Bug hampers Videogame Release

Testing localization routines remains important for videogame developers offering their products on a worldwide scale. Last week, Atlus released a game for the Nintendo 3DS called Shin Megai Tensei IV: Apocalypse which contained text untranslated from the original Japanese language. According to the company, the QA testers were so good at the game; they didn’t encounter the situation where the Japanese text appeared on screen.

This speaks to the need to employ the right testing procedures to ensure full code coverage. Atlus doesn’t expect to fix the issue in the current, cartridge-based game, but the company is redoubling its efforts on localization testing for future releases.

CIOs need to champion the QA Role

This week, CIO Insight published a slideshow and article detailing how CIOs can influence the critical testing and QA functions at their organization. The slideshow content is based on a survey of CIOs made by HP and Capgemini/Sogeti.

Security concerns are the lead reason driving QA initiatives, followed closely by simply releasing higher quality software. CIOs of companies following Agile principles noted the need to involve QA engineers earlier in the SDLC — a point discussed earlier this year on this very blog. The study also reported more companies are performing load and performance testing on third-party Cloud-based services used in their applications.

The rest of the slideshow offered additional insights on the changing role of QA in the modern business world, especially considering the growth of IoT applications. The need for improved processes for testing mobile and multi-channel application was also expressed.

Keep coming back to the Betica Blog for additional insights and news about software development and quality assurance.

ChatOps — a Way to facilitate Agile and DevOps

Improved collaboration is at the core of the Agile and DevOps methodologies — especially the latter. All this interaction between technology professionals — developers, software testers, network engineers, and business stakeholders — requires enhanced and timely communication, either in person, over the phone, or increasingly using some form of messaging client. The speed of the software development process depends on it.

The term for this modern software engineering model is known as conversation-driven development, or a catchier moniker: ChatOps. Let’s take a closer look at ChatOps to see it makes sense to use it at your shop. Maybe it can supercharge your software development efforts?

A Closer Look at ChatOps

ChatOps takes the instant messaging communication model and enhances it by adding the capability for the chat bot being used to recognize certain commands and execute them as scripts. These scripts are used to run builds, message everyone on the team, or any number of relevant functions. A variety of open source chat bots (that are in turn compatible with different chat clients) are able to be configured to execute commands that work with build servers, deployment servers, and more.

Some of the chat clients able to be used with ChatOps include Campfire, Slack, and HipChat. They need to be paired with a chat bot, such as Hubot, Lita, and Err. Since the bots are all open source and written in popular languages, like Ruby or Python, modifying them to suit your team’s purposes shouldn’t be difficult.

Many software development pundits credit GitHub for devising the conversation-driven development model and coining the term, ChatOps. For an example of the methodology in action, Flowdock describes in a blog post how they implemented ChatOps as part of their development process.

Essentially, ChatOps adds a functional layer to the conversations at the heart of collaborative software development in the Agile era. The ability to perform some development tasks, like starting a build, deployment, or automated test scripts, while exchanging messages with the other members of a DevOps team simply adds efficiency to the entire process.

Agile continues to evolve how Software gets Written and Managed

ChatOps, in a similar manner as DevOps, is simply a continued evolution of Agile’s influence on software development. No longer do programmers and QA personnel sit in their cubicles working alone except for a daily meeting. Team members are able to interact through messaging, in addition to the added visibility and functionality provided by a chat client executing builds or notifying everyone when errors bubble out of a production server.

This model is especially effective when considering the widely distributed nature of many software development teams. The other programmers may be working in a different continent instead of in the same building. Additionally, leveraging automated tasks implemented using the chat bot reduces the adverse effects of human error on software projects.

In short, if Agile and/or DevOps is your methodology of choice, you need to consider using ChatOps to truly get the most out of your investment. It even offers advantages to any software development methodology.

Stay tuned to the Betica Blog for further insights from the world of software development.