Skip to content

andrejska/simplest-test-dashboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

simplest-test-dashboard

What is this?

Simplest test measurement dashboard for performance testing with InfluxDB as time series data base and Grafana as data visualization platform

As an illustration for my conference talk on mobile web games loading time testing

This was simplest idea of a test using Linux tools which came to my mind

Size of downloaded content from site on disc is tested. Please take into account that almost all web servers are using gzip compression, so size on wire and on disc is different.

How to run?

Prerequierments

git
docker engine
docker-compose

Start InfluxDB & Grafana

git clone https://github.com/andrejska/simplest-test-dashboard
cd simplest-test-dashboard
docker-compose up -d

Run test

docker exec -t simplesttestdashboard_testrunner_1 ./runner.sh http://host/endpoint ["comment" ["comma separated tags"]]

Example

docker exec -t simplesttestdashboard_testrunner_1 ./runner.sh http://google.lv
docker exec -t simplesttestdashboard_testrunner_1 ./runner.sh http://google.lv "informative comment about run"
docker exec -t simplesttestdashboard_testrunner_1 ./runner.sh http://google.lv "informative comment about run" "test, second"

See results

http://localhost:3000/d/zcy-lIziz

See results (Windows OS below Windows 10 Pro/Enterprise using Docker Toolbox)

Get IP address of VM on which docker engine is running:
docker-machine ip
Replace localhost in previous link with returned IP address

Debugging

How to access InfluxDB shell?

docker run --rm --network=simplesttestdashboard_default --link=simplesttestdashboard_influxdb_1 -it influxdb:1.4.3 influx --host influxdb

Why test script is in Bash?

This is to demo that InfluxDB has HTTP API and not to focus on specific high level language

What about Java?

Yes, it is very straight forward and human readable

What about Python?

Sure, these are most popular bindings for InfluxDB

What about other languages?

There are official bindings for Ruby, Node.JS and many other languages
Even if your favorite language does not have InfluxDB bindings you can use HTTP API :)

Where I can see talk?

TBA

About

Example of simple test dashboard with InfluxDB as time series data base and Grafana as data visualization platform

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages