[PD-cvs] externals/pureunity/doc PureUnity.lyx,NONE,1.1

Mathieu Bouchard matju at users.sourceforge.net
Fri Jan 13 11:42:11 CET 2006


Update of /cvsroot/pure-data/externals/pureunity/doc
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20870

Added Files:
	PureUnity.lyx 
Log Message:
blah


--- NEW FILE: PureUnity.lyx ---
#LyX 1.3 created this file. For more info see http://www.lyx.org/
\lyxformat 221
\textclass article
\language english
\inputencoding auto
\fontscheme default
\graphics default
\paperfontsize default
\papersize Default
\paperpackage a4
\use_geometry 0
\use_amsmath 0
\use_natbib 0
\use_numerical_citations 0
\paperorientation portrait
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\defskip medskip
\quotes_language english
\quotes_times 2
\papercolumns 1
\papersides 1
\paperpagestyle default

\layout Title

PureUnity
\layout Author

Mathieu Bouchard <matju at artengine.ca>
\layout Date

January 13th, 2006
\layout Abstract

This paper covers the theory behind PureUnity, PureData's test framework.
\layout Standard


\begin_inset LatexCommand \tableofcontents{}

\end_inset 


\layout Section

What is testing?
\layout Subsection

a test tests something that gets tested
\layout Standard

(write ontological nonsense here)
\layout Subsection

a triad of testing
\layout Standard

I've thought of a triad:
\layout Standard

A.
 "the real thing"
\layout Standard

B.
 what it's documented as
\layout Standard

C.
 a way to verify that (1) and (2) agree
\layout Standard

and another one:
\layout Standard

changing A to match B+C: programming
\layout Standard

changing B to match A+C: the scientific method (aka reverse engineering)
\layout Standard

changing C to match A+B: unit-tests and contracts and scientific experiments
\layout Section

Methodologies of Testing
\layout Standard

I once called unit-tests "test-by-example" and contracts "test-by-rule".
 I think that those names are preferable to the more common names.
 I also hadlisted "test-by-use" which is to use the software in practice:
 this may include testing a component A using the unit tests for B because
 B uses A.The last I had listed was "test-by-proof", which is rarer and is
 the only one that requires analysing the implementation.
\layout Subsection

test-by-Proof
\layout Subsection

test-by-Use
\layout Subsection

test-by-Rule
\layout Subsection

test-by-Example
\layout Section

Quelques cossins
\layout Subsection

Protocol
\layout Subsection

Preconditions
\layout Subsection

Postconditions
\layout Subsection

Wrapconditions
\layout Subsection

Inheritance
\layout Subsection

Aspect-programming and stuff
\layout Subsection

Meta-abstractions
\layout Subsection

Float-Signal Polymorphism
\layout Subsection

Unit-Tests
\layout Subsection

Algebraic Properties
\layout Subsection

TODO
\layout Standard

\the_end





More information about the Pd-cvs mailing list