karmada icon indicating copy to clipboard operation
karmada copied to clipboard

[LFX-Mentorship-Term3-2024-Tracking-Issue] Enhance the test coverage for the Karmada search, operator, and webhook components

Open mohamedawnallah opened this issue 1 year ago • 6 comments

Upstream Issue

#5236

Legend

  • ⬜: No PR issued yet
  • ⏳: In Review
  • ✅: Merged

Milestone 1 - Karmada Webhooks Test Coverage

Status Period Directory Old Coverage New Coverage PR Code Quality Docs Quality Bug Discovery
Sep 7-13 pkg/webhook/propagationpolicy
0%
N/A
#5492
#5537
N/A
N/A
Sep 7-13 pkg/webhook/clusterpropagationpolicy
0%
N/A
#5494
#5521
N/A
N/A
Sep 7-13 pkg/webhook/overridepolicy
0%
N/A
#5495
#5508 #5521
N/A
N/A
Sep 7–13 pkg/webhook/clusteroverridepolicy
0%
N/A
#5496
#5508
N/A
N/A
Sep 7-13 pkg/webhook/resourcebinding
0%
N/A
#5497
N/A
N/A
N/A
Sep 7-13 pkg/webhook/clusterresourcebinding
0%
N/A
#5498
N/A
N/A
N/A
Sep 7-13 pkg/webhook/resourcedeletionprotection
0%
N/A
#5499
N/A
N/A
N/A
Sep 7-13 pkg/webhook/federatedhpa
0%
N/A
#5507
N/A
N/A
N/A
Sep 7-13 pkg/webhook/multiclusteringress
0%
N/A
#5518
N/A
N/A
N/A
Sep 7-13 pkg/webhook/work
0%
N/A
#5532
N/A
N/A
N/A
Sep 7-13 pkg/webhook/interpreter
0%
N/A
#5542
N/A
N/A
N/A
Sep 7-13 pkg/webhook/federatedresourcequota
30.2%
N/A
#5287
#5544
N/A
N/A
Sep 7-13 pkg/webhook/multiclusterservice
47.92%
N/A
#5517
#5521 #5539
N/A
N/A
Sep 7–13 pkg/webhook/resourceinterpretercustomization
61.36%
N/A
#5562
N/A
N/A
N/A

Milestone 2 - Karmada Operator Test Coverage (1/4)

Status Period Directory Old Coverage New Coverage PR Code Quality Docs Quality Bug Discovery
Sep 14–20 Any backlog from previous milestone
N/A
N/A
N/A
N/A
N/A
N/A
Sep 14–20 operator/pkg/certs
0%
N/A
#5559
#5561
N/A
#5560 #5561
Sep 14-20 operator/pkg/controller/karmada
0%
N/A
#5565
N/A
N/A
N/A
Sep 14-20 operator/pkg/controlplane
0%
N/A
#5590
N/A
N/A
N/A
Sep 14-20 operator/pkg/controlplane/apiserver
0%
N/A
#5576
N/A
N/A
N/A
Sep 14-20 operator/pkg/controlplane/etcd
0%
N/A
#5583
N/A
N/A
N/A
Sep 14-20 operator/pkg/controlplane/metricsadapter
0%
N/A
#5585
N/A
N/A
N/A
Sep 14-20 operator/pkg/controlplane/search
0%
N/A
#5587
N/A
N/A
N/A
Sep 14-20 operator/pkg/controlplane/webhook
0%
N/A
#5588
N/A
N/A
N/A
Sep 14-20 operator/pkg/karmadaresource/apiservice
0%
N/A
#5596
#5602
N/A
N/A
Sep 14-20 operator/pkg/karmadaresource/rbac
0%
N/A
#5603
N/A
N/A
N/A
Sep 14-20 operator/pkg/karmadaresource/webhookconfiguration
0%
N/A
#5605
N/A
N/A
N/A
Sep 14-20 operator/pkg/scheme
0%
N/A
#5607
N/A
N/A
N/A

Milestone 3 - Karmada Operator Test Coverage (2/4)

Status Period Directory Old Coverage New Coverage PR Code Quality Docs Quality Bug Discovery
Sep 21–27 Any backlog from previous milestone
N/A
N/A
N/A
N/A
N/A
N/A
Sep 21–27 operator/pkg
0%
N/A
#5613
#5617 #5616
N/A
N/A
Sep 21–27 operator/pkg/tasks/init
0%
N/A
#5624 #5625 #5632 #5634 #5635 #5636 #5638 #5657 #5701 #5704
N/A
N/A
N/A
Sep 21–27 operator/pkg/tasks/deinit
0%
N/A
#5643 #5676 #5678
N/A
N/A
N/A

Milestone 4 - Karmada Operator Test Coverage (3/4)

Status Period Directory Old Coverage New Coverage PR Code Quality Docs Quality Bug Discovery
Sep 28 - Oct 4 Any backlog from previous milestone
N/A
N/A
N/A
N/A
N/A
N/A
Sep 28 - Oct 4 operator/pkg/workflow
0%
N/A
#5647
N/A
N/A
N/A
Sep 28 - Oct 4 operator/pkg/util/patcher
0%
N/A
#5652
N/A
N/A
N/A
Sep 28 - Oct 4 operator/pkg/util/apiclient
0%
N/A
#5654 #5659
N/A
N/A
N/A

Milestone 5 - Karmada Operator Test Coverage (4/4)

Status Period Directory Old Coverage New Coverage PR Code Quality Docs Quality Bug Discovery
Oct 5-11 Any backlog from previous milestone
N/A
N/A
N/A
N/A
N/A
N/A
Oct 5-11 operator/pkg/util
0%
N/A
#5661 #5665 #5666 #5667 #5675
N/A
N/A
N/A

Milestone 6 - Test Coverage Review and Refinement

Status Period Directory Old Coverage New Coverage PR Code Quality Docs Quality Bug Discovery
Oct 12-18 Any backlog from previous milestones
N/A
N/A
N/A
N/A
N/A
N/A

Milestone 7 - Karmada Search Coverage

Status Period Directory Old Coverage New Coverage PR Code Quality Docs Quality Bug Discovery
Oct 19-25 pkg/search/backendstore
0%
N/A
N/A
N/A
N/A
N/A
Oct 19-25 pkg/search/proxy/framework/runtime
0%
N/A
N/A
N/A
N/A
N/A
Oct 19-25 pkg/search/proxy/testing
0%
N/A
N/A
N/A
N/A
N/A
Oct 19-25 pkg/search
0%
N/A
N/A
N/A
N/A
N/A

Milestone 8- Remaining Code Coverage (1/3)

Status Period Directory Old Coverage New Coverage PR Code Quality Docs Quality Bug Discovery
Oct 26 - Nov 1 Any backlog from previous milestone
N/A
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/aggregatedapiserver
0%
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/clusterdiscovery/clusterapi
0%
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/karmadactl/addons/descheduler
0%
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/karmadactl/addons/estimator
0%
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/karmadactl/addons/init
0%
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/karmadactl/addons/install
0%
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/karmadactl/addons/metricsadapter
0%
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/karmadactl/addons/search
0%
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/karmadactl/apply
0%
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/karmadactl/cmdinit/bootstraptoken/agent/tlsbootstrap.go
0%
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/karmadactl/cmdinit/bootstraptoken/clusterinfo
0%
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/karmadactl/cmdinit/karmada/check.go
0%
N/A
N/A
N/A
N/A
N/A
Oct 26 - Nov 1 pkg/karmadactl/cmdinit/karmada/deploy.go
0%
N/A
N/A
N/A
N/A
N/A

Milestone 9 - Remaining Code Coverage (2/3)

Status Period Directory Old Coverage New Coverage PR Code Quality Docs Quality Bug Discovery
Nov 2-8 Any backlog from previous milestone
N/A
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/karmadactl/cordon
0%
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/karmadactl/deinit
0%
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/karmadactl/describe
0%
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/karmadactl/exec
0%
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/karmadactl/get
0%
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/karmadactl/join
0%
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/karmadactl/logs
0%
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/karmadactl/promote
0%
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/karmadactl/register
0%
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/karmadactl/top
0%
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/karmadactl/unjoin
0%
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/karmadactl/util/apiclient
0%
N/A
N/A
N/A
N/A
N/A
Nov 2-8 pkg/metricsadapter
0%
N/A
N/A
N/A
N/A
N/A

Milestone 10 - Remaining Code Coverage (3/3)

Status Period Directory Old Coverage New Coverage PR Code Quality Docs Quality Bug Discovery
Nov 9-15 Any backlog from previous milestone
N/A
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/metricsadapter/provider
0%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/metricsadapter/multiclient
0%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/sharedcli/klogflag
0%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/sharedcli/profileflag
0%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/version/sharedcommand
0%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/apis/work/v1alpha1
0%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/karmadactl/addons
0.79%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/registry/cluster/storage
4.25%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/registry/search
12.50%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/registry
13.40%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/registry/cluster
14.02%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/registry/search/storage
15.09%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/karmadactl/options
17.65%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/sharedcli
19.70%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/karmadactl/util
30.87%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/karmadactl/interpret
31.14%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/metrics
31.76%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/karmadactl
36.51%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/karmadactl/util/genericresource
38.72%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/karmadactl/cmdinit/kubernetes/deploy.go
41.55%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/version
41.67%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/karmadactl/util/testing
41.67%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/apis/work
44.36%
N/A
N/A
N/A
N/A
N/A
Nov 9-15 pkg/karmadactl/taint
47.34%
N/A
N/A
N/A
N/A
N/A

Milestone 11 - Final Code Review and Coverage Validation

Status Period Directory Old Coverage New Coverage PR Code Quality Docs Quality Bug Discovery
Nov 16-20 Any backlog from previous milestone
N/A
N/A
N/A
N/A
N/A
N/A

Milestone 12 - Detailed Report on Improved Test Coverage

Status Period Directory Old Coverage New Coverage PR Code Quality Docs Quality Bug Discovery
Nov 21-25 A Detailed Blog Post Reporting on Improved Test Coverage Across the Project
N/A
N/A
N/A
N/A
N/A
N/A

mohamedawnallah avatar Sep 07 '24 16:09 mohamedawnallah

Hi @anujagrawal699,

