BpmFlow
  • BPM Flow Manual
  • Introduction
    • Road Map
  • Installation
    • GemStone/S
      • Login to GemStone/S
        • Login to GemStone/S with JADE
        • Login to GemStone/S with Topaz
    • BPM Flow
      • Run Web Server from Interactive Session
      • Run Web Server from Script
    • Highcharts
    • Orbeon
  • Application Setup
    • Scripts to run the Application
    • Listing OS Processes
    • Indexing
  • Application Manuals
    • Backoffice Manual
      • Main Menu
        • Applications
          • Manage Environments
          • Manage Applications
          • Manage Orbeon Forms
          • Manage Calendars
        • Processes
          • Processes Definitions
          • Define New Process
            • Performers and Roles
            • Gateways Conditions
            • Versioning
            • Remove BPM Process Definition
            • Define a Task to run a Script
            • Bizagi Extended Attributes
            • RACI roles
            • Import Errors Codes
              • Generic errors codes
              • Activities error codes
              • Gateways error codes
              • Subprocess error codes
              • Runtime evaluations error codes
              • Interprocess Comunication codes
              • Integration error codes
              • Unsupported elements error codes
              • Transitions errors codes
          • Monitor Processes
          • Browse Timers
          • Process Categories
          • Cancelled Processes
        • Users and Roles
          • Monitor Users
          • Manage Users
          • Manage Roles
          • Import Roles and Users
          • Export Roles and Users
        • Messages
          • Inbox
          • Outbox
        • Configuration
          • User Preferences
          • Server Setup
          • Login Mode
          • Change Password
          • Set Language
          • Internationalization
    • Frontoffice Manual
      • Main Menu
        • My Tasks
          • Current Tasks
            • View Process Status
          • Finished Tasks
          • Process Categories
        • Unassigned Tasks
          • View Unassgined Tasks
        • New Process
          • Available Processes
          • Granted Tasks
        • Messages
          • Inbox
          • Outbox
        • Configuration
          • Change Password
          • Display References
          • Set Language
      • Main Menu
    • BI Manual
      • Main Menu
        • Dashboards
          • Current Dashboards
          • Old Dashboard
          • Historical Dashboard
        • User Charts
          • My Charts
        • System Charts
          • Global Charts
          • Applications Charts
          • Untitled
          • Processes Charts
            • Creation Day
            • Field Values
            • Field Evolution
            • Processes Average Time
            • Processes Instances
            • Tasks HeatMap
          • Roles Charts
            • Number of Tasks
            • Number of Users
            • Unassigned Tasks
            • Users in Time
          • Users Charts
            • Current Tasks by Type
            • Possible Tasks
            • Finished Tasks by Type
            • Tasks Average Time
        • Compare Fields
          • Field Comparison
        • Chart Repository
  • Functional and Technical Information
    • Anonymous Process Creation
    • Scalable Vector Graphics Support
    • Timers
      • Event Monitor Timespan
      • Process Creation Timer
      • Task Timers
      • Timers and Caledars
    • States
      • Process States
    • Tasks Assignation Policy
    • Partial Execution Framework
      • Technical Information
      • Functional Information
    • Roles and Performers
    • Debugging Process Execution
      • Manually inspect a BPM Process Instance
      • Automatically Generate a Test Case
  • Engineering Models
    • 4+1 Architecture Models
      • Logical View
        • BPM Components Architecture
        • BPM Environments or Tenants
        • Users & Roles - Processes & Forms
        • BPM Model
        • Orbeon Form Model
        • Seaside Component Model
        • Task Creation Clockwork
        • XPDL Process Generator
        • User Messages
          • User Inbox
          • User Outbox
        • Searching Field values in Bpm Processes
      • Development View
      • Process View
        • Seaside Orbeon Integration
          • GemStone to Orbeon
          • Orbeon to GemStone
      • Physical View
      • Scenarios
    • Architecture for Atop Applications
      • Atop Model Integration with BPM Flow
        • User Methods
          • asBpmUser
          • canDelete
          • finalizeAssignment
          • getAllAvailableTaskAssignmentsIn
          • getAllTaskAssignmentsWithId
          • getApplicationsIn
          • getBackofficeApplicationsIn
          • getBpmEnvironments
          • getCurrentAssignmentsIn
          • getMyTaskAssignmentsWithId
          • getProcessInstanceCategoriesFor
          • getProperty
          • getVisibleRolesIn
          • getVisibleUsersIn
          • isInAdminsEnvironment
          • languageName
          • lateralListPagingSize
          • regularListPagingSize
          • roleName
          • rolesIn
          • take
          • transitionDisplayModeIsExpanded
          • untake
          • username
          • userOptions
        • Role Methods
          • asBpmRole
          • bpmApplication
          • bpmEnvironment
          • getApplicationName
          • isBackofficeRole
          • isGranted
      • BPM Subclassification
        • Create subclass of Bpm Process Browser
        • Create subclass of Process Task List
        • Create subclass of Role Manager
        • Create subclass of User Manager
        • Create subclass of Unassigned Tasks Bag
  • Troubleshooting
    • Requests from Orbeon
  • Orbeon Integration
    • Orbeon Persistence Layer for GemStone/S
      • Install GemStone/S
      • Install Persistence Layer
      • Manage Persistence Layer
        • workwith script
        • List of Scripts
        • upgradeGemStone script
      • Manual Configuration
        • Restrictions when Saving Forms
        • Path for Attachments
        • Maintenance of OS Files and Attachments
        • Search Types
        • Indexing
        • Forms Audit
        • Deferred Processing
      • Service Diagrams
        • Form Runner Home
        • Publish or Unpublish Forms in Form Runner
        • Form Builder Summary
        • Orbeon Form Builder Toolbox
        • Forms Summary
        • Save Form Definition in Orbeon Builder
        • Publish Form Definition in Orbeon Builder
        • New Form with one draft
        • New Form with more than one draft
        • Edit
      • Service Http Methods
        • PUT
        • GET
        • POST
        • DELETE
        • LOCK & UNLOCK
      • Technical Information
        • 4+1 Architectual Model
          • Logical View
            • Objects relation Summary
          • Development View
          • Process view
          • Physical view
          • Scenarios
          • Troubleshooting
            • Request From Orbeon
      • Migration from Relational Database to GemStone/S
        • Migration from MySQL
    • Persistence Layer Backoffice
      • Orbeon Server Configuration
      • Orbeon Application Viewer
      • Create Charts with Highcharts
        • Chart Examples
      • Migrate from Relational Database
