Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #88345

Re: Hypothesis 1.0: A production quality property-based testing library for Python

Path csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!feeds.phibee-telecom.net!newsfeed.xs4all.nl!newsfeed4.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail
Return-Path <david.maciver@gmail.com>
X-Original-To python-list@python.org
Delivered-To python-list@mail.python.org
X-Spam-Status OK 0.001
X-Spam-Evidence '*H*': 1.00; '*S*': 0.00; 'python,': 0.02; 'anyway.': 0.05; 'subject:Python': 0.06; 'list).': 0.09; 'tests,': 0.09; 'api': 0.11; 'cc:addr:python-list': 0.11; 'python': 0.11; 'jan': 0.12; 'missed': 0.12; 'wrote': 0.14; 'programs.': 0.14; '(it': 0.16; 'builtins': 0.16; 'cool.': 0.16; 'dig': 0.16; 'easily,': 0.16; 'email addr:udel.edu&gt;': 0.16; 'email name:&lt;tjreedy': 0.16; 'finds': 0.16; 'notations': 0.16; 'reedy': 0.16; 'subject: \n ': 0.16; 'subject:1.0': 0.16; 'subject:based': 0.16; 'subject:library': 0.16; 'url:peps': 0.16; 'wider': 0.16; ':-)': 0.16; 'sender:addr:gmail.com': 0.17; 'wrote:': 0.18; 'library': 0.18; 'module': 0.19; 'examples': 0.20; 'thanks.': 0.20; 'tests': 0.22; 'cc:addr:python.org': 0.22; 'skip': 0.24; 'url:dev': 0.24; 'versions': 0.24; 'looks': 0.24; 'cc:2**0': 0.24; 'supported': 0.26; 'header:In-Reply-To:1': 0.27; 'testing': 0.29; 'message- id:@mail.gmail.com': 0.30; 'url:mailman': 0.30; 'gives': 0.31; 'usually': 0.31; '(maybe': 0.31; 'closer': 0.31; 'from:addr:david': 0.31; 'layer': 0.31; 'figure': 0.32; 'url:python': 0.33; 'actively': 0.33; 'becomes': 0.33; 'bugs': 0.33; 'cases': 0.33; 'maybe': 0.34; "i'd": 0.34; 'something': 0.35; 'beyond': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'url:listinfo': 0.36; "i'll": 0.36; 'url:org': 0.36; 'should': 0.36; 'integration': 0.37; 'unit': 0.37; 'being': 0.38; 'skip:o 20': 0.38; 'pm,': 0.38; 'previous': 0.38; 'rather': 0.38; 'does': 0.39; 'url:mail': 0.40; 'how': 0.40; 'read': 0.60; 'easy': 0.60; 'ago,': 0.61; 'full': 0.61; 'march': 0.61; 'range': 0.61; 'strictly': 0.61; 'simple': 0.61; 'such': 0.63; 'different': 0.65; 'great': 0.65; 'finally': 0.65; 'believe': 0.68; '2015': 0.84; 'guide:': 0.84; 'hypothesis': 0.84; 'url:latest': 0.91
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=ADny2OA7FF/ReyvYj7Y7v2z4uaYmh5vFENoH6aKMSno=; b=lmV/f/L7K76MU4ab7a5CtWOxg0GqZ2t5WeyWDje2O+If/ebKQKwZX8VBVo8IYZAKMR ystYqjvljMdADhxw1yHZVZofdc4BaGqEh3FE0THbhia8Kpyor41ngG2Kh0MXEa245qjr B5JgwTOwhyZX/zgS5yu/xfqOaSz3laihPi0LJy0uQNcC3E/iDDDJlgXiiYGng9OB6F2Q c5Ybu2ggRSQjOiIxcXNqoT6OCUEzGbizmbKYpOmEOFvBIW5YW3DM4AHtltHxHpEmdXNR sMQmbTtwQj/l6v0oRWQ3W6IxrmicvzztwKQS+nq/UgVY1kD0tAbUnZjD5lnPRgm3ftDI 8Fqw==
X-Received by 10.60.84.40 with SMTP id v8mr28733264oey.80.1427748427587; Mon, 30 Mar 2015 13:47:07 -0700 (PDT)
MIME-Version 1.0
Sender david.maciver@gmail.com
In-Reply-To <mfcc76$lj4$1@ger.gmane.org>
References <CADZYRLdFMB818EBjSzg5qh4H3k7-0VoWocWAqvAdLJiP8m5j6g@mail.gmail.com> <mfcc76$lj4$1@ger.gmane.org>
From David MacIver <david@drmaciver.com>
Date Mon, 30 Mar 2015 22:46:47 +0200
X-Google-Sender-Auth KpvXxIt21xJpJEUyoU27iRL4Fkg
Subject Re: Hypothesis 1.0: A production quality property-based testing library for Python
To Terry Reedy <tjreedy@udel.edu>
Cc python-list <python-list@python.org>
Content-Type multipart/alternative; boundary=047d7bd751f4dae81205128795b9
X-Mailman-Approved-At Mon, 30 Mar 2015 23:03:07 +0200
X-BeenThere python-list@python.org
X-Mailman-Version 2.1.19
Precedence list
List-Id General discussion list for the Python programming language <python-list.python.org>
List-Unsubscribe <https://mail.python.org/mailman/options/python-list>, <mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-list/>
List-Post <mailto:python-list@python.org>
List-Help <mailto:python-list-request@python.org?subject=help>
List-Subscribe <https://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe>
Newsgroups comp.lang.python
Message-ID <mailman.348.1427749388.10327.python-list@python.org> (permalink)
Lines 130
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1427749388 news.xs4all.nl 2905 [2001:888:2000:d::a6]:48327
X-Complaints-To abuse@xs4all.nl
Xref csiph.com comp.lang.python:88345

Show key headers only | View raw


[Multipart message — attachments visible in raw view] - view raw

On 30 March 2015 at 22:37, Terry Reedy <tjreedy@udel.edu> wrote:

> On 3/30/2015 2:44 PM, David MacIver wrote:
>
>> Hypothesis is a Python library for turningunit tests into generative
>> tests, covering a far wider range of cases thanyou can manually. Rather
>> than just testing for thethings you already know about, Hypothesis goes
>> out and actively hunts forbugs in your code.It usually finds them, and
>> when it does it gives you simple and easy to read examples to demonstrate.
>>
>
> Iteresting.  Some years ago, Vickor Stinner wrote a fuzzing module
> (fusil?).  I believe he found some bugs in the stdlib with it.
>

Cool. I'd somehow missed fusil, thanks. It looks interesting and I'll have
a dig through it for ideas :-)

Hypothesis and fusil are aimed at somewhat different levels. Hypothesis is
closer to being for unit testing (I mean you can use it for integration
testing and other things just as easily, but that's not strictly its
strength) whileas fusil looks better for testing whole programs.


>
> https://www.python.org/dev/peps/pep-0484/
> proposes the addition of a 'typing' module for defining types beyond the
> builtins and ABCs, such as List(int), Union(tuple, list).  If and when it
> is accepted and added (maybe 3.5, maybe later), you should consider having
> Hypothesis accept the notations that it can work with.


Yes, definitely. Having something like that as standard would be great for
Hypothesis and I intend to support it once it becomes available.

(It will force me to finally figure out how to do staged APIs, with some
versions of the API only supported on some versions of python, but I need
to do that anyway. This might involve just shipping a compatibility layer
for previous versions of Python in with Hypothesis)


>
>
>  Full documentation is available at
>> http://hypothesis.readthedocs.org/en/latest/, or if you prefer you can
>> skip straight to the quick start guide:
>> http://hypothesis.readthedocs.org/en/latest/quickstart.html
>>
>
>
> --
> Terry Jan Reedy
>
> --
> https://mail.python.org/mailman/listinfo/python-list
>

Back to comp.lang.python | Previous | Next | Find similar | Unroll thread


Thread

Re: Hypothesis 1.0: A production quality property-based testing library for Python David MacIver <david@drmaciver.com> - 2015-03-30 22:46 +0200

csiph-web