Do any of these overlap with your project (#5470)? Please let me know if I overlooked something so we can avoid any potential duplication of effort.

Thanks!

mohamedawnallah avatar Sep 07 '24 16:09 mohamedawnallah

Hi @anujagrawal699,

Do any of these overlap with your project (#5470)? Please let me know if I overlooked something so we can avoid any potential duplication of effort.

Thanks!

Hey @mohamedawnallah . Everything looks good and structured. Good Job!

anujagrawal699 avatar Sep 07 '24 17:09 anujagrawal699

Good job! It's a detailed plan. Let's follow it.

XiShanYongYe-Chang avatar Sep 09 '24 08:09 XiShanYongYe-Chang

/assign @mohamedawnallah

XiShanYongYe-Chang avatar Sep 09 '24 08:09 XiShanYongYe-Chang

Update: The ResourceInterpreterCustomization validation admission webhook was not included in Milestone 1 for the webhooks. A PR (#5562) was submitted during Milestone 2 to address this.

mohamedawnallah avatar Sep 16 '24 13:09 mohamedawnallah

Milestone 5 Update: I came across the operator/pkg/apis/operator/v1alpha1 and operator/cmd related to APIs and command options respectively, and I don't see any critical code that requires immediate testing. We can prioritize this later, but if you have a different opinion, please let me know so we can adjust the priorities accordingly.

mohamedawnallah avatar Oct 16 '24 16:10 mohamedawnallah

Milestone 6 Update: I came across pkg/search/proxy/testing mostly related to mocking code and I don't see any critical code that requires immediate testing. We can prioritize this later, but if you have a different opinion, please let me know so we can adjust the priorities accordingly.

mohamedawnallah avatar Oct 28 '24 16:10 mohamedawnallah

Milestone 6 Update: I came across pkg/search/proxy/testing mostly related to mocking code and I don't see any critical code that requires immediate testing. We can prioritize this later, but if you have a different opinion, please let me know so we can adjust the priorities accordingly.

I think it's okay.

XiShanYongYe-Chang avatar Oct 29 '24 01:10 XiShanYongYe-Chang

Milestone 6 Update: I came across pkg/search/proxy/testing mostly related to mocking code and I don't see any critical code that requires immediate testing. We can prioritize this later, but if you have a different opinion, please let me know so we can adjust the priorities accordingly.

I think it's okay.

agree

zhzhuang-zju avatar Oct 29 '24 01:10 zhzhuang-zju

Milestone 7 Update: I came across pkg/search/proxy/framework/runtime/framework.go related to framework code and I don't see any critical code that requires immediate testing. We can prioritize this later, but if you have a different opinion, please let me know so we can adjust the priorities accordingly.

mohamedawnallah avatar Nov 16 '24 00:11 mohamedawnallah

Milestone 10 Updates:

I came across the following components:

  • pkg/apis/work: This is related to the API specification. I don't see any critical code here that would require immediate testing.
  • pkg/karmadactl/util/testing: This pertains to fake testing, and I don't believe there's any critical code that requires urgent testing.
  • pkg/version: This is related to version code, particularly the command configurations. Testing these configurations doesn’t seem to be of immediate importance.
  • pkg/karmadactl/karmadactl.go: This involves karmadactl command configurations, and similar to the others, I think testing these configurations wouldn't be particularly useful.

In these cases, I don't see any critical code that requires immediate testing. We can prioritize this later, but if you have a different perspective, please let me know so we can adjust the priorities accordingly.

mohamedawnallah avatar Nov 23 '24 10:11 mohamedawnallah

Hi @XiShanYongYe-Chang,

I’m fully committed to completing the remaining unit tests as I planned to enhance code coverage and ensure Karmada achieves an even stronger and more reliable state post-LFX mentorship. Thank you for your invaluable guidance throughout this journey! 🙏

mohamedawnallah avatar Nov 28 '24 02:11 mohamedawnallah

Thank you for your contribution @mohamedawnallah :)

In view of your outstanding performance in the Karmada community, I'd like to invite you to join Karmada as a member. Would you like to do so?

XiShanYongYe-Chang avatar Nov 28 '24 02:11 XiShanYongYe-Chang

In view of your outstanding performance in the Karmada community, I'd like to invite you to join Karmada as a member. Would you like to do so?

@XiShanYongYe-Chang Yes, it would be an absolute honor to be part of this incredible community. From the moment I made my first contribution, Karmada welcomed me with open arms, and I’ve been excited ever since to contribute to the growth of open-source cloud computing, a space where Karmada truly stands out. 🙏

I will submit a Karmada Membership Issue Request by the end of the day.

mohamedawnallah avatar Nov 28 '24 02:11 mohamedawnallah

I will submit a Karmada Membership Issue Request by the end of the day.

@mohamedawnallah Thank you for your contribution, I am very willing to vote on your Membership Issue.

zhzhuang-zju avatar Nov 28 '24 07:11 zhzhuang-zju

If there is a new plan, let's follow up. Let's draw a sentence for this issue. Thank you. /close

XiShanYongYe-Chang avatar Feb 28 '25 03:02 XiShanYongYe-Chang

@XiShanYongYe-Chang: Closing this issue.

In response to this:

If there is a new plan, let's follow up. Let's draw a sentence for this issue. Thank you. /close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

karmada-bot avatar Feb 28 '25 03:02 karmada-bot