Flashback lets web developers simulate traffic from different providers in integration tests for reliability and scalability. The tool is now available open-source under a BSD two-clause license.
Based on Betamax
However, according to the LinkedIn team Flashback offers some significant advantages over current solutions. It’s based on Betamax, an existing tool that intercepts HTTP communications and relays them later on. Flashback resolves some problems with the tool, allowing for testing in environments without internet access and using authentication protocols. The new tool can mock both HTTP and HTTPS resources, including web services and REST APIs.
It’s also more flexible, letting users dynamically change scenes and match rules, and test with different responses. The LinkedIn team also explains how Flashback can replay scenes from the partial matching of requests: “A match rule associates an incoming request with a previously-recorded request, which is then used to generate a response. HTTP requests generally contain a URL, method, headers, and body. Flashback allows match rules to be defined for any combination of these components. Flashback also allows users to add whitelist or blacklist labels to URL query parameters, headers, and the body.” The team plans to build on the current functionality by adding support for non-HTTP protocols like FTP and JDBC. There’s also the possibility for injection of custom protocols, and setup improvements for non-Java languages. Though it’s open-source, LinkedIn stresses that it’s intended for testing purposes only. Admins also have to be careful that sensitive user data isn’t intercepted. Whatever the case, its great to see the company continuing its open source efforts under Microsoft’s banner.