Introducing Teams App Test Tool
The moment when developers can debug their bot applications in Microsoft Teams is a huge success indicator for building Teams bot applications. Teams Toolkit has made debugging experience easier through automation, however we still see many developers never reach a successful debug session, mainly blocked by:
- Not being able to sideload a custom app in the corporate tenant.
- Not being able to set up a tunnel due to company policies.
Although many developers can acquire a Microsoft 365 developer tenant to bypass tenant restrictions, it’s really challenging to get around the tunnelling requirement.
Now, we are excited to announce that we have included a new debugging option for Teams bot applications within Teams Toolkit – Teams App Test Tool – to make the debugging experience easier than ever.
What is Teams App Test Tool?
Teams App Test Tool (or short as Test Tool) is a component integrated into Teams Toolkit. This component helps developers to debug, test, and iterate on the app design of a Teams bot application in a web-based chat environment that emulates the behavior, look, and feel of Microsoft Teams.
Why use Teams App Test Tool
Teams App Test Tool enables the following capabilities for developers:
- Sandbox environment: Test and debug your bot application in a sandbox environment that emulates the behavior, look and feel of Microsoft Teams.
- Reduce local debugging frictions: Remove the prerequisites to obtain a Microsoft 365 Developer tenant and side-loading permissions before debugging the Teams bot applications.
- Network security: No need to set up a tunnel with Ngrok or Microsoft Dev Tunnel to expose the local bot application to the internet.
- Rapid inner-loop iterations: Quickly iterate on the app design and bot logic without the need to re-deploy the bot application to the cloud.
- Mock data and activities: The test tool makes it easy to accomplish a test for complex scenarios such as Send a welcome message when a new member joins the channel by using mock data as well as built-in and custom activity triggers.
- Reliable and trustworthy: You can trust the test tool because the Bot application UX (Adaptive Cards) is built on top of the same rendering technology as in Microsoft Teams.
- Integrate with existing Teams bot applications: The test tool can be integrated with existing Teams bot applications that are built with Bot Framework SDK.
- Easy inspections: You can inspect the interactions between your bot application and the Test Tool as well as the request and response payloads coming in and out of your bot application.
You can start with any bot application template in Teams Toolkit:
- Install a prerelease version of Teams Toolkit
- Create an application under Bot category (except AI Assistant Bot)
- Press F5 and see your bot launched in Teams App Test Tool!
Or use this sample application we prepared to play with the Test Tool. The sample app contains most commonly used features for a bot application, such as:
- Send proactive notifications
- Trigger a chat command and receive a response
- Trigger Adaptive Card actions
Have fun and happy coding!
Q: What should I do when some features I use in my bot application, but it’s not supported in the Test Tool?
A: You can always use the Microsoft Teams client to test features not supported in the Test Tool. If you are developing with Teams Toolkit, select the Debug (Edge) or Debug (Chrome) option to test your application in the Microsoft Teams client.
Q: How would I notice if some features are not supported in the Test Tool?
A: The Test Tool will show a warning message in the conversation and log panel when it detects some features are not supported.
Q: Should I solely rely on the Test Tool to test my bot application?
A: No. We always recommend developers test their bot application in the Microsoft Teams client before moving the application to production environment.
Leave feedback and shape our roadmap
The Microsoft Teams platform is rapidly evolving and we are working hard to bring more features to the Test Tool. We would love to prioritize our backlogs based on your feedback and suggestions so we can cover more extensibility surfaces and scenarios.
Please feel free to:
- Request a new feature
- Report an issue
- Send an email to email@example.com to chat with the product team
Follow @Microsoft365Dev on Twitter/X for the latest updates.