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

client tests? #17

Open
kazuho opened this issue Feb 4, 2015 · 14 comments · Fixed by #74
Open

client tests? #17

kazuho opened this issue Feb 4, 2015 · 14 comments · Fixed by #74

Comments

@kazuho
Copy link
Contributor

kazuho commented Feb 4, 2015

As of now, h2spec is only capable of testing servers, acting as a client. IMO it would be great if h2spec could be run as a server, so that it could be used as a tool to test client implementations.

@summerwind
Copy link
Owner

I agree with your opinion.

I thought about test cases for the client side before. But it seemed difficult to implement than server side tests. We have to consider the URL for clients that request. This is why I've been put off implementation.

But now h2spec has the almost test cases for the server side. So I'm going to implement the client side test cases on the future version :-)

@kazuho
Copy link
Contributor Author

kazuho commented Feb 5, 2015

Delighted to hear that!

There would be technical challenges for sure, but I am confident the client developers would be delighted if h2spec could be applied for testing their implementation, as the tool has been very helpful for polishing up H2O.

@Lukasa
Copy link
Contributor

Lukasa commented Jul 3, 2015

Speaking for client developers, yeah, we'd be delighted! =D

@Karm
Copy link
Contributor

Karm commented Jul 12, 2016

Dear @Lukasa, could you share what you ended up using?

@kazu-yamamoto
Copy link

IIJ-II has an intern student to develop h2specd in this summer. We hope that we can release it two months later.

@CrowdHailer
Copy link

Was there any progress on this.

@kazu-yamamoto
Copy link

@chhsiao90
Copy link
Contributor

I had implement the client tests with #74 , that reuse the exists tests already exists in h2spec and changed to the client version tests.

But I just found that currently it only works fine on browser, but not for command line based client, like nghttp. I think it's a bug when I implement the port-based test case instead of path-based test case by 6403404.

@ghost
Copy link

ghost commented Aug 22, 2018

@chhsiao90 any plans to make it work for command-line clients?

@chhsiao90
Copy link
Contributor

It's already supported by --exec

For example, you can add --exec nghttp, and h2spec will execute nghttp https://127.0.0.1:xxxx for each test case.

@ghost
Copy link

ghost commented Aug 23, 2018

Ah ok, thank you. I did not know about the --exec flag. Awesome! I love you!

@essen
Copy link
Contributor

essen commented Sep 28, 2018

I started using h2specd to test my client. Works great! Thanks! https://github.com/ninenines/gun/blob/master/test/h2specd_SUITE.erl

Two nitpicks: I have to use browser mode and issue the requests from my test suite rather than rely on --exec but did not find a way to stop the program once I'm done, had to resort to using kill. I also didn't find a way to get a text/plain report, the HTML would be fine for the HTML reports but not for the shell output.

Back to fixing bugs...

@kunalekawde
Copy link

I've a C++ client built using libcurl + nghttp2, can i use h2specd to verify this ?

@kunalekawde
Copy link

I've a C++ client built using libcurl + nghttp2, can i use h2specd to verify this ?

I was able to test this working. created a test test exec and used --exec option. Thanks

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

Successfully merging a pull request may close this issue.

9 participants