neuen Liste die Summe der Längen der Ausgangslisten f o r a l l l 1 , l 2 : l 1 . a p p e n d ( l 2 ) . l e n g t h = = l 1 . l e n g t h + l 2 . l e n g t h
zufällige Testdaten ... und validiert Property mit diesen Testdaten l 1 = [ ] , l 2 = [ ] : l 1 . a p p e n d ( l 2 ) . l e n g t h = = l 1 . l e n g t h + l 2 . l e n g t h - > t r u e l 1 = [ 0 ] , l 2 = [ ] : l 1 . a p p e n d ( l 2 ) . l e n g t h = = l 1 . l e n g t h + l 2 . l e n g t h - > t r u e l 1 = [ ] , l 2 = [ 1 ] : l 1 . a p p e n d ( l 2 ) . l e n g t h = = l 1 . l e n g t h + l 2 . l e n g t h - > t r u e l 1 = [ 1 , 2 ] , l 2 = [ ] : l 1 . a p p e n d ( l 2 ) . l e n g t h = = l 1 . l e n g t h + l 2 . l e n g t h - > t r u e . . .
sollen sich verhalten wie die Methoden von H a s h M a p f o r A l l { ( h : H a s h M a p ) = > v a l m = M y M a p . f r o m H a s h M a p ( h ) m . f o o ( ) = = h . f o o ( ) }
zutreffen Trennung der Tests und Generierung der Testdaten (teilweise) schwierig zu schreiben Randfälle müssen nicht extra betrachtet werden ein Property deckt eine Vielzahl von Beispielen ab => größere Testabdeckung durch weniger Code