kmesh icon indicating copy to clipboard operation
kmesh copied to clipboard

End to end tests

Open hzxuzhonghu opened this issue 1 year ago • 3 comments

What would you like to be added:

This is to improve test coverage for features, we should test each feature in black box way. I am not sure whether github action machine allow running kmesh. This may be a blocker, so first we can test it.

The tasks can be divided as:

  • [ ] Provide script or go code to install kubernetes and kmesh
  • [ ] Prepare apps and framework that we need for e2e test
  • [ ] Write the first test as example
  • [ ] Write the other cases one by one

Why is this needed:

hzxuzhonghu avatar Feb 28 '24 02:02 hzxuzhonghu

@VanderChen is working on writing and running the first e2e case

hzxuzhonghu avatar Feb 28 '24 02:02 hzxuzhonghu

A kind based test framework will be used for end-to-end test both for Github Action and local cluster.

The end-to-end tests will be run against Kind K8s cluster running Kmesh.

+----------------------------+          +----------------------------+                                           
|   Kind Node 1              |          |   Kind Node 2              |                                           
|                            |          |                            |                                           
|  +-------------+           |          |  +-------------+           |                                           
|  | Kmesh Deamon|           |          |  | Kmesh Deamon|           |                                           
|  +-------------+           |          |  +-------------+           |                                           
|                            |          |                            |                                           
|  +----------------------+  |          |  +----------------------+  |                                           
|  | Kmesh Test Client 1  +--+----------+--> Kmesh Test Client 2  |  |                                           
|  +----------------------+  |          |  +----------------------+  |                                           
|                            |          |                            |                                           
+----------------------------+          +----------------------------+                                           

Connectivity e2e test including 2 parts connect to same node and connect to other node.

Before the controller appears, tests will be run as scripts, including,

  1. create kind cluster
  2. deploy kmesh with helm
  3. deploy test deploy with helm
  4. run tests

VanderChen avatar Mar 07 '24 07:03 VanderChen

/assign @YaoZengzeng Should list some concrete cases that we must cover.

hzxuzhonghu avatar May 11 '24 08:05 hzxuzhonghu

Done

LiZhenCheng9527 avatar Jul 04 '24 08:07 LiZhenCheng9527

/close

For other cases, please open detailed issue to track cases we want to cover

hzxuzhonghu avatar Jul 04 '24 12:07 hzxuzhonghu

@hzxuzhonghu: Closing this issue.

In response to this:

/close

For other cases, please open detailed issue to track cases we want to cover

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/test-infra repository.

kmesh-bot avatar Jul 04 '24 12:07 kmesh-bot