Collection of Useful Tools for QA/Test Engineers

Published Oct 01 2020 07:27 AM 3,949 Views

Edited by  @Edwin Hernandez 


Please find below a collection of publicly available tools that I find valuable for QA/Test Engineers, either for Performance Testing or UI Test automation. These tools have been passed around internally on the MSFT Test Team, some of them for years. Most of them cover a tiny niche and thus can be considered a bit buried or obscure, but if they are what you need, they can help you.




(First reported by Bernhard Vogel)

  • Using Azure DevOps "Build Quality Checks“ tasks, you can easily control that the quality steadily goes up from build to build. There are various smart metrics to use, i.e. compare test coverage of the previous build with the current build and if it trends down > fail the build.





  • Policies:
    • The Build Quality Checks task currently supports two policies (click the link for details):
      • Warnings Policy - Allows you to fail builds based on the number of build warnings.
      • Code Coverage Policy - Allows you to fail builds based on the code coverage value of your tests.

Available here:




(First reported by Johnathan Liu)

  • This tool allows you to record a selected area of your screen and save it as a Gif.
  • I have to share out this very cool tool called ScreenToGif that was shown to me by a couple of TAMs in the UK. It allows you to record your actions on screen and turn them into awesome animated gifs. I could see this being incredibly useful for tutorials, repros, and demos.
  • You can share animated gifs on Twitter/Yammer and other social networks.




      • Record your screen and save directly to a gif looped animation.
      • Pause and continue to record.
      • Move the window around to record what you want.
      • You can add Text, Subtitles, and Title Frames.
      • Edit the frames, add filters, revert, make yoyo style, change frame delay, add a border, add progress bars.
      • Export frames.
      • Crop and Resize.
      • You can work even while the program is recording.
      • Remove frames that you don't want.
      • Select a folder to save the file automatically or select one before encoding.


    • Add the system cursor to your recording.
    • Very small-sized, portable, and multi-language executable.
    • Start/Pause and stop your recording using your F keys.
    • Multi-language: Portuguese, Spanish, Romanian, Russian, Swedish, Greek, French, Simplified Chinese, Italian, Vietnamese, and Tamil.
    • GreenScreen unchanged pixels to save kilobytes.
    • You can apply actions/filters to selected frames.
    • Fullscreen Recording.
    • Snapshot Mode.
    • Drag and Drop to add frames in the editor.

Available here:




(First reported by Bernhard Vogel, a tool created by Daniel Amadei)

  • Bot Service Stress Toolkit is based on Apache JMeter (which is an open-source stress-testing product provided by the Apache Software Foundation).
  • Features


  • Leverages JMeter to make it easy and visual to perform stress tests on Bots.
  • Capable of not only making requests to the Bots but also receiving responses and correlating them back to the original requests, measuring the whole cycle.
  • Capable of asserting responses if needed, by leveraging native JMeter assertions.
  • Capable of loading test data from files or other data sources supported by JMeter.
  • Capable of displaying test results in graphs, tables, and/or saving it to CSV files by leveraging native JMeter capabilities as well.
  • Measures throughput and latency of your Bot Service applications taking consideration of the whole cycle from the request to when the response is received.
  • Able to stress test bots built-in Bot Builder SDK v3 or v4.
  • Able to stress test bots running locally or in Azure Bot Service.


You can find more info along with the documentation on how to install, create & run tests here:





(Reported by Edwin Hernandez)

  • New Modern Terminal was created by Microsoft as an open-source project. This Windows 10 app can have several types of shells as tabs on the same terminal window, even Unix shell.
  • The project is still on preview but looks great so far:


Give it a try:




(Reported by Darren Rich)

  • Have you been looking for an example site that has:
    • Docker-based Java web application along with build & release definitions, to deploy the application to the Docker containers in the Azure App Service (Linux) using VSTS
    • SonarQube template contains code of MyShuttle, a sample application that will be provisioned and customized to analyze the code during the build and improve code quality.
    • Octopus template contains code for a sample PHP application which will be compiled using VSTS Build and deployed using Octopus Deploy on to an Azure App service.


  • Can you answer yes to any of the following questions?
    • I’m creating my own VSTS site to learn more about (Docker, AKS, GitHub CICD, Octopus, Selenium, Deployment Groups, WhiteSource-Bold)?
    • I’m using the PartsUnlimited project to do XXX?
    • Let me e-mail SmartPersonName and see if she can quickly create a demo VSTS site for the meeting?


If you answered yes then you should check out the Azure DevOps Demo Generator site and the corresponding docs page at







(Reported by Darren Rich)

  • It is very common to come across query string parameters that have a HUGE number assigned to them.  You look around forever and do not find a solution.
  • One VERY COMMON source of these seemingly odd numbers is a value referred to as Unix Time.  The next time you are trying to see if that number you are trying to parameterize is the Unix time you can find the current one at a very cool site.






Current Millis ‐ Milliseconds since Unix Epoch

Convert milliseconds to date - UNIX timestamp - UTC. Leap seconds: Leap seconds are one-second adjustments added to the UTC to synchronize it with solar time.




(By Edwin Hernandez)

There are some tools used by developers and QA Engineers to do debugging of application, either on the front end or backend as well as the communications between them. These are not so obscure, these are known tools that you may already use, but just in case I wanted to include them on this list:


Wireshark. Packet analyzer for network traffic debugging

Fiddler. Http traffic debugger that uses a proxy to look at communication coming in and out of a host.

Performance Analysis of Logs (PAL) Tool. The PAL tool reads in a performance monitor counter log and analyzes it using complex, but known thresholds.

DebugDiag. Assists in troubleshooting issues such as hangs, slow performance, memory leaks or memory fragmentation, and crashes in any user-mode process.

PerfView. Performance-analysis tool that helps isolate CPU and memory-related performance issues. It is a Windows tool, but it also has some support for analyzing data collected on Linux machines. It works for a wide variety of scenarios but has several special features for investigating performance issues in code written for the .NET runtime.


And update on an old tool:

WinDbg Preview. Multipurpose debugger for Windows that can be used to debug kernel-mode and user-mode code, analyze crash dumps, and examine the CPU registers while the code executes. Microsoft just updated WinDbg to have more modern visuals, faster windows, a full-fledged scripting experience, and Time Travel Debugging. WinDbg Preview is using the same underlying engine as WinDbg, so all the commands, extensions, and workflows still work.




1 Comment
Version history
Last update:
‎Feb 11 2021 11:27 AM