Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

DBI::Test

3 views
Skip to first unread message

H.Merijn Brand

unread,
Apr 27, 2013, 7:10:39 AM4/27/13
to DBI Developers Mailing List
DBI::Test
-----------------------------------

Several of use DBI/DBD developers were playing with an idea for a long
time to come to a new way of testing DBI and DBD and especially the API
as defined by the DBI.

We have noticed in several occasions that the DBI defines the API,
where testing the API is hard because there is not (yet) an actual
database on the backend (no functional DBD) and from the other side
(the DBD) some of these tests are quite the same, just to test if the
API as documented from the DBI is working as expected from the DBD
point of view.

The plan has grown to create a new module that would replace the API
tests in the DBI test suite and that can also be used without
modification in the DBD test suites.

This way we can assure that all documented API is tested the same way
from both sides. As a bonus, we can have the DBD check that ALL DBI
functionality is implemented (or documented not to be) and that all
functionality (like logging) are dealt with in the way the end-user is
expecting the DBI/DBD to work.

As the Lancaster Consensus has come to the conclusion that the new
toolchain can expect a minimum of perl-5.8.1 (which might be raised to
5.8.4 when the need arises), we have set the lower bound for DBI::Test
to be 5.8.1, which includes the use of recent Test::More and the use of
done_testing (); (no plans).

What the end-user sees: http://tux.nl/Talks/images/dbi-dbd.png
How that is currently tested: http://tux.nl/Talks/images/testing.png
What the new plan would be: http://tux.nl/Talks/images/dbi-api.png

The team that is currently working on this plan, as started on the QA
hackathon in Lancaster, is

