Bridging the Git-to-Jira Gap: How Generative AI Finally Unifies Your Engineering Data
Stop manually matching GitHub PRs to Jira tickets in Excel. See how Keypup's AI Agent instantly translates business goals into technical execution metrics.
Learn how to integrate Dialogflow, a powerful natural language processing tool, into your Rails projects. Discover how to import and export agents, and how to implement regression testing to ensure your agents are working correctly.
For those that are not familiar with Dialogflow, itâs a platform that makes it easy to design a conversational user interface that can be easily integrated with a variety of applications (e.g. chatbots đ). Click here for more on Dialogflow.
So youâve decided to integrate Dialogflow with your Ruby on Rails application. Youâve created a Dialogflow agent, your code is in place, and youâre ready to deploy your application. Before you do, itâs worth considering how active development will be managed.
Ongoing development requires allowing developers to make changes to the agent. Even small changes to the agent could potentially lead to some unexpected behavior which may initially go unnoticed, especially with more complex conversational flows. To mitigate the risk of errors or application downtime, letâs look at how integration/regression testing can be put in place for the agent itself.
The following rake task examples can be adapted and used to upload & download the agent as a zip file. Weâll need this to write the regression tests and it also makes it easy to record the state of the agent or reset the agent to a previous state during development.
The rake tasks above make use of the following utility class to assist with zip file manipulation.
Now that the agent push/pull rake tasks are in place, they can be used to write regression tests.
Here is an example of how they can be set up:
The example above assumes the existence of a directory of JSON files containing testing scenarios. Here is a basic example of how one of these files might look if we wanted to test the behavior of Dialogflowâs prebuilt smalltalk agent, and an example of a more complex scenario with parameter expectations:
Dialogflow makes it easy to add powerful conversational capabilities to your application. But, with something as complex as natural language processing, integration/regression testing can help you save time, avoid frustration, and make your Dialogflow integration as robust as possible.
I hope the suggestions and examples in this article help you to simplify your development as much as theyâve helped me.
Keypup's SaaS solution allows engineering teams and all software development stakeholders to gain a better understanding of their engineering efforts by combining real-time insights from their development and project management platforms. The solution integrates multiple data sources into a unified database along with a user-friendly dashboard and insights builder interface. Keypup users can customize tried-and-true templates or create their own reports, insights and dashboards to get a full picture of their development operations at a glance, tailored to their specific needs.
Code snippets hosted with ⤠by GitHub.
Banner imagine designed by Designed by zaie / Freepik
â
Join teams already using AI to make data-driven decisions faster than ever.
Stop manually matching GitHub PRs to Jira tickets in Excel. See how Keypup's AI Agent instantly translates business goals into technical execution metrics.
Developers hate engineering metrics because they feel like surveillance. Learn how to use Keypup's AI to shift the focus from individual micromanagement to systemic SDLC improvement.
Discover why internal DIY dashboards and basic LLM wrappers just create 'noise.' Learn how Keypupâs NLP platform goes beyond plotting metrics to actively diagnose your SDLC bottlenecks and prescribe actionable improvements.