Migrate Harbor UI E2E tests from Robot + Selenium to Playwright#268
Migrate Harbor UI E2E tests from Robot + Selenium to Playwright#268bupd wants to merge 9 commits into
Conversation
7534034 to
10ae484
Compare
|
Hi @bupd , We may need more thoroughly mindful investigation on the harbor whole robot-case code base, especially on the UI part.
|
I don't get this. Why do we need a cross environment - what cross environment mean here ?? Please explain.
This makes no sense. The goal is clearly mentioned here https://github.com/goharbor/community/pull/268/files#diff-e9c149ab1ab59f390feca2254d8ccd8c76643c1016b5e6651c7dcd712341ada2R26 We are not removing Robot from areas where it might be the right tool. I am sure that for UI tests robot is a inadequate tool. We are eliminating XPath-dependent UI flakiness by shifting only those tests to Playwright. |
|
Hi @bupd , Generally, One of our key acceptance standards is do not decrease the current quality which would reflects in these criteria that you need to take it consideration:
Could you please help to demonstrate in your proposal how to achieve above goals or solutions for the potential issues? Best, |
|
I believe there're still disagreements about this proposal. Miner has expressed a lot of concerns in last week's community meeting. We should make sure the comments are resolved before this proposal can be merged. |
There was a problem hiding this comment.
Hi @bupd
Please help to update the proposal per this comment and the discussion we had last month.
#268 (comment)
Best,
Miner
@reasonerjt I would like to clarify that the concerns have been addressed in the previous community meeting. I was in OSS summit for past week. currently getting back on this. Only thing pending on this is to update the proposal with screenshots of reports and add more info on the running this containerised, environments. as we discussed earlier I am currently recovering will update the proposal shortly. Thanks for understanding |
|
@MinerYang @stonezdj @reasonerjt All concerns have been addressed. |
| - It supports fixtures and helper modules. https://playwright.dev/docs/test-fixtures | ||
| - Skipping, tagging, grouping, and environment-driven execution are built-in https://playwright.dev/docs/test-annotations | ||
| - Playwright can run CLI operations via Node's `child_process` reliably (docker, helm, oras, cosign, notation). | ||
| - Reports, videos, traces, retries, and serial execution already meet & exceed current quality standards. |
There was a problem hiding this comment.
I would like better to have a full-chain build and running process demo for several specific cases, and presents the demo in the proposal as a Poc.
These cases demo should have presents these criteria I have mentioned before.
There was a problem hiding this comment.
- feat: Migrate Trivy.robot(Security Hub Testcase) to playwright harbor#22591 pr covering bigger testcase with securityhub interacting with harbor UI, trivy etc. this PR also showcases full build and test workflow.
There was a problem hiding this comment.
I'm currently migrating all the test cases in the Common.robot file. You can check the progress in this PR goharbor/harbor#22630
The mentioned Test Case - Cosign And Cosign Deployment Security Policy perform signing the image in the repository using cosign. But the signatures by cosign (version 3.0+) aren't properly recognized by Harbor. This issue is explained in detail and has been resolved at the same in this PR goharbor/harbor#22628. Now this fix is planned to be released in the upcoming version 2.15 of Harbor.
I have migrated this test case to Playwright, but need to test and verify it against the newer version, before committing them. So the changes are in my local branch and haven't pushed yet.
Thus the successful migration of this particular test case will be in halt, until the newer version is released.
Thank you.
88041b7 to
f3d3a2f
Compare
Signed-off-by: bupd <bupdprasanth@gmail.com>
Expand on the benefits and features of using Playwright for UI testing, including portability, containerization, and improved debugging capabilities. Outline goals and non-goals for the migration process from Robot tests to Playwright. Signed-off-by: Prasanth Baskar <bupdprasanth@gmail.com>
Signed-off-by: bupd <bupdprasanth@gmail.com>
Add Technical Considerations section covering: - Process orchestration and parallelism handling - Credential safety in CI environments - SSH operations support - Reporting comparison with Robot Framework Clarify proposal scope to UI E2E tests only, with infrastructure tests remaining in Robot Framework. Remove bold formatting per style guide. Signed-off-by: bupd <bupdprasanth@gmail.com>
Update Dockerfile to Ubuntu 20.04-based image matching Robot Framework structure. Add comprehensive Q&A section answering: - How running commands look like (Docker and direct execution) - Keyword-driven execution support with real examples Include references to PRs #22462 and #22591 showing actual implementation. Signed-off-by: bupd <bupdprasanth@gmail.com>
…hots Add three screenshots demonstrating Playwright reporting capabilities: - HTML test report showing all tests passing - Video recording feature in test reports - Interactive debug mode with Playwright Inspector Signed-off-by: bupd <bupdprasanth@gmail.com>
f3d3a2f to
0374737
Compare
|
@MinerYang @stonezdj @reasonerjt also added relevant screenshots of test reports, debugging, networking capabilities. please take a look. Thanks |
|
@bupd Per the discussion, please provide a POC recording to approve the Playwright satisfy the harbor E2E. |
Tracking Issue: goharbor/harbor#22134