Name IRC (irc.perl.org/6667 #dbi)
---------------- ----------------------------
Jens Rehsack Sno
Peter Rabbitson ribasushi
H. Merijn Brand Tux
Joakim Tørmoen trmjoa

with a possible new member soon: Vince Willems

You can watch the effort in https://github.com/perl5-dbi/DBI-Test
The notes made in Lancaser are in
https://github.com/perl5-dbi/DBI-Test/blob/master/sandbox/qa2013-notes.txt

Jens is currently working on DBI::Mock, which is needed for DBI-less
tests (SQL::Statement) and for testing DBI::Test itself

Joakim is writing the tests. Some are there, and the aim is to have a
small focussed working test before aiming at completeness, so we can
test with actual DBD's and have feedback early in the process. Joakim
will be supported by Peter, who will coordinate the test setup.

The plan is to support a full matrix of tests, including both DBI/XS
and pure-perl DBI, as well as with and without proxy or other optional
parts. There will be a possibility to skip pure-perl DBI (DBD::Oracle,
DBD::CSV with Text::CSV_XS) or to skip DBI/XS (DBD::Pg_PP, DBD::CSV
with Text::CSV_PP).

I will set up a basic readme, with some of this mail and references to
the mailing list and repository, the aims and the plans.

As there already seems to be a DBI::Test here:
https://metacpan.org/module/DAVEBAIRD/Class-DBI-FormBuilder-0.481/DBI/Test.pm
I might have to contact him to see what we can work out in that
namespace. Hopes are not really high: his last update was 2008.

--
H.Merijn Brand http://tux.nl Perl Monger http://amsterdam.pm.org/
using perl5.00307 .. 5.17 porting perl5 on HP-UX, AIX, and openSUSE
http://mirrors.develooper.com/hpux/ http://www.test-smoke.org/
http://qa.perl.org http://www.goldmark.org/jeff/stupid-disclaimers/

H.Merijn Brand

unread,
Apr 27, 2013, 8:05:02 AM4/27/13
to cpan.z...@googlemail.com, dave...@cpan.org, DBI Developers Mailing List
As part of the DBI developer team, I want to ask if you can give up on
DBI::Test, like in renaming that module to be a real subclass of your
own work in Class::DBI::FormBuilder (DBI::FormBuilder::Test sounds
great), as we want to release a standalone DBI::Test that is directly
related to DBI.

Lyle

unread,
Apr 27, 2013, 8:59:19 AM4/27/13
to dbi...@perl.org
On 27/04/2013 12:10, H.Merijn Brand wrote:
> What the end-user sees: http://tux.nl/Talks/images/dbi-dbd.png
> How that is currently tested: http://tux.nl/Talks/images/testing.png
> What the new plan would be: http://tux.nl/Talks/images/dbi-api.png

Links aren't working for me, I'm getting 404s...

> The team that is currently working on this plan, as started on the QA
> hackathon in Lancaster, is
>
> Name IRC (irc.perl.org/6667 #dbi)
> ---------------- ----------------------------
> Jens Rehsack Sno
> Peter Rabbitson ribasushi
> H. Merijn Brand Tux
> Joakim Tørmoen trmjoa
>
> with a possible new member soon: Vince Willems
>
> You can watch the effort in https://github.com/perl5-dbi/DBI-Test
> The notes made in Lancaser are in
> https://github.com/perl5-dbi/DBI-Test/blob/master/sandbox/qa2013-notes.txt
>
> ...

All sounds like a good effort :)


Lyle

H.Merijn Brand

unread,
Apr 27, 2013, 9:33:08 AM4/27/13
to dbi...@perl.org
On Sat, 27 Apr 2013 13:59:19 +0100, Lyle <webm...@cosmicperl.com>
wrote:

> On 27/04/2013 12:10, H.Merijn Brand wrote:
> > What the end-user sees: http://tux.nl/Talks/images/dbi-dbd.png
> > How that is currently tested: http://tux.nl/Talks/images/testing.png
> > What the new plan would be: http://tux.nl/Talks/images/dbi-api.png
>
> Links aren't working for me, I'm getting 404s...

My bad, mea culpa

What the end-user sees: http://tux.nl/Talks/DBI-Test/images/dbi-dbd.png
How that is currently tested: http://tux.nl/Talks/DBI-Test/images/testing.png
What the new plan would be: http://tux.nl/Talks/DBI-Test/images/dbi-api.png

David Baird

unread,
May 2, 2013, 7:07:55 AM5/2/13
to H.Merijn Brand, DBI Developers Mailing List

Yes, sorry for stomping on the namespace! I'll clean that up over the weekend.
d.
--
Dr. David R. Baird
ZeroFive Software Engineering
da...@zerofive.co.uk
http://www.zerofive.co.uk
Mob: (+34) 653331545 (Spain)
Facebook: http://www.facebook.com/dave.zerofive

Jens Rehsack

unread,
May 13, 2013, 10:18:39 AM5/13/13
to David Baird, H.Merijn Brand, DBI Developers Mailing List
Hi David,

On 02.05.13 13:07, David Baird wrote:
> Yes, sorry for stomping on the namespace! I'll clean that up over the
> weekend.
> d.

Two weekends later the namespace is still in use. Do you need help?

> On 27 April 2013 14:05, H.Merijn Brand <h.m....@xs4all.nl
> <mailto:h.m....@xs4all.nl>> wrote:
>
> As part of the DBI developer team, I want to ask if you can give up on
> DBI::Test, like in renaming that module to be a real subclass of your
> own work in Class::DBI::FormBuilder (DBI::FormBuilder::Test sounds
> great), as we want to release a standalone DBI::Test that is directly
> related to DBI.

Best regards
--
Jens Rehsack

Jens Rehsack

unread,
Jun 21, 2013, 4:07:29 AM6/21/13
to mod...@perl.org, H.Merijn Brand, DBI Developers Mailing List, David Baird
Hi modules@,

we are short before first public release of the DBI::Test module,
which is targeted to improve quality of DBI, SQL::Statement and
as many DBD's as use it :)

We already have some DBD authors intested in it - Martin Evans
for DBD::ODBC, H.Merijn Brand for DBD::CSV and DBD::Unify,
DBD::Oracle would be a candidate and maybe to IBM OSS guys will
use it (because it would improve much on DBD::DB2 ^^).

IIRC, the DBD::Pg and DBD::SQLite maintainers wants it, too.

But ... it seems David Baird is much to busy to free the namespace
as promised. Can you please handover the permissions to upload the
DBI::Test to either REHSACK or HMBRAND or both?

Whom shall we contact when we want to add more Co-Maintainers?
Thanks in advance,
--
Jens Rehsack

David Baird

unread,
Jun 22, 2013, 1:05:11 PM6/22/13
to Jens Rehsack, mod...@perl.org, H.Merijn Brand, DBI Developers Mailing List

As it happens, I've been extremely busy, setting up a new business. But I appreciate my delay has been frustrating for you. I've just uploaded the new version of CDBI::FB which should free up the DBI::Test namespace.

Regards,
Dave.
0 new messages