Re: [pgadmin-hackers] Acceptance Tests against a browser (WIP) - Mailing list pgadmin-hackers

From Dave Page
Subject Re: [pgadmin-hackers] Acceptance Tests against a browser (WIP)
Date
Msg-id CA+OCxoz1vqr4UUGNhdYxdcWO12puc8DftM5Fo+OC0o+fgMNQCg@mail.gmail.com
Whole thread Raw
In response to Re: [pgadmin-hackers] Acceptance Tests against a browser (WIP)  (George Gelashvili <ggelashvili@pivotal.io>)
List pgadmin-hackers
Hi

On Thu, Jan 12, 2017 at 10:41 PM, George Gelashvili
<ggelashvili@pivotal.io> wrote:
> here's the patch we forgot to attach. Also, you can see work on our branch
> at:
> https://github.com/pivotalsoftware/pgadmin4/tree/pivotal/acceptance-tests
>
> On Thu, Jan 12, 2017 at 5:26 PM, George Gelashvili <ggelashvili@pivotal.io>
> wrote:
>>
>> Hi there,
>>
>> We are working on browser-automation-based acceptance tests that exercise
>> pgAdmin4 the way a user might.

Nice!

>> The first "connect to database" test works, but at the moment depends on
>> Chrome and chromedriver. We would appreciate feedback on any possible
>> license or code style issues at this point, as well as any thoughts on
>> adding this sort of test to the codebase.

A few thoughts:

- If these tests are to run as part of the regression suite, the
framework for them should live under that directory.

- Are any of the tests likely to be module-specific? If so, they
should really be part of the relevant module as the regression tests
are. If they're more general/less tightly coupled, then I don't see a
problem with them residing where they are.

- Please take care not to include changes to .gitgnore files that
aren't relevant to the rest of us.

- The port number is hard-coded in the test.

- You've hard-coded the string "pgAdmin 4". We've tried to keep that
title as a config option in config.py, so you should pull the string
from there rather than hard-coding it.

- The connect test fails for me (Mac, Python 2.7). I have a suspicion
that this may be because when the test starts chromedriver, OS X
prompts the user about whether a listening port should be opened, but
the tests don't wait (though, I tested with 3 servers configured and
it failed with the same error on the second and third as well, long
after I clicked OK on the prompt):

Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/acceptance/test_connects_to_database.py",
line 32, in runTest
    self.assertEqual("pgAdmin 4", self.driver.title)
AssertionError: 'pgAdmin 4' != u'localhost'

- Please keep tests in the pgadmin. namespace (pgadmin.acceptance.??).

- It looks like running a single test won't work yet (because of
TestsGeneratorRegistry.load_generators('pgadmin.%s.tests' %
arguments['pkg']))

Thanks!

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


pgadmin-hackers by date:

Previous
From: Usama Tariq
Date:
Subject: [pgadmin-hackers] Need Help Regarding phppgadmin4 on Ubuntu server 16.04
Next
From: Dave Page
Date:
Subject: [pgadmin-hackers] pgAdmin 4 commit: Add runtime/pgAdmin4 to .gitignore,and re-order entr