Am 29.09.2013 um 21:02 schrieb Tim Bunce <tim.bu...@pobox.com>:

> Here's an updated Requirements document, tweaked a little based on the 
> feedback.
> 
> 
> Goals:  ("how will we know if this project is or is not a success")
> 
>    G1. driver developers improve their compliance with the DBI API
>        and so improve consistency and portability of code.
>        This is what it's all about!
> 
>    G2. driver developers adopt DBIT as a free test suite with good
>        coverage of the DBI API. This is the pay-back _for_ developers.
> 
>    G3. driver developers write and share reusable generic tests
>        (they'll still need to write their own driver-specific tests).
>        This is the pay-back _from_ developers.
> 
>    G4. end users aren't affected by DBIT evolution causing install failures
>        i.e., DBIT runs as 'author testing', *at least for now*.
>        This is our promise to end users not to ruin their day.
> 
>    G5. works with the widest range of DBI drivers, including non-SQL and
>        proxy drivers.  This is a promise to be inclusive and flexible.
> 
>    G6. enables testing with DBI::PurePerl for pure-perl drivers.
>        This is a promise to support fatpackers and perl6 ;)
> 
>    G7. end users can find the level of DBI API compliance of a driver
>        The test configuration, e.g., what tests to skip, will be data-driven
>        rather than hard-coded logic, and the data will readable via some API.
> 
> 
> Scope:  (the boundaries and deliverables of the project)
> 
>    S1. the DBIT will be a separate distribution.
> 
>    S3. the DBI won't have a mandatory dependency on DBIT,
>        for now at least, driver developers are the priority.
> 
>    S4. DBIT is not meant to test the underlying database.
>        If a driver implements a database itself then it'll
>        need it's own tests to provide good coverage of that.
>        Those tests could use the DBIT infrastructure.
> 

I don’t find the mail regarding that, but I remembered that my primary
goal is testing the underlying database (I call it SQL::Statement ^^).


> Requirements:
> 
>    R1. be easy for driver developers to adopt,
>        so existing drivers migrate to using it.
> 
>    R2. be easy for driver developers to extend/contribute to,
>        so driver developers contribute to it.
> 
>    R3. work well with cpantesters,
>        so we get good coverage (perhaps extend Test::Database)
> 
>    R4. use get_info as the basis for determining the capabilities
>        of the driver and database. We'll extend get_info as needed.
> 
>    R5. allow tests to be run in parallel, e.g. unique table names.
> 
>    R6. provides tools that drivers can use/extend for themselves.
>        I'm thinking specifically here of the creation of test files
>        with combinations of env vars and other settings.
>        E.g., test DBD::CSV with Text::CSV and Text::CSV_XS
> 
> 
> Tim.
> 

-- 
Jens Rehsack
rehs...@gmail.com





Reply via email to