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

Build reference test site #4571

Closed
schlessera opened this issue Apr 11, 2020 · 12 comments
Closed

Build reference test site #4571

schlessera opened this issue Apr 11, 2020 · 12 comments
Assignees
Labels
Groomed Infrastructure Changes impacting testing infrastructure or build tooling WS:Perf Work stream for Metrics, Performance and Optimizer

Comments

@schlessera
Copy link
Collaborator

schlessera commented Apr 11, 2020

We should work on a reference test site that includes typical website content and try to use or touch most or all of the functionality of the AMP plugin as a real-world website would.

This will either simplify or be a requirement for the following features:

  • Add performance metrics to CI [#4569]
  • Add unified sanitizer smoke test [4549]
  • Add automated visual regression testing [4671]
@schlessera schlessera added Infrastructure Changes impacting testing infrastructure or build tooling Epic labels Apr 11, 2020
@amanintech
Copy link
Member

amanintech commented Apr 11, 2020

I will be happy to do that. Can this issue be assigned to me?

@schlessera
Copy link
Collaborator Author

schlessera commented Apr 12, 2020

Hey @amanintech, thanks for the interest in working on this.

We're currently not sure whether this can be done by an outside contributor, as it might require quite a lot of infrastructural knowledge to pull off. But I guess it depends on how we approach it.

Can you give me a few details about how you intend to work on this and what you'd want to build exactly?

@amanintech
Copy link
Member

I would do something like exactly as you mentioned with a Wordpress website having the latest AMP plugin. I can add a CI that updates the plugin automatically and send the lighthouse performance report. We can host real content by pulling it from a news website in form of feed. I have worked on a repo where I also developed a theme having a feed like a feature. https://kievents.co/sid/

@westonruter
Copy link
Member

To make this maintainable in the project and usable inside CI builds I think the test site should be in a Docker container.

@schlessera
Copy link
Collaborator Author

Yes, or maybe even a docker composer setup (instead of a single container), as we'll want to test persistent object caching as well with different servers like Memcached or Redis.

It should be the "source" version of building such a site, not the end result, so that we can replicate it wherever we need it.

Is this something you can tackle, @amanintech ?

@amanintech
Copy link
Member

amanintech commented Apr 13, 2020

Yes, I surely can try. Where this container should be finally deployed? And will the site have any public visibility ?

@westonruter
Copy link
Member

I think the point of the container is that it won't be deployed publicly. It would be spun up during and inside CI builds and then destroyed.

@amedina
Copy link
Member

amedina commented Apr 13, 2020

This is definitely something we need to do to evaluate baseline performance metrics for sites running the plugin on a set of specific conditions in relation to as set of essential metrics.

Priorities are:

  1. Define content of reference test site so that the AMP content generation capabilities of the plugin are fully exercised.
  2. Define tests to measure the performance gains between using or not using the AMP optimizer.
  3. Define tests to measure set of essential metrics
  4. Enable the execution of standalone Optimizer tests
  5. Integrate measurement of essential metrics into CI build pipeline

After these are achieved:

  1. Document structure of reference test site so that any publisher can set up a similar one and add it to their CI pipeline

@amedina amedina changed the title Build reference test site Define CI integration for lab testing of essential metrics on AMP Sites powered by the AMP plugin Apr 13, 2020
@amanintech
Copy link
Member

I think the point of the container is that it won't be deployed publicly. It would be spun up during and inside CI builds and then destroyed.

Honestly, I have never done that before. But I am ready to learn and give it a shot if that's ok. Could you share any tutorial to help me get started?

@schlessera
Copy link
Collaborator Author

@amanintech I think what @amedina meant to say is that we - as in: the internal AMP plugin team - have to do a lot of work upfront until this is ready for a first implementation. I'm afraid this is not a good issue for now if you are interested in contributing.

@amedina amedina removed the Epic label Apr 15, 2020
@amanintech
Copy link
Member

Got it

@schlessera
Copy link
Collaborator Author

@amedina I'm renaming this issue back to what it is, as this was specifically for defining the reference site, independent of what it will be used for. The title you've changed it into would fall under #4569.

@schlessera schlessera changed the title Define CI integration for lab testing of essential metrics on AMP Sites powered by the AMP plugin Build reference test site May 8, 2020
@schlessera schlessera self-assigned this Jun 22, 2020
@kmyram kmyram added the Groomed label Jul 7, 2020
@kmyram kmyram added the WS:Perf Work stream for Metrics, Performance and Optimizer label Aug 5, 2020
@westonruter westonruter closed this as not planned Won't fix, can't repro, duplicate, stale Jul 28, 2022
@github-project-automation github-project-automation bot moved this to In Progress in Ongoing Aug 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Groomed Infrastructure Changes impacting testing infrastructure or build tooling WS:Perf Work stream for Metrics, Performance and Optimizer
Projects
Archived in project
Development

No branches or pull requests

5 participants