You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@sentry.apache.org by "Sravya Tirukkovalur (JIRA)" <ji...@apache.org> on 2016/10/05 21:51:20 UTC

[jira] [Created] (SENTRY-1490) Make tests more robust with respect to isolation

Sravya Tirukkovalur created SENTRY-1490:
-------------------------------------------

             Summary: Make tests more robust with respect to isolation
                 Key: SENTRY-1490
                 URL: https://issues.apache.org/jira/browse/SENTRY-1490
             Project: Sentry
          Issue Type: Test
            Reporter: Sravya Tirukkovalur
            Assignee: Sravya Tirukkovalur
            Priority: Minor


Traditionally in our e2e tests, each test class setups the backend database. And each test creates its own database and performs some operations and then we clean up the databases created as part of the test either within the test or in @After. 

There are some problems with this approach: 
- Not possible to run tests parallely, as more than one test can be using same environment(db).
- If tests do not clean up well, it leads to cascading test failures due to incorrect assumptions.

In the test TestDBNotificationListenerInBuiltDeserializer, I tried solving this problem by creating a random name for db in each test case where dbname= db+randomNumber. But the randomness does not seem to be sufficient as we are not making sure the random numbers are non repeating. I am thinking of either of the below solutions here:
1. Generate non repeating random names.
2. Use an atomic class integer rather than a random number.

Can you think of any other simpler solutions?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)