Documentation
DownloadPricingRelease Notes
English
English
  • Introduction
    • Welcome to Devin 👋
    • DevOps for Claris FileMaker
    • Why Devin When You Have Otto?
  • Features
    • Version Control
      • Advanced Version Control
    • Regression Testing
    • Deployments
      • Default Environments
      • Workflows
      • Under the Hood
    • Server & File Monitoring
  • Setup & Maintenance
    • Prerequisites
      • System Requirements
      • Network Considerations
    • Installation
      • Install Devin App
      • Install Devin Server
        • Install Devin on Your Own Server
        • Devin through a Hosting Provider
        • Upgrading from 1.0 Beta
  • Updates
    • Update Devin App
    • Update Devin Server
      • In-App Update Guide
      • Manual Update Guide
  • Uninstallation
    • Uninstall Devin App
    • Uninstall Devin Server
  • Server Mangement
    • Starting, Stopping and Restarting Devin Server
  • Guides
    • Getting Started
      • Create an Account
      • Connect to Development Server
    • Projects
      • Create a Project
      • Delete a Project
    • Modules
      • Add a Module
      • Branch a Module
      • Edit a Module
      • Delete a Module
    • Deployment Environments
      • Connect a Deployment
      • Update a Deployment
      • Disconnect Deployment
    • Branches
      • Create a Branch
      • Delete a File from a Branch
      • Delete a Branch
    • Versions
      • Save a Version
      • Compare Versions
      • Release a Version
      • Delete a Version
    • Tests
      • Load Test Scripts
      • Run Test Scripts
    • Releases
      • Create a Release
      • Deploy a Release
    • Servers
      • Add a Server
      • Change Development Server
      • Remove a Server
    • Team
      • Add Team Member
      • Remove Team Member
      • Manage Subscription
  • Support
    • Known Issues
    • Feedback
    • Release Notes
  • Legal
    • Privacy Policy
    • Terms of Service
Powered by GitBook
On this page
  • Embracing Regression Testing
  • Why Regression Testing Matters
  • Testing Methodology
  • Unit Tests
  • Integration Tests
  • Implementing Regression Testing using Devin

Was this helpful?

  1. Features

Regression Testing

Introduction to Regression Testing with Devin

Embracing Regression Testing

In the dynamic world of software development, ensuring the reliability and functionality of your application through updates and enhancements is important. This is where regression testing comes into play, a concept that, though widely recognized in general software development, is very new within the Claris FileMaker community. Regression testing involves systematically checking that recent scripts or schema changes haven’t affected or broken existing features, ensuring that your application continues to operate as expected before shipping new versions to your clients.

Why Regression Testing Matters

  • Maintain Integrity: As your FileMaker project evolves, regression testing helps maintain the integrity of existing functionalities, ensuring new changes don't introduce errors.

  • Enhance Quality: It's a proactive measure to enhance the overall quality of your application, contributing to a more stable and reliable software product.

  • Boost Confidence: Knowing that changes won't break existing functionalities boosts confidence among developers and stakeholders regarding the continuous improvement of the application.

Testing Methodology

With regression testing, we want to validate both individual components ("units") and their interactions with external dependencies ("integrations"). This ensures your application's robustness before releasing changes to a branch or before updates are deployed between environments.

Unit Tests

These tests focus on individual components or functions within your application, isolating each piece to verify its correctness. An example could be testing a script that calculates the total price in an invoice. By writing a Test Script that feeds predefined inputs into this function and checks if the output matches expectations, developers can ensure that even the smallest units of the application perform correctly.

Integration Tests

While unit tests examine the pieces, integration tests check how those pieces work together. An example might involve testing the entire invoicing process, from adding line items to generating the final invoice. Another example could be to validate that you get an expected http code back from an API, given a certain json payload. This ensures that when individual components interact, they do so as expected, and the end-to-end process is error-free.

Implementing Regression Testing using Devin

Devin introduces a simple testing framework that seamlessly integrates with your FileMaker Script Workspace, allowing you to write Test Scripts.

  • Organized Test Scripts: In your file’s script workspace, create a folder for your tests. By default, Devin will look for a Tests folder, but you can specify a custom name in the Project Settings. Devin will interpret all scripts in this and any sub-folders as test scripts.

  • Defining Success: Utilize the Exit Script [True] command within your test scripts to signify success. If a test script does not return True, Devin will interpret the test as FAILED.

Then, access the Modules -> Tests tab in Devin's Project Workspace to Load Test Scripts and Run Test Scripts.

Devin utilizes the FileMaker OData API to execute your tests. For successful test execution, ensure that the odata extended privileges are enabled for the account specified when adding the Module to Devin. Additionally, be aware that the FM OData API restricts script names from starting with numbers or containing special characters.

PreviousAdvanced Version ControlNextDeployments

Last updated 5 months ago

Was this helpful?

Example of a Script Workspace with three Test Scripts
Example of Tests running for a Module on a dev Branch