Skip to content
rakeshkn-gdb edited this page Nov 30, 2017 · 1 revision

Protocol testing framework

Testing framework for network protocols. Human readable declarative format for specifying tests.

Goals

Design and develop a tool that is able to test networking software based on a human readable configuration language. Ideally, the final software is capable of replacing h2spec via a configuration file which defines RFC compliance -- and do a better job at it.To be able to do so, the configuration must allow definition of complicated network request/reply patterns, allowing the software to perform an accurate replay and ensure contents (and sometimes timings) match expectations simultaneously at various levels in the protocol stack.

Next to h/2 compliance, another potential use case is pagespeed, which currently uses bash scripts for end-to-end system tests. Common tests include repeating a http request until a certain header or fragment in the body matches expectations. More complicated tests involve ensuring the module faithfully forwards http data chunks by checking they match the expected count and are received within certain timing thresholds.