PrestaShop / PrestaShop

PrestaShop is the universal open-source software platform to build your e-commerce solution.
https://www.prestashop-project.org/
Other
8.2k stars 4.81k forks source link

Run automated tests with bigger, real life data #25792

Open Hlavtox opened 3 years ago

Hlavtox commented 3 years ago

Is your feature request related to a problem?

While it's beautiful that something is fast and works with 20 demo data products and otherwise empty store, it gets much worse, even with a super fast server.

For example, I have a customer relatively fresh shop, 1000 products, 500 carts, 500 orders, 400 customers and it takes 1 minute to load customer view in BO. Or, I have let's say 15 cart rules active and as soon as you add something to cart, it slows down the page load from 300 ms to 2 seconds.

It would be good if we could catch these pain points and optimize them right away. Otherwise, Prestashop has no problem of handling tens of thousands products.

Describe the solution you'd like

I think we should make an intersection of different merchants usage scenarios and run the store with it, for example:

Ping @matks - extend with your thoughts pls 👍

matks commented 3 years ago

Thank you for the issue

If I try to imagine the work needed to make this happen, I would say:

  1. Build a system to load PS with relevant fixtures in high numbers, maybe using https://github.com/PrestaShop/prestashop-shop-creator or a library like https://github.com/fzaninotto/Faker

  2. Modify/improve current playwright tests ("UI tests") to be able to use/navigate inside a PrestaShop loaded with above data

ping @boubkerbribri @nesrineabdmouleh I guess this was in your plan for one day, is it a far future or something you think will arrive soon ? 😊

hibatallahAouadni commented 3 years ago

Hello @Hlavtox

Thank you for your suggestion. The Developers Team will take it into consideration for future developments. Please be aware that there is no guarantee that this feature will be developed anytime soon. If this is important to you, we strongly suggest you consider hiring a specialist to help you create it.

If you are willing to implement this feature into PrestaShop as a Pull Request, the teams will be happy to help you by ensuring that it is appropriate and coherent with the rest of the project. If that is the case, please let us know!

Thank you

boubkerbribri commented 3 years ago

Hi @Hlavtox and @matks,

The aim for the biggest tests campaign (Functional) is to validate that every little functionality is working inside PrestaShop. Running this kind of test on a much bigger shop will have no real value.

But what should be great is having another campaign that tests 'how PrestaShop will work on a Production environment', we can call it : End to End. It will be another approach of tests :

For now, we are still improving/adding tests to the functional and regression campaign. But we know that an E2E campaign is needed and will have a real impact/value for PrestaShop users.

PS: We are pleased by these questions so we can explain what's happening inside the QA team and what's coming next.

boubkerbribri commented 3 years ago

We could also use some Load tests to validate that PrestaShop doesn't lose its performance while having a lot of products, categories ... We will work on it with the developer's team.

Any idea, suggestion or contribution is welcome.

matks commented 3 years ago

@boubkerbribri is it useful to keep this issue open ?

boubkerbribri commented 3 years ago

I'm not sure. We can keep it open and keep track of this discussion. The only thing I know, it could take time before start working on this.

elyesnaouar commented 12 months ago

Hello @Hlavtox @matks

Please find, in attached, Performance tests report for PRESTASHOP solution. Performance_Tests_Report_PRESTASHOP.pdf

Kind regards, Elyes