Powered by GitBook
On this page
  1. Functional and Technical Information
  2. Debugging Process Execution

Automatically Generate a Test Case

In this case a Test Case is generated automatically from the process instance then it can be ran N times to study any problem with the process.

PreviousManually inspect a BPM Process InstanceNextEngineering Models

Last updated 5 years ago

This case can be separated in two scenarios: 1) Create a test case to run it on the same server that the error happens 2) Create a package to be imported in another GS server The new Test Class includes all needed tests to reach the last task executed in the process and all needed resources of the process (such as forms).

Create the Test Class | processInstance testGenerator | processInstance := BpmProcessDefinition getProcessInstanceWithId: 1500319936. testGenerator := BpmProcessExecutionTestGenerator newOn: processInstance. testGenerator generateTestClass. Where [1500319936] is the ID of the process instance. In this case the generated class (with all its methods and resources) is: Proc1500319936ProcessExecutionTest

Scenario 1 In this scenario the test case is executed in the same GemStone/S server that the errors happens so there are no problem with executed scripts.

When the Test Executed a new instance of the process is created so is not the same process but a clone is used to study the actual process. The test case can be executed N times (no restrictions here).

Scenario 2 In this scenario the package that includes the Test Case (by default 'BpmRuntime_Tests_Automatic') has to be exported from GS1 and imported on GS2.

To import the package from GS1 in GS2: 1) Copy the files ''$GS_HOME/shared/repos/BpmFlow/repository'' in to GS2 server 2) Evaluate the following: Gofer new directory: '$GS_HOME/shared/repos/BpmFlow/repository'; package: 'BpmRuntime_Tests_Automatic'; load.

Limitations of Scenario 2: * Bpm Scripts must have all resources in server GS2 in order to be executed * Seaside tasks are NOT fully supportted (only OrbeonForms are supported)

Execute the Test Case 1) Open an SUnit browser 2) Select 'BpmRuntime_Tests_Automatic' package 3) Select the Test Case and execute it

For more imformation see issue #952:

https://github.com/brunobuzzi/BpmFlow/issues/952