STRIDE 4.1.01x: Difference between revisions

From STRIDE Wiki
Jump to navigation Jump to search
No edit summary
 
(88 intermediate revisions by 3 users not shown)
Line 21: Line 21:


== Usability Improvements ==
== Usability Improvements ==
=== Test Double ===
=== STRIDE Runner ===
Now in the context of a [[Test_Units|Test Unit]] a dependent function call can intercepted and replaced with a user defined [[Function Double]].
[[Stride Runner]] is a new command line host based tool that allows performing target diagnostics and running target-based tests from a host computer and optionally uploading results to [[STRIDE Test Space]].
A set of new [[Test Double Samples]] for Test Units has been added.


=== Test Points ===
=== STRIDE Test Space ===
To support asynchronous tasks testing a set of new [[Using Testpoints|Testpoints]] APIs has been implemented. In the context of a [[Test_Units|Test Unit]] test point expectations could be set and validated.
[[STRIDE Test Space]] is a hosted web application for storing and analyzing your test results. Manually (using the web interface) or automatically from one of the STRIDE execution tools ([[STRIDE Runner]] or [[STRIDE Studio]]) the user now can create a fluid hierarchy of test results that adapts to shifting needs during a product lifecycle.
A new set of [[Test Point Samples]] for Test Units has been added.


