The SCons build system has had a testing infrastructure for many years,
unfortunately with only a minimal number of actual test cases.
As I have seen, the CMake system has one too, suffering the same problem.

It's just a matter of interested parties contributing test cases.

Covering all the existing code is one challenge. But it would be most helpful if anyone adding features also provided test cases to demonstrate what they are supposed to do, and even more importantly what they are NOT supposed to do.

Those could be just small(!) datasets with a description, and not necessarily already integrated into a test suite. Someone who is familiar with one of the suites can then integrate them. In the ideal case, no new feature wold go into
a "final release" without a comprehensive set of test cases covering it.

Besides that, given the "organic" development and limited resources, I'm not sure if changing the release cycle would make much of a difference in when bugs are found. There's only a small number of people checking out the HEAD version,
and those only try it on a very limited data set.

The majority will only download after a new final release has been announced, no matter wether the release candidate has been around for a week or a month. And only then will the new release be confronted with the "interesting" data
that actually triggers most bugs.

The important part here is to then create test cases specifically testing for those bugs, to make sure they won't resurface later (regression testing).
QA is a dirty job, but someone's gotta do it...

-schorsch


Am 2016-03-14 02:20, schrieb Gregory J. Ward:
We definitely have a more organic, non-standard release process for
Radiance.  I am open to suggestions for alternatives.  One of our
ongoing issues is the lack of a test suite to verify a release
candidate and identify regressions.  We haven't had the resources to
create such a test suite, though Rob took a shot at it at some point.

-Greg

From: Rob Guglielmetti <rob.guglielme...@gmail.com>
Subject: Re: [Radiance-dev] Release numbering
Date: March 12, 2016 6:44:54 PM PST

Actually, the release candidate is the ‘b’ release in Greg’s parlance, which usually exists for a very brief time. If you look at the GitHub releases, we did make a 4.2.b.0, followed a week later by the official 4.2 release. It’s my understanding the HEAD is considered alpha code until right before an official release. Radiance major versions are released when they are released, generally following a brief period where it’s considered ‘beta’, and then the version goes back to ‘a’ in the HEAD and stays there until shortly before the next major release, again to ‘b’, and then, new version number. Twas ever thus.

At NREL we hang an additional identifier after the ‘a’ on each of our “releases” (which are really just snapshots, or tags), just to keep them in order. It’s not true semantic versioning, but it’s a way for us to keep track of which tag we’re using with which OpenStudio releases and whatnot. It can be confusing because our v5.0.a.5 predates the official release v5.0, which itself predates the latest set of packages we made: v5.0.a.8.


On Mar 12, 2016, at 7:24 PM, Randolph M. Fritz <rmfri...@gmail.com> wrote:

It occurs to me that what we are calling a "release," the rest of the world has taken to calling a "release candidate" -- the version that is almost complete, but still has a couple of annoying bugs hiding that users identify as soon as they put it into service. Perhaps this would be a convention we could adopt.
--
Randolph

_______________________________________________
Radiance-dev mailing list
Radiance-dev@radiance-online.org
http://www.radiance-online.org/mailman/listinfo/radiance-dev

--
Georg Mischler  --  simulations developer  --  schorsch at schorsch com
+schorsch.com+  --  lighting design tools  --  http://www.schorsch.com/


_______________________________________________
Radiance-dev mailing list
Radiance-dev@radiance-online.org
http://www.radiance-online.org/mailman/listinfo/radiance-dev

Reply via email to