Обсуждение: [pgAdmin4][RM2586] Cleanup feature test
Hi,
Please find attached patch to improve feature test execution time.
Now on my machine overall execution time is cut down to 280 seconds from 400+ seconds
Changes:
1. Removed fixed python time.sleeps where ever possible.
2. Removed connect to server test cases.
3. Query tool test cases:
i. Merged 3 test cases On demand result on scroll, grid select all and column select all.
ii. Merged 3 test cases Explain query, Explain query with verbose and Explain query with cost.
iii. Merged 3 test cases Explain analyze query, Explain analyze with buffers and Explain analyze with timing.
4. Improved debugger XSS test case execution time.
--
Harshal Dhumal
Sr. Software Engineer
Вложения
Hi Harshal!
There are a few files in which there are leftover imports that are not needed anymore:
- PGDataypeFeatureTest
- PgadminPage
- CheckForXssFeatureTest
- CheckDebuggerForXssFeatureTest
We also noticed that there were quite a few time.sleep functions that were removed. This seems great overall, but we think that some of them were in place because of varying network and computer speeds. So for example, in QueryToolFeatureTest, there is an ajax call that was followed by a time.sleep to ensure that it had finished executing before continuing to execute. Removing this may reintroduce some flakiness. If there are no issues with flakiness after this patch, it seems like a great idea. We ran the tests a few times and didn't notice any flakiness, but we're unsure if it will be a problem on a different system.
Thanks!
Wenlin & Sarah
Wenlin & Sarah
On Wed, Aug 2, 2017 at 9:32 PM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote:
Hi,Please find attached patch to improve feature test execution time.Now on my machine overall execution time is cut down to 280 seconds from 400+ secondsChanges:1. Removed fixed python time.sleeps where ever possible.2. Removed connect to server test cases.3. Query tool test cases:i. Merged 3 test cases On demand result on scroll, grid select all and column select all.ii. Merged 3 test cases Explain query, Explain query with verbose and Explain query with cost.iii. Merged 3 test cases Explain analyze query, Explain analyze with buffers and Explain analyze with timing.4. Improved debugger XSS test case execution time.--Harshal DhumalSr. Software Engineer
Hi,
Please find attached updated patch. In this patch I have removed unused imports.
Regarding ajax calls on slow network/computer I have already taken care of those.
Before sending first version of patch I tested this on Murtuza's machine and also
tested on slow machine as well.
Thanks,
Harshal
--
Harshal Dhumal
Sr. Software Engineer
On Mon, Aug 7, 2017 at 8:55 AM, Sarah McAlear <smcalear@pivotal.io> wrote:
Hi Harshal!There are a few files in which there are leftover imports that are not needed anymore:
- PGDataypeFeatureTest
- PgadminPage
- CheckForXssFeatureTest
- CheckDebuggerForXssFeatureTest
We also noticed that there were quite a few time.sleep functions that were removed. This seems great overall, but we think that some of them were in place because of varying network and computer speeds. So for example, in QueryToolFeatureTest, there is an ajax call that was followed by a time.sleep to ensure that it had finished executing before continuing to execute. Removing this may reintroduce some flakiness. If there are no issues with flakiness after this patch, it seems like a great idea. We ran the tests a few times and didn't notice any flakiness, but we're unsure if it will be a problem on a different system.Thanks!
Wenlin & SarahOn Wed, Aug 2, 2017 at 9:32 PM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote: Hi,Please find attached patch to improve feature test execution time.Now on my machine overall execution time is cut down to 280 seconds from 400+ secondsChanges:1. Removed fixed python time.sleeps where ever possible.2. Removed connect to server test cases.3. Query tool test cases:i. Merged 3 test cases On demand result on scroll, grid select all and column select all.ii. Merged 3 test cases Explain query, Explain query with verbose and Explain query with cost.iii. Merged 3 test cases Explain analyze query, Explain analyze with buffers and Explain analyze with timing.4. Improved debugger XSS test case execution time.--Harshal DhumalSr. Software Engineer
Вложения
Great job on cleaning up the whole feature test suite! This is really going to benefit all of the developers a lot.
Thanks,
Matt & Sarah
Matt & Sarah
On Fri, Aug 11, 2017 at 12:24 PM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote:
Hi,Please find attached updated patch. In this patch I have removed unused imports.Regarding ajax calls on slow network/computer I have already taken care of those.Before sending first version of patch I tested this on Murtuza's machine and alsotested on slow machine as well.Thanks,Harshal--Harshal DhumalSr. Software EngineerOn Mon, Aug 7, 2017 at 8:55 AM, Sarah McAlear <smcalear@pivotal.io> wrote:Hi Harshal!There are a few files in which there are leftover imports that are not needed anymore:
- PGDataypeFeatureTest
- PgadminPage
- CheckForXssFeatureTest
- CheckDebuggerForXssFeatureTest
We also noticed that there were quite a few time.sleep functions that were removed. This seems great overall, but we think that some of them were in place because of varying network and computer speeds. So for example, in QueryToolFeatureTest, there is an ajax call that was followed by a time.sleep to ensure that it had finished executing before continuing to execute. Removing this may reintroduce some flakiness. If there are no issues with flakiness after this patch, it seems like a great idea. We ran the tests a few times and didn't notice any flakiness, but we're unsure if it will be a problem on a different system.Thanks!
Wenlin & SarahOn Wed, Aug 2, 2017 at 9:32 PM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote: Hi,Please find attached patch to improve feature test execution time.Now on my machine overall execution time is cut down to 280 seconds from 400+ secondsChanges:1. Removed fixed python time.sleeps where ever possible.2. Removed connect to server test cases.3. Query tool test cases:i. Merged 3 test cases On demand result on scroll, grid select all and column select all.ii. Merged 3 test cases Explain query, Explain query with verbose and Explain query with cost.iii. Merged 3 test cases Explain analyze query, Explain analyze with buffers and Explain analyze with timing.4. Improved debugger XSS test case execution time.--Harshal DhumalSr. Software Engineer
Hi,
Last week Sarah, Matt and I had call regarding some issues with feature test cases.
For example in auto commit disable test scenario from query tool test cases by removing code line
self.page.find_by_id("btn-auto-commit").click() the test case scenario was not falling.
This issue was due to previously on going database transaction. This issue was also with test scenarios like
auto commit enable and auto rollback enabled. The attached patch fixes this issue.
@Sarah and Matt can you please give this patch a try to check if issues we discussed last week are fixed.
Thanks,
Harshal
--
Harshal Dhumal
Sr. Software Engineer
On Fri, Aug 11, 2017 at 11:55 AM, Sarah McAlear <smcalear@pivotal.io> wrote:
Great job on cleaning up the whole feature test suite! This is really going to benefit all of the developers a lot.Thanks,
Matt & SarahOn Fri, Aug 11, 2017 at 12:24 PM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote: Hi,Please find attached updated patch. In this patch I have removed unused imports.Regarding ajax calls on slow network/computer I have already taken care of those.Before sending first version of patch I tested this on Murtuza's machine and alsotested on slow machine as well.Thanks,Harshal--Harshal DhumalSr. Software EngineerOn Mon, Aug 7, 2017 at 8:55 AM, Sarah McAlear <smcalear@pivotal.io> wrote:Hi Harshal!There are a few files in which there are leftover imports that are not needed anymore:
- PGDataypeFeatureTest
- PgadminPage
- CheckForXssFeatureTest
- CheckDebuggerForXssFeatureTest
We also noticed that there were quite a few time.sleep functions that were removed. This seems great overall, but we think that some of them were in place because of varying network and computer speeds. So for example, in QueryToolFeatureTest, there is an ajax call that was followed by a time.sleep to ensure that it had finished executing before continuing to execute. Removing this may reintroduce some flakiness. If there are no issues with flakiness after this patch, it seems like a great idea. We ran the tests a few times and didn't notice any flakiness, but we're unsure if it will be a problem on a different system.Thanks!
Wenlin & SarahOn Wed, Aug 2, 2017 at 9:32 PM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote: Hi,Please find attached patch to improve feature test execution time.Now on my machine overall execution time is cut down to 280 seconds from 400+ secondsChanges:1. Removed fixed python time.sleeps where ever possible.2. Removed connect to server test cases.3. Query tool test cases:i. Merged 3 test cases On demand result on scroll, grid select all and column select all.ii. Merged 3 test cases Explain query, Explain query with verbose and Explain query with cost.iii. Merged 3 test cases Explain analyze query, Explain analyze with buffers and Explain analyze with timing.4. Improved debugger XSS test case execution time.--Harshal DhumalSr. Software Engineer
Вложения
Hi
--
On Thu, Aug 24, 2017 at 11:51 AM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote:
Hi,Last week Sarah, Matt and I had call regarding some issues with feature test cases.For example in auto commit disable test scenario from query tool test cases by removing code lineself.page.find_by_id("btn-auto-commit").click() the test case scenario was not falling. This issue was due to previously on going database transaction. This issue was also with test scenarios likeauto commit enable and auto rollback enabled. The attached patch fixes this issue.@Sarah and Matt can you please give this patch a try to check if issues we discussed last week are fixed.
I don't think Matt and Sarah are working on pgAdmin any more :-(
I just tried this patch, and whilst the tests all passed, it spent quite some time typing "select * from hats" into random places in the query tool, such that it ended up running queries like
select * select * select * from hats from hats from hats
I don't remember it doing that before; I think it was a) clearing codemirror each time and b) entering the text much more quickly (in fact I just tried it, and it enters the text and executes the query so fast the screen basically strobes).
Performance-wise, I got 266 seconds with the patch, and 378 without, so there's definitely some good improvement here, just a little funkyness with the query tool journey test.
Thanks.
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
Hi,
Please find attached updated patch
On Fri, Aug 25, 2017 at 2:32 PM, Dave Page <dpage@pgadmin.org> wrote:
HiOn Thu, Aug 24, 2017 at 11:51 AM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote: Hi,Last week Sarah, Matt and I had call regarding some issues with feature test cases.For example in auto commit disable test scenario from query tool test cases by removing code lineself.page.find_by_id("btn-auto-commit").click() the test case scenario was not falling. This issue was due to previously on going database transaction. This issue was also with test scenarios likeauto commit enable and auto rollback enabled. The attached patch fixes this issue.@Sarah and Matt can you please give this patch a try to check if issues we discussed last week are fixed.I don't think Matt and Sarah are working on pgAdmin any more :-(I just tried this patch, and whilst the tests all passed, it spent quite some time typing "select * from hats" into random places in the query tool, such that it ended up running queries likeselect * select * select * from hats from hats from hatsI don't remember it doing that before; I think it was a) clearing codemirror each time and b) entering the text much more quickly (in fact I just tried it, and it enters the text and executes the query so fast the screen basically strobes).
Fixed.
Performance-wise, I got 266 seconds with the patch, and 378 without, so there's definitely some good improvement here, just a little funkyness with the query tool journey test.
Thanks.--Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
Вложения
Thanks, patch applied (test time now down to 209s :-) ).
On Mon, Aug 28, 2017 at 11:04 AM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote:
Hi,Please find attached updated patchOn Fri, Aug 25, 2017 at 2:32 PM, Dave Page <dpage@pgadmin.org> wrote:HiOn Thu, Aug 24, 2017 at 11:51 AM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote: Hi,Last week Sarah, Matt and I had call regarding some issues with feature test cases.For example in auto commit disable test scenario from query tool test cases by removing code lineself.page.find_by_id("btn-auto-commit").click() the test case scenario was not falling. This issue was due to previously on going database transaction. This issue was also with test scenarios likeauto commit enable and auto rollback enabled. The attached patch fixes this issue.@Sarah and Matt can you please give this patch a try to check if issues we discussed last week are fixed.I don't think Matt and Sarah are working on pgAdmin any more :-(I just tried this patch, and whilst the tests all passed, it spent quite some time typing "select * from hats" into random places in the query tool, such that it ended up running queries likeselect * select * select * from hats from hats from hatsI don't remember it doing that before; I think it was a) clearing codemirror each time and b) entering the text much more quickly (in fact I just tried it, and it enters the text and executes the query so fast the screen basically strobes).Fixed.Performance-wise, I got 266 seconds with the patch, and 378 without, so there's definitely some good improvement here, just a little funkyness with the query tool journey test.Thanks.--Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company