diff options
Diffstat (limited to 'README')
| -rw-r--r-- | README | 97 |
1 files changed, 97 insertions, 0 deletions
@@ -0,0 +1,97 @@ += Trunks +:toc: +:sectanchors: +:sectlinks: + +Trunks is a Go library that provide HTTP service with web user interface +to test HTTP and/or WebSocket endpoints and for load testing HTTP endpoints. + +For testing HTTP endpoints it use the +https://pkg.go.dev/github.com/shuLhan/share/lib/http[lib/http^] +package as the client, a wrapper for standard Go HTTP package. +For testing WebSocket endpoints it use the +https://pkg.go.dev/github.com/shuLhan/share/lib/websocket[lib/websocket^] +package as the client. +For the load testing we use +https://github.com/tsenart/vegeta[vegeta^] +as the backend. + +https://pkg.go.dev/git.sr.ht/~shulhan/trunks[Go doc^]. + +== Usage + +See the +https://git.sr.ht/~shulhan/trunks/tree/main/item/example/[example^] +package on how to programmatically use and create service using this module, +or, + +* clone this repository, +* execute `make dev`, and +* open http://127.0.0.1:8217. + + +== Screenshots + +The following screenshot display the main interface to Run or Attack the +registered HTTP service, + +image:https://git.sr.ht/~shulhan/trunks/blob/main/_screenshots/trunks_example.png[Main interface,640] + +The following screenshot display the result of attack in two forms, vegeta +metrics and vegeta histogram, + +image:https://git.sr.ht/~shulhan/trunks/blob/main/_screenshots/trunks_attack_result.png[Attack result,640] + + +== Web user interface (WUI) + +By default, the Trunks user interface can be viewed by opening in browser at +http://127.0.0.1:8217. +One can change address through Environment's ListenAddress. + + +== File name format + +Each attack result is saved in Environment's ResultsDir with the following +file name format, + + <Target.ID> "." <HttpTarget.ID> "." <DateTime> "." <Rate> "x" <Duration> "." <ResultsSuffix> + +The "DateTime" is in the following layout, + + YearMonthDate "_" HourMinuteSeconds + +The "ResultsSuffix" is the one that defined in Environment. + + +== Development + +https://git.sr.ht/~shulhan/trunks[Repository^]:: Link to the source code. + +https://lists.sr.ht/~shulhan/trunks[Mailing list^]:: Link to discussion and +where to send patches. + +https://todo.sr.ht/~shulhan/trunks[Issues^]:: Link to report for bug or +feature. + + +== Credits + +The Trunks icon and image is provided by https://www.spriters-resource.com/. + +== License + +Copyright (C) 2021 M. Shulhan <ms@kilabit.info> + +This program is free software: you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version. + +This program is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +details. + +You should have received a copy of the GNU General Public License along with +this program. If not, see <http://www.gnu.org/licenses/>. |
