IBM Support

Building Rhapsody Test Conductor auto generated source files results in Compile errors (C4047/C4028)

Troubleshooting


Problem

Attempts to build IBM Rational Rhapsody in C model files which are automatically created by Rhapsody Test Conductor Add-on result in Compile error (C4047/C4028).

Symptom

Steps to Reproduce:

  1. Create a Rhapsody in C model
  2. Add a bi-direction association between class_0 and class_1
  3. Set multiplicity "*" on End1(itsClass_1)
  4. Also apply "qualifier" info on itsClass_1 role as the model shown below.


  5. Using Rhapsody Test Conductor to create Test Architecture against class_0.


Expected result: No error occurs when compiling the generated Test Architecture configuration.

Actual Result: Below error occurs when compiling the generated Test Architecture configuration.

Cause

This is a feature limitation in Rhapsody in C model which Test Conductor doesn't support above design.

NOTE: There is NO such a limitation in Rhapsody in C++ model.

Resolving The Problem

You can avoid above mentioned compiling error by following below steps to modify the auto-generated test architecture model manually before building the configuration.

(original model and modified model are attached below.)

  1. Exclude test conductor package from original model component.

  2. Enable project property CG::CGGeneral::GeneratedCodeInBrowser and save the change.
  3. Activate original component(DefaultComponent) and run code generation.
  4. Next, set test conductor component(TPkg_class_0_Comp) as active component.
  5. Open the code of Default::class_1 and copy/paste the body of setItsClass_0 and _setItsClass_0 into the same named operations of the test component class_1. Save the change done to the model.


  6. Now, building the test conductor component(TPkg_class_0_Comp) should be successful.


[Additional Information]
  • A feature enhancement request has been submitted to request Test Conductor implementation for above design in RiC model as well.
  • You can use code, flow chart, state chart test cases with this model. SD based test cases will not work (TC won't be able to generate the right stub/driver code for the unbounded multiplicity).

[{"Product":{"code":"SSB2MU","label":"IBM Engineering Systems Design Rhapsody"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"General Information","Platform":[{"code":"PF033","label":"Windows"}],"Version":"8.0;8.0.1;8.0.2;8.0.3;8.0.4;8.0.5;8.0.6","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Product Synonym

Rational Rhapsody

Document Information

Modified date:
27 May 2022

UID

swg21671535