Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Report Generation: Improve performance of report generation time #6

Closed
adiralashiva8 opened this issue Aug 6, 2018 · 5 comments
Closed
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@adiralashiva8
Copy link
Owner

Expected: Improve performance of report generation using Thread or Multiprocess

@adiralashiva8 adiralashiva8 added the enhancement New feature or request label Aug 6, 2018
@adiralashiva8 adiralashiva8 added the help wanted Extra attention is needed label Oct 27, 2018
@jessezach
Copy link
Collaborator

@adiralashiva8 Still need help here?

@adiralashiva8
Copy link
Owner Author

adiralashiva8 commented Dec 24, 2018

@jz-jess Yes. I'm facing performance issue while processing big size output.xml files

When output.xml is more than 500mb robotframework-metrics is taking more time (then usual data).

My XML Data:

  • Suites: > 100
  • Tests: > 800
  • Keywords: > 2 Lakhs
  • Time took to process xml: 80sec
  • Time took to load html page: 120sec

What I'm doing in report:
I have three class. Which are responsible to capture metrics as follows

  • Class 1 - Suite Metrics
  • Class 2 - Test Metrics
  • Class 3 - Keyword Metrics (more time at here)

I loop for every element in class and add them to data-table. These classes are executed in sequence

What I plan to improve performance:
I want to run three class in parallel using multipleprocessing from Process

@jessezach
Copy link
Collaborator

@adiralashiva8 Understood. Seems fairly easy to do from your description.
Are these 3 calls dependent on each other in any way? I see a lot of code other than the class implementation in between result.visit(SuiteResults()), result.visit(TestCaseResults()) and result.visit(KeywordResults()) calls

@adiralashiva8
Copy link
Owner Author

Yes, Other code stuff is to generate html using beautiful soup.
Those three class are independent. Let's have all three class's definition at top and call's need to be in parallel (need to check compatiable)

@adiralashiva8 adiralashiva8 moved this from TODO to In Progress in Robotframework Metrics Dec 24, 2018
@adiralashiva8
Copy link
Owner Author

Implement as part of #52 using gevent. Will re-open this issue if user concern about performance

Robotframework Metrics automation moved this from In Progress to DONE Dec 28, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
Development

No branches or pull requests

2 participants