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

Uniform testing of environments #186

Open
4 tasks
erwinvaneyk opened this issue Sep 6, 2017 · 0 comments
Open
4 tasks

Uniform testing of environments #186

erwinvaneyk opened this issue Sep 6, 2017 · 0 comments

Comments

@erwinvaneyk
Copy link
Member

Currently environments differ in the exact interface they implement. For example, some environments return a 500 vs. a 400 for an already specialized environment. There are probably other, more subtle differences that we don't know about yet, such as the way headers and query params are handled.

There should be a uniform method for verifying that environments correspond to a specific environment specification, as any variation in the environments can be a root for hard to debug problems, which would require intricate knowledge of the environment implementation details.

Specification should describe endpoints, HTTP methods, errors/codes, how to handle params (body, headers, query), ect. It might be an idea to write a swagger spec as a way to document this specification (although I do not know exactly to what detail Swagger describes the HTTP specification)

As a bonus, with the uniform testing tooling, we could include some simple, automated benchmarking of the environments, to provide some insight in how the environments compare for a similar user-function.

Tl;dr needed:

  • Write down the, currently implicit, environment spec
  • Document environment spec in a detailed, non-ambiguous way (e.g. using swagger)
  • Find or build tooling to test the environments in a language-agnostic way (an approach could be to test against the Docker containers)
  • Create a uniform test for all languages (e.g. using a simple test function that uses all the main features of the spec such as reading the body, headers and query params).

fyi @life1347 @soamvasani

@sanketsudake sanketsudake transferred this issue from fission/fission Nov 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant