envoy-apisix icon indicating copy to clipboard operation
envoy-apisix copied to clipboard

ci: run the test case

Open membphis opened this issue 5 years ago • 10 comments

membphis avatar Nov 25 '20 09:11 membphis

we need to do this asap

membphis avatar Dec 28 '20 13:12 membphis

@nic-chen

membphis avatar Dec 28 '20 13:12 membphis

@membphis @tokers @spacewander I wrote a simple version, but gave up. We need to choose a test framework. I plan to use ginkgo for it as well. What do you think?

nic-chen avatar Dec 28 '20 14:12 nic-chen

ginkgo

seems a better way

membphis avatar Dec 28 '20 14:12 membphis

I prefer to write one with py.test... It would be more simple to write python code.

spacewander avatar Dec 28 '20 14:12 spacewander

There is some limitation with a test framework written in Go, for example: Go doesn't support HTTP 1.0 while envoy supports it.

spacewander avatar Dec 28 '20 14:12 spacewander

I prefer to use Go.

In CNCF, Go is more popular.

membphis avatar Dec 28 '20 14:12 membphis

Yes, it is easier to use Python. The only problem is that there will be one more language, and Go is used in several projects in the APISIX community, .

nic-chen avatar Dec 28 '20 14:12 nic-chen

I wrote a test framework with Go before. It is not a good idea to choose a static language. It's not so efficient to satisfy the target. And there is some issues with Go itself, for example, no HTTP 1.0 support.

BTW, we already use perl/shell/Makefile code in the APISIX.

spacewander avatar Dec 28 '20 14:12 spacewander

for example, no HTTP 1.0 support.

If we need to test it, we can use the TCP way for some simple cases. I think this is fine.

BTW, we already use perl/shell/Makefile code in the APISIX.

If possible, I want to avoid using "perl" :(

BTW, I found another open-source gateway project gloo, Test cases are written in Golang: https://github.com/solo-io/gloo/tree/master/test/e2e

membphis avatar Dec 28 '20 14:12 membphis