=== Build Integration ===
=== Framework ===
A new STRIDE_ENABLED compiler switch (preprocessor directive) has been added to allow control over the compilation of STRIDE injected source ([[Test_Units#Test_Macros|Test Macros]] or [[Name Mangling]] macros). The use of srIMON compiler switch (preprocessor directive) has been deprecated in favor of STRIDE_ENABLED.
The product has been repackaged. In addition to the [[STRIDE Studio]] package, a new [[Desktop_Installation|STRIDE Framework]] package has been introduced. The new package provides support for Windows and Linux host clients.


=== Test Space ===
= Change Details  =
A new utility script is available to upload test results to STRIDE Test Space. (Consult your S2 Technologies representative for more information on STRIDE Test Space.) The [[s2Publish.pl]] script can be added to your STRIDE workspace script collection to upload your test results. Or, [[s2Publish.pl]] may be used from the command line.


 
== License ==
 
* A new licensing scheme has been implemented. Existing licenses will not work anymore and need to be reissued. Old and new licenses could co-exist at the same location.
= Change Details  =


== Fixes ==
== Fixes ==
Line 46: Line 42:
* Generated [[Intercept_Module|IM]] code for [[Using_Test_Doubles|Test Doubles]] is incorrect (compiler warning)
* Generated [[Intercept_Module|IM]] code for [[Using_Test_Doubles|Test Doubles]] is incorrect (compiler warning)
* [[STRIDE Studio]] may crash when compiling unions with internal discriminants.
* [[STRIDE Studio]] may crash when compiling unions with internal discriminants.
* [[STRIDE Studio]] is unable to publish results to [[STIRDE Test Space]].
* [[STRIDE Studio]] is unable to publish results to [[STRIDE Test Space]]. The support for Portal has been discontinued.
 
 


== Build Tools ==
== Host Tools ==
*The options of '''[[s2sinstrument]]''' have been changed to support handling of [[Function Double]].
* A new command line host based tool, [[STRIDE Runner]], has been introduced.


== Runtime ==
== Runtime ==
* STRIDE Host Release '''3.0.02xx''' is compatible with the Runtime Version '''3.00''', '''3.01''', '''3.02''', '''3.03''', and '''3.04'''
* STRIDE Host Release '''4.1.01x''' is compatible with the Runtime Version '''4.1.01'''
* Implemented a set of routines to support [[Function Double]]
* [[Test Point Testing in C/C++ |Test Points]] APIs have been changed.
* Implemented a set of routines to support [[Using Testpoints|Test Points]]
* The signature of the [[Platform_Abstraction_Layer#PAL_Input.2FOutput_Services|PAL IO Service]] InData callback (''palInDataCallback_t'') has changed. The first argument is now a '''const''' pointer.
* Implemented a set of [[Test_Units#Log_Macros|logging macros]]
* ''Most of the Runtime files have been modified. It is recomended that you update them all.''
* The signature of the [[Platform_Abstraction_Layer#PAL_Input.2FOutput_Services|PAL IO Service]] callback registrars (''palOutPndReg()'', ''palOutRdyReg()'' and ''palInReg()'') has changed. Instread of palBOOL, now they return the previously registreted callback or palNULL if not such set.
* The public Test Services ''srTestSuiteAddTest()'' API has been renamed to ''[[Test_Units#srTestSuiteAddCase|srTestSuiteAddCase()]]''
* In [[SLAP]] the user implemented s2slapDataReady() has been removed in favor of a new callback registrar s2slapRegDataReadyCb(). If implementing a custom [[Platform_Abstraction_Layer|PAL]] make sure to register your callback when initializing the IO services.
* ''Most of the Runtime, [[GRS]] and [[SLAP]] files have been modified. It is recomended that you update them all.''
* ''The following Runtime files have been removed:''
* ''The following Runtime files have been removed:''
  srtest.cpp
  srinstall.h
srtestmacros.h
  srinstall.c
  srtestmacros.c
srtestmacros.cpp
* ''The following new Runtime files have been added:''
* ''The following new Runtime files have been added:''
  srtestpp.cpp
  srdiag.h
srdiag.c
* ''All [[Linux SDK]] files have been modified.''
* ''All [[Linux SDK]] files have been modified.''
* ''All [[WinMobile SDK]] files have been modified.''
* ''All [[Windows SDK]] files have been modified.''
* ''All [[:Category:SDKs|Platform SDKs]] has been reorganized to better support the[[Off-Target Environment]].


== Host ==
= Minor and Patch releases =
* The Host Runtime Daemon process (s2shost.exe) has been removed, its functionallity is now part of the Transport Server (s2stpsrv.exe).


== 4.1.01a ==


''New features and improvements:''
* [[STRIDE Runner]] now supports transactional [[Stride_Runner#Options | upload]] to [[STRIDE Test Space]]


= Migration to 3.0.02xx  =
''Defects corrected and the customer tracking number associated with them, if any, in brackets []:''
* [[STRIDE Runner]] rejects device address with dots in the name.
* [[STRIDE Runner]] may deadlock during diagnostics.
* Removed extra "()" in the test point annotation
* STRIDE enabled Target applications may log an error on exit.
* In [[Linux SDK]] the PAL timer callback may deadlock.


Recommended steps for migration from a previous version:  
''The following Runtime source files have been modified:''
srtest.c


== Application's Code ==
''The following [[Windows SDK]] files have been modified:''
* Any inclusion of ''srtestmacro.h'' in the user's source should be replaced by inclusion of ''srtest.h'':
palIO.c
<source lang=c>
#include <srtest.h>
</source>


* Any reference to ''srIMON'' macro in the user's code should be replaced by reference to ''STRIDE_ENABLED'' macro:
''The following [[Linux SDK]] files have been modified:''
<source lang=c>
palIO.c
#if STRIDE_ENABLED
palOS.c
...
palcfg.h
#endif /*STRIDE_ENABLED*/
</source>


* Any reference to ''imDELEGATE'' macro in the user's code should be replaced by reference to ''imINTERCEPT'' macro:
== 4.1.01b ==
<source lang=c>
int foo(int x, int y)
{
    return imINTERCEPT(depend)(x) + y;
}
</source>


* Any captured function for the purpose of interception (formally known as delegation) should be enhanced with the new [[scl_function]] attributes:
''Defects corrected and the customer tracking number associated with them, if any, in brackets []:''
<source lang=c>
* [[STRIDE Runner]] on Windows fails to operate on COM port number greater than 9.
void foo(void);
* [[STRIDE Runner]] on Windows may log an error like "log4cplus:ERROR Unable to open file: ...".
#pragma scl_function(foo, "DEFINITION", "IMPLICIT", "GROUP_ID")
* [[STRIDE Runner]] may fail to HTTP redirect on results uploading.
</source>
* [[s2sbind]] and [[s2sinstrument]] on Windows may log an error like "log4cplus:ERROR Unable to open file: ...".
* Resource leak when using [[Test Point Testing in C/C++ | Test Points]].
* Default [[Runtime Reference|STRIDE Runtime]] configuration values (srcfg.h) for a non-complex target are too restrictive.
* In [[Windows SDK]] COM port connection may not work.
* [[C/C++ Samples]] source code was updated to remove compiler warnings


* Any use of Runtime Test Service ''srTestSuiteAddTest()'' API should be replaced with (renamed to) ''[[Test_Units#srTestSuiteAddCase|srTestSuiteAddCase()]]''.
''The following Runtime source files have been modified:''
srcfg.h
srdiag.h
srdiag.c
srmsgque.c
srmsgrt.c
srstid.c
srsuid.c


== Build Integration ==
''The following [[Windows SDK]] files have been modified:''
* Any Target compiler switch (preprocessor directive) using srIMON should be replaced with new one using STRIDE_ENABLED:
palIO.c
<pre>
palOS.c
> cc -DSTRIDE_ENABLED=1 -I ...
</pre>
 
* Any use of [[s2sinstrument|STRIDE instrument tool]] "SPD[uoed]#<group_id>" mode option should be updated according to the new format "SPI[T]" (along with any needed changes to the associated [[scl_function]] pragma). This is necessary especially when as formally called Delegates were generated. For example:
<source lang=c>
void foo(void);
#pragma scl_function(foo)
</source>
<pre>
> s2sinstrument --mode=Dued#mygroup(foo) ...
</pre>
Should be changed to:
<source lang=c>
void foo(void);
#pragma scl_function(foo, "REFERENCE", "EXPLICIT", "mygroup")
</source>
<pre>
> s2sinstrument --mode=PIT(foo) ...
</pre>
 
= Minor and Patch releases =


== 3.0.0201a ==
== 4.1.01c ==


''Defects corrected in STRIDE and the customer tracking number associated with them, if any, in brackets []:  
''Defects corrected and the customer tracking number associated with them, if any, in brackets []:''
* STRIDE Runtime install test caused linkage errors.
* [[STRIDE Runner]] freezes on unexpected connection termination.
* Setting a [[Function_Double|function double]] might cause a crash.
* [[STRIDE Runner]] on Windows may omit an error on COM port disconnect.
* STRIDE Runtime file srtest.h might generate errors when compiled with old C++ compilers.
* Added support for any count (0 or more) per [[Test Point Testing in C/C++ |Test Point]] expectation.
* In [[Linux SDK]] and [[Windows SDK]] too big buffer used in palLog().
* [[C/C++ Samples]] source code was updated to fix a resource leak


''The following Runtime source files have been modified:''
''The following Runtime source files have been modified:''
  srapi.c
  srconn.h
  srinstall.h
  srconn.c
  srinstall.c
  srib.c
  srtest.h
  srtest.h
srtest.c


''The following [[Linux SDK]] files have been modified:''
''The following [[Linux SDK]] files have been modified:''
  Makefile
  palOS.c


''The following [[WinMobile SDK]] files have been modified:''
''The following [[Windows SDK]] files have been modified:''
  stride.mak
  palIO.c
palOS.c


== 3.0.0201b ==
== 4.1.01d ==


''Defects corrected in STRIDE and the customer tracking number associated with them, if any, in brackets []:  
''Defects corrected and the customer tracking number associated with them, if any, in brackets []:''
* Intermittent palWait()/palNotify() failures when using [[Linux SDK]] in [[Linux_SDK#RTSINGLEPROC|multi-process]] mode.
* [[STRIDE Runner]] accepts non-standard Test Space URL format.
* [[WinMobile SDK]] failed to build in Windows CE 6.00.
* [[STRIDE Runner]] may incorrectly remove test cases on dynamic suite/case creation.
* Test Unit [[Pass/Fail Macros]] did not support pointer arguments.
* [[s2scompile]] may crash on compilation of invalid use of [[scl_test_flist]].
* Misalignment of conditional blocks involving pointers containing discriminated unions, during pointer setup in [[Intercept_Module|IM]] generation.
* Added support for printf like format to [[Test Code Macros]].
* In [[AutoScript|AScript]] unable to access members of out of range internally discriminated union. Added a new special "_Discriminant" member to any discriminated union objects to allow direct access to the discriminant.
* Enhancement to [[STRIDE Studio]] Trace View
** post filtering - to include matching call/return events
** sequence count - reset to 0 when cleared
* Bitfield members were not listed in [[STRIDE Studio]] Autosense.
* Incorrect [[Intercept_Module|IM]] generation for Remote Interceptors, i.e., a Dynamic Delegate without Tracing.
* ''s2Installtest.pl'' utility script has been updated to always generate an xml result file. The [[Verifying_Installation#s2InstallTest.pl | options]] have also been updated.
* ''TestHelloStride'' Test Unit removed from installation test logic.


''The following Runtime source files have been modified:''
''The following Runtime source files have been modified:''
  srtest.h
  srtest.h
  srtestpp.cpp
  srtestpp.cpp
  srinstall.h
 
  srinstall.c
== 4.1.01e ==
 
''Defects corrected and the customer tracking number associated with them, if any, in brackets []:''
* Dynamic test case result has no duration.
* Unable to build in Windows on a read-only ClearCase mount.
* Timestamp fraction (srCFG_TIMESTAMP_DURATION) not taken in consideration.
 
''The following Runtime source files have been modified:''
srtest.c
srtestutil.c
  srutil.h
 
== 4.1.01f ==
 
''Defects corrected and the customer tracking number associated with them, if any, in brackets []:''
* [[STRIDE Runner]] on Windows may log errors like "log4cplus:ERROR No appenders could be found ...".
* [[s2sbind]] and [[s2sinstrument]] on Windows may log errors like "log4cplus:ERROR No appenders could be found ...".
* Misbehaviour on Linux systems with non standard NPTL implementation.
* Microsecond srCFG_TIMESTAMP_UNITS treated as seconds.
 
''The following Runtime source files have been modified:''
  srtestutil.c
srutil.h


''The following [[Linux SDK]] files have been modified:''
''The following [[Linux SDK]] files have been modified:''
  palcfg.h
  palcfg.h
palIO.c
  palOS.c
  palOS.c
''The following [[WinMobile SDK]] files have been modified:''
stride.mak
palIO.c
  stride.c
  stride.c


[[Category:Release Notes]]
[[Category:Release Notes]]

Latest revision as of 22:21, 2 June 2010

Release Notes

This page documents the changes in STRIDE version 4.1.01x (code name Grandview).

Please review this information before upgrading from an earlier version.


Note that if you are upgrading from a previous installation you must uninstall your existing STRIDE before installing version 4.1.01x.


What's New

Based on customer feedback, in this release we have many key usability improvements and bug fixes.

Usability Improvements

STRIDE Runner

Stride Runner is a new command line host based tool that allows performing target diagnostics and running target-based tests from a host computer and optionally uploading results to STRIDE Test Space.

STRIDE Test Space

STRIDE Test Space is a hosted web application for storing and analyzing your test results. Manually (using the web interface) or automatically from one of the STRIDE execution tools (STRIDE Runner or STRIDE Studio) the user now can create a fluid hierarchy of test results that adapts to shifting needs during a product lifecycle.

Framework

The product has been repackaged. In addition to the STRIDE Studio package, a new STRIDE Framework package has been introduced. The new package provides support for Windows and Linux host clients.

Change Details

License

  • A new licensing scheme has been implemented. Existing licenses will not work anymore and need to be reissued. Old and new licenses could co-exist at the same location.

Fixes

This section describes defects which have been corrected in STRIDE and the customer tracking number associated with them, if any, in brackets [].

Host Tools

  • A new command line host based tool, STRIDE Runner, has been introduced.

Runtime

  • STRIDE Host Release 4.1.01x is compatible with the Runtime Version 4.1.01
  • Test Points APIs have been changed.
  • The signature of the PAL IO Service InData callback (palInDataCallback_t) has changed. The first argument is now a const pointer.
  • Most of the Runtime files have been modified. It is recomended that you update them all.
  • The following Runtime files have been removed:
srinstall.h
srinstall.c
  • The following new Runtime files have been added:
srdiag.h
srdiag.c

Minor and Patch releases

4.1.01a

New features and improvements:

Defects corrected and the customer tracking number associated with them, if any, in brackets []:

  • STRIDE Runner rejects device address with dots in the name.
  • STRIDE Runner may deadlock during diagnostics.
  • Removed extra "()" in the test point annotation
  • STRIDE enabled Target applications may log an error on exit.
  • In Linux SDK the PAL timer callback may deadlock.

The following Runtime source files have been modified:

srtest.c

The following Windows SDK files have been modified:

palIO.c

The following Linux SDK files have been modified:

palIO.c
palOS.c
palcfg.h

4.1.01b

Defects corrected and the customer tracking number associated with them, if any, in brackets []:

  • STRIDE Runner on Windows fails to operate on COM port number greater than 9.
  • STRIDE Runner on Windows may log an error like "log4cplus:ERROR Unable to open file: ...".
  • STRIDE Runner may fail to HTTP redirect on results uploading.
  • s2sbind and s2sinstrument on Windows may log an error like "log4cplus:ERROR Unable to open file: ...".
  • Resource leak when using Test Points.
  • Default STRIDE Runtime configuration values (srcfg.h) for a non-complex target are too restrictive.
  • In Windows SDK COM port connection may not work.
  • C/C++ Samples source code was updated to remove compiler warnings

The following Runtime source files have been modified:

srcfg.h
srdiag.h
srdiag.c
srmsgque.c
srmsgrt.c
srstid.c
srsuid.c

The following Windows SDK files have been modified:

palIO.c
palOS.c

4.1.01c

Defects corrected and the customer tracking number associated with them, if any, in brackets []:

The following Runtime source files have been modified:

srconn.h
srconn.c
srib.c
srtest.h
srtest.c

The following Linux SDK files have been modified:

palOS.c

The following Windows SDK files have been modified:

palIO.c
palOS.c

4.1.01d

Defects corrected and the customer tracking number associated with them, if any, in brackets []:

The following Runtime source files have been modified:

srtest.h
srtestpp.cpp

4.1.01e

Defects corrected and the customer tracking number associated with them, if any, in brackets []:

  • Dynamic test case result has no duration.
  • Unable to build in Windows on a read-only ClearCase mount.
  • Timestamp fraction (srCFG_TIMESTAMP_DURATION) not taken in consideration.

The following Runtime source files have been modified:

srtest.c
srtestutil.c
srutil.h

4.1.01f

Defects corrected and the customer tracking number associated with them, if any, in brackets []:

  • STRIDE Runner on Windows may log errors like "log4cplus:ERROR No appenders could be found ...".
  • s2sbind and s2sinstrument on Windows may log errors like "log4cplus:ERROR No appenders could be found ...".
  • Misbehaviour on Linux systems with non standard NPTL implementation.
  • Microsecond srCFG_TIMESTAMP_UNITS treated as seconds.

The following Runtime source files have been modified:

srtestutil.c
srutil.h

The following Linux SDK files have been modified:

palcfg.h
palOS.c
stride.c