Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[hyades-dev] Test model updates


Following Joe's email...

Here are the model updates that we've made with Marcello and Peter.

1. Creation of the Instance and Deployable concepts

See common/configuration/Main. CFGDeployable is a superclass of Arbiter, TestComponent, SUT, TestSuite. It maps to a Classifier/Class in the UML space or Java space. A Deployable owns CFGInstances (think class attributes). Those CFGInstances are typed by a Deployable. As an example, the Instances of a Test Suite (A kind of Deployable) would be the instances present in an Interaction.

The introduction of these new concepts result in the following modifications:
        - Removal of ArbiterInstance, SUTInstance, TestComponentInstance and DeployableInstance. We have one kind of instance a Depoyable being a superclass of the kinds of Instances that we had in the past.
        - Removal of the two associations from SUT to SUT, and from Test Component to Test Component. This compositionnality is given by the fact that you can have a TestComponent owning Instances, which can be typed by a TestComponent. Same thing for an SUT.
        - A lifeline is no longer related to DpeloyableInstance but Deployable
        - Deployable owns the behaviorResource and behaviorLocation to identify where the behavior of this Deployable is defined (in place of DeployableInstance)
        - An association from TestComponent to Behavior is removed. This association was created to be able to identify which TestComponent in the Interaction was representing "self" (The Test Suite classifier). This is no loner needed because a Lifeline is associated with a Deployable, and a TestSuite being a Deployable, "self" is a lifeline whose deployable is the TestSuite owning the TestCase the Interaction belongs to.

2. Creation of a Test superclass for TestCase and TestSuite
Both a  TestCase and TestSuite are associated with a TestObjective, an ExecutionResult, and a Behavior. Building them on a common interface simplifies the implementation. This doesn't change any of the semantic of the Test Profile because Test is an interface, not a comcept per se.

3. Multiplicities
Deployable 1 ------ 0..n Lifeline : A Deployable can be used for several lifelines
Arbiter 1 ------ 0..1 TestSuite : One should be able to define an Arbiter independently from a TestSuite and reuse it in many suites


All the modifications are visible in the following diagrams
common/behavior/interactions/Messages
common/configuration/Main
common/testprofile/Main

I've attached the plugin for your review. We'll meet on Monday at 9:00AM EST.

Serge

Attachment: org.eclipse.hyades.models.common.zip
Description: Zip archive


Back to the top