Re: Thoughts on "Love Your Database"

From: Chris Travers <chris(dot)travers(at)gmail(dot)com>
To: Guyren Howe <guyren(at)gmail(dot)com>
Cc: Pierre Chevalier Géologue <pierrechevaliergeol(at)free(dot)fr>, Szymon Lipiński <mabewlun(at)gmail(dot)com>, Will McCormick <wmccormick(at)gmail(dot)com>, Uwe Schroeder <uwe(at)oss4u(dot)com>, PostgreSQL <pgsql-general(at)postgresql(dot)org>
Subject: Re: Thoughts on "Love Your Database"
Date: 2016-05-21 09:28:13
Message-ID: CAKt_ZftOg5fYVBASnwnjPG76C45JTb9QVJ=paHSDMoJMJo0tSA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Fri, May 20, 2016 at 10:43 PM, Guyren Howe <guyren(at)gmail(dot)com> wrote:

> On May 20, 2016, at 13:38 , Pierre Chevalier Géologue <
> pierrechevaliergeol(at)free(dot)fr> wrote:
> >
> > Le 04/05/2016 18:29, Szymon Lipiński a écrit :
> >> On the other hand, when I was trying to store all my logic in a
> >> database, there was just one thing that made me hate it. Testing.
> >> Testing the procedures inside the database was not easy, not funny, and
> >> too much time consuming.
> >
> > Yes, very good point.
>
> Are there any best practices or tricks to make this easier?
>

Strangely I have never had a problem testing stored procedures. You have
to create a data set for the tests of course and that is the hardest part,
but there are some really nice things:

1. If your test scripts always roll back you can run them on a production
database as a troubleshooting step
2. It is easy to hook things up to a TAP harness (whether using PgTAP or
some hand-rolled solution). I think it would be harder to connect to xunit
though. So use TAP ;-)
3. I usually create a test results table (in my test case, rolled back
after!) which stores the test description and pass status. That makes it
easy to check using other tools.

Usually I set aside a range of things (negative id's for example) for
testing purposes.

>
> --
> Sent via pgsql-general mailing list (pgsql-general(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
>

--
Best Wishes,
Chris Travers

Efficito: Hosted Accounting and ERP. Robust and Flexible. No vendor
lock-in.
http://www.efficito.com/learn_more

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message dandl 2016-05-21 10:41:37 How to know if SPI or some other API triggered an ERROR.
Previous Message Szymon Lipiński 2016-05-21 09:07:48 Re: Thoughts on "Love Your Database"