July 2nd 2012
Sureassert UC 2.0.0 is now available for download
This is the first v2.x release, built upon a new foundation using byte-code instrumentation and the JaCoCo library. This release offers much improved performance, improved incremental real-time code coverage reporting (including partial coverage) and improved JUnit integration (e.g. test class exclusion filtering). All users of 1.x and BETA versions should update as soon as possible.
Change details TBA shortly…
April 22nd 2012
Sureassert UC 2.0.0-BETA-2 is now available for download
This is an early release version of Sureassert 2.0 that fixes some issues found in BETA-1.
Changes:
0000035 | block | Exemplars fail with NPE when AspectJ cannot resolve JoinPoint for Sureassert advice |
0000034 | feature | #= should support primitive types |
0000033 | major | Cannot use $argN notation within arguments of a SIN Expression |
March 17th 2012
Sureassert UC 2.0.0-BETA-1 is now available for download
This is an early release version of Sureassert 2.0. The big change is behind the scenes with the instrumentation mechanism, which now uses AspectJ Load-Time Weaving. This significantly reduces the time taken for Sureassert to process projects when performing builds.
Important notes:
- This BETA-1 build has code coverage reporting disabled as this funcionality has not been ported to the new back-end mechanisms yet. The 2.0.0 release will have coverage reporting re-enabled (along with some new coverage reporting features).
- If upgrading from a previous build, uninstall the previous build first before installing this one.
- If upgrading from a previous build, you may experience problems using the Run/Debug As->Sureassert UC function and the Workspace/Selection Sureassert UC Runner launches. This is because the launch configuration has changed with this version. To fix this simply remove the old launches (Run->Run Configurations->expand OSGi Framework and delete any Sureassert launches). They will then be re-created with the correct configuration on the next attempt to Run/Debug As->Sureassert UC. This step will be removed with the full 2.0.0 release.
Changes:
0000031 | minor | Double shorthand notation doesn’t work within primitive array type |
0000030 | minor | Cannot create empty primitive array |
0000029 | minor | Cannot use array.lenth |
0000028 | minor | Can’t directly represent the string “null” (see text for workaround) |
0000025 | block | Compilation error in instrumented source: Nested if without {} |
0000011 | feature | Instrumentation speed may be increased with bytecode AOP |
November 17th 2011
Thought it would be good to give a quick update on the development roadmap. Work on version 2 has started. Items on the roadmap for version 2.x are:
- Enhanced performance: replace the current source-level instrumentation component with a bytecode AOP agent. This should dramatically reduce the time required by Sureassert to instrument projects.
- Enhanced coverage reporting: add the ability to generate Sureassert test coverage reports for individual projects or the entire workspace, amongst other improvements.
- Enhanced build system integration / standalone execution: support Sureassert execution without headless Eclipse and add ant/maven integration.
- Enhanced contract enforcement: add annotations to specify pre and post-conditions of methods (including abstract/interface methods).
- Enhanced Eclipse integration: show/hide Exemplars; Exemplar editor; etc.
If you have a burning need for any of these or any other features, please drop us a note at info@sureassert.com.
On a separate note, all releases from 1.3.1 onwards will be kept available for download from this website.
November 13th 2011
Sureassert UC 1.3.1 is now available for download!
Changes:
0000024 | major | On some Eclipse builds Sureassert can cause org.eclipse.jdt.core to crash with NullPointerException |
0000023 | major | Enabling auto-refresh (polling on Windows) can result in frequent full builds |
0000022 | major | Classes with nested anonymous types (i.e. anon defined within anon) cause instrumentation error |
October 11th 2011
Sureassert UC 1.3.0 is now available for download!
Changes:
0000021 | feature | Allow use of an Exemplar as a template for another Exemplar within a class |
0000020 | feature | Enforce use of “Class/instanceName” for named instances and allow omission of “Class/” within class |
0000019 | major | Project instrumentation results in NPE where there is an enum using constructor invocations this(n) or super(n) |
0000018 | feature | Should be able to use the instance and arguments of a stubbed method in the stub result expression |
0000017 | tweak | Stub definitions require =expression even for methods that return void |
0000016 | major | Exemplar before property not functioning, and should include after property for any required clean-up |
0000015 | minor | Markers on interfaces for inherited Exemplars resulting in error not removed when error is fixed |
0000014 | feature | Cannot use the re-execution postfix (“!”) in the instance property pointing at an instanceout |
August 28th 2011
Sureassert UC 1.2.1 is now available for download!
Changes:
0000013 | feature | Add support for defining Exemplars on non-static inner classes |
0000010 | minor | A class in interface causes SureAssert error |
August 15th 2011
Sureassert UC 1.2.0 is now available for download!
Major Changes:
0000009 | UseCases sometimes not exeucted in correct order when using ucName!, leading to UC errors. |
0000007 | Support behaviour verification |
0000008 | Error “cannot define both UC and MUC on a method” should be reported as Problem at method line not global Error |
0000006 | Shouldn’t need to fully-qualify java.lang classes |
0000005 | Method stub defs containing fully-qualified class names cause NPE |
0000004 | Signatures with 1 parameter treated as no-params by dependency manager |
0000003 | Dependencies on instanceout not calculated |
June 26th 2011
Sureassert UC 1.1.0 is now available for download!
New Features:
- 0000002: [Performance] UC Engine now runs as embedded background server
- 0000001: [Feature] Stubs can now throw exceptions
May 28th 2011
The initial release of Sureassert UC, v1.0.1, is now available for download!