A testing plan will help you achieve greater reliability, accuracy, and performance after launch. In this guide, we’ll help you build a testing plan to identify potential issues early and ensure that your application is using Finch APIs effectively.

1. Develop a comprehensive test plan

Create a test plan that outlines various scenarios, edge cases, and expected outcomes for your Finch API integration. Include both successful and unsuccessful cases, such as proper handling of errors types or rate limit constraints. Ensure that your test plan covers all relevant aspects of your Finch API integration, including authorization, API requests, data processing, and data storage.

2. Simulate test scenarios in a safe environment

Finch has two types of sandboxes:

  • Provider Sandboxes allow you to set up a test environment in an external provider system and connect to that system via Finch. This allows you to test Finch’s ability to connect to an external system, modify data directly in that system, and see those changes reflected in API calls to Finch.

Provider Test Environment.png

  • The Finch Sandbox lets you generate data to simulate scenarios you might encounter from a live provider without requiring an external connection. This sandbox environment allows for rapid and repetitive testing.

Finch Sandbox.png

Typically, provider test environments are useful during the early stages of testing with Finch or when testing a new integration, as they allow you to gain confidence in Finch’s connection to that system. The Finch sandbox is useful for ongoing testing where repetitive, programmatic simulations are needed. It also allows you to test all of Finch’s supported integrations, even those that don’t provide their own test environment.

Here’s an overview of feature support among our testing environments:

-Finch SandboxProvider SandboxProduction
Allowed connections
Allowed accounts per connection
Connect to real providers
Scheduled Data Syncs
- (?)
Assisted Connect
*Scale tier only
Integration configuration
Activity Logs
Request Forwarding

You may only use your Sandbox application to initiate a sandbox connection. If you do not have a Sandbox application yet, please sign up or reach out to us.

3. Write automated tests

Leverage automated testing tools and frameworks to run your test cases and validate common and uncommon API responses. Automated testing will help you identify any issues or inconsistencies (like null data fields) in your integration, and allow you to quickly address them before deploying your application to production. Regularly update your test cases as your integration evolves to ensure comprehensive coverage:

  • How does your application respond when a connection needs to be reauthenticated?
  • Does your application fail gracefully if a null data field is encountered unexpectedly?
  • How is an employer properly disconnected?
  • What happens if an employee enrollment is sent after the payroll close date?

4. Perform manual testing of Finch Connect

In addition to automated tests, perform manual testing of the frontend Finch Connect flow to validate its proper functionality and desired user experience. This may include end-to-end testing, where you simulate a user’s interaction with your application and verify that Finch Connect launches correctly and subsequent API calls are initiated.

  • What happens after Finch Connect closes after a successful connection? Where does the customer go next?
  • What happens after Finch Connect closes unsuccessfully (like invalid user credentials)?
  • What is expected when an existing connection is reconnected? What happens to the existing access token?

You can use Finch Connect in the Finch Sandbox to test these scenarios.

5. Monitor API performance

Continuously monitor the performance of your Finch API integration, including response times, error rates, and other relevant metrics. Log every Finch-Request-Id header for successful and unsuccessful requests to help with debugging in case any issues occur. Use monitoring tools or services to help you track these metrics and identify any potential bottlenecks or connection issues.

6. Request development credentials

Once you have vigorously tested against the sandbox with enough test coverage and you feel your application is ready to handle live data, you can request development credentials by reaching out to developers@tryfinch.com. Development credentials allow you to test with live data from a real account.

7. Keep your integration up-to-date

Stay informed about any updates or changes to Finch APIs and SDKs, which include new features, bug fixes, and deprecations. Update your integration as necessary to ensure your application remains compatible with the latest version of the Finch APIs and continues to provide accurate and reliable data to your application.

8. Maintain clear documentation

Keep clear and concise documentation of your Finch API integration, including its architecture, implementation details, and any customizations you’ve made. This documentation will be invaluable when troubleshooting issues with the Finch support team, making product updates, or onboarding new team members.

9. Conduct regular reviews

Periodically review your Finch API integration to ensure it continues to meet your application’s needs and performance requirements. Look for opportunities to optimize your integration, such as refining your request patterns, improving error handling, or exploring new Finch API features.

Checkpoint + Next Step

After completing this step, you will have a robust, reliable, and well-maintained Finch API integration that meets the needs of your application and users. Now, use the Finch Sandbox to create automated tests for any type of employment scenario you may encounter.

Learn more