Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Unit/Automated Testing in a workflow system

Do you do automated testing on a complex workflow system like K2?

We are building a system with extensive integration between Sharepoint 2007 and K2. I can't even imagine where to start with automated testing as the workflow involves multiple users interacting with Sharepoint, K2 workflows and custom web pages.

Has anyone done automated testing on a workflow server like K2? Is it more effort than it's worth?

like image 885
willem Avatar asked Sep 27 '08 07:09

willem


People also ask

What is automated unit testing?

Automated unit testing is a method of testing software. Units (small sections) of the code are rigorously checked to ensure they work correctly. A separate program can be written specifically to test the unit, using every reasonable piece of data the code might encounter in real-world use.

What is the process flow for automated testing?

4 Stages to Get Started with Automation Testing Defining the automation's scope. Choosing a tool for automated testing. Planning, designing, and developing are all important aspects of any project. Execute test cases and create reports.

When Should unit testing be done as part of your automated workflow?

Unit Testing of the software product is carried out during the development of an application. An individual component may be either an individual function or a procedure. Unit Testing is typically performed by the developer. In SDLC or V Model, Unit testing is the first level of testing done before integration testing.

Is unit testing the same as automated testing?

Unit testing is a type of automated testing meant to verify whether a small and isolated piece of the codebase—the so-called “unit”—behaves as the developer intended.


1 Answers

I'm having a similar problem testing workflow-heavy MOSS-based application. Workflows in our case are based on WWF.

My idea is to mock pretty much everything that you can't control from unit tests - documents storage, authentication, user rights and actions, sharepoint-specific parts of workflows for sharepoint (these mocks should be thoroughly tested to mirror behavior of real components).

You use inversion of control to make code choose which component to use at runtime - real or mock.

Then you can write system-wide tests to test workflows behavior - setting up your own environment, checking how workflow engine reacts. These tests are too big to call them unit-tests, still it is automated testing.

This approach seems to work on trivial cases, but I still have to prove it is worthy to use in real-world workflows.

like image 168
Sergey Volegov Avatar answered Sep 22 '22 08:09

Sergey Volegov