A simple tool to test internet stability.

Overview

pingtest

Description

A personal project for testing internet stability, intended for use in Linux and Windows. While testing download/upload speed or one-time ping data is great, this tool can send many pings per second and generates a graph to illustrate the ping times in order to indicate the stability of the connection. Inspired by packetlosstest.com.

This program now includes GUI functionality. See Usage for more details.

Setup

This script is written in Python3.

The requirements can be installed with the following commands in Linux:

sudo apt install python3-tk &&
sudo apt install traceroute &&
pip install matplotlib &&
pip install numpy

Modify as needed depending on your package manager. For Windows, tracert is used instead of traceroute, and it should already be installed. Tkinter also might be installed with Python3, I'm not entirely sure as I've seen it both ways.

On Linux, clone the repository and either run pingtest file with Python3, or use the command chmod a+x pingtest to make the program executable as a script.

On Windows, clone the repository and run pingtest file with Python3.

Usage

NOTE: On Linux, if threading isn't used, requires sudo privileges due to small intervals used in the ping command. If you run the program with neither sudo nor threading, it may prompt you for your password during runtime.

NOTE: On Windows, if threading isn't used, the maximum interval between pings is just one second. This nearly defeats the purpose of the program, so utilizing the -T flag to enable threading is highly recommended, as this allows for more than one ping per second.

After following Setup notes, run with ./pingtest or python3 pingtest on Linux, or python pingtest.py on Windows, followed by any desired flags.

The program now uses command line flags/arguments to set the parameters of the test. Help can be displayed with ./pingtest -h:

usage: pingtest [-h] [-G] [-a 
] [-d ] [-f ] [-t ] [-T] ____ ____ ____ ____ ______ ___ _____ ______ | \ || \ / || | / _]/ ___/| | | o ) | | _ || __|| | / [_( \_ | | | _/| | | | || | ||_| |_|| _]\__ ||_| |_| | | | | | | || |_ | | | | [_ / \ | | | | | | | | | || | | | | |\ | | | |__| |____||__|__||___,_| |__| |_____| \___| |__| Pingtest program by mire https://github.com/itsonlyMiRE/pingtest optional arguments: -h, --help show this help message and exit -G use GUI (all other flags are ignored if this is used) -a
address to ping (or use '-a F' to use first hop router) -d duration of test (DEFAULT: 10) -f frequency in pings per second (DEFAULT: 50, but 1 on Windows unless using threading) -t threshold of acceptable ping time (DEFAULT: 60) -T enable threading approach (highly recommended for Windows users)

Please note that either the -a or -G flag must be used. If the -G flag is used to launch the GUI, all other flags are ignored.

Notes

As written, this program can only be used in Linux. It could be implemented for Windows, but the ping command in Windows does not allow for extremely small interval times between pings, which is useful for getting accurate data.

Now supports Windows! Threading highly recommended.

Next is Mac, coming soon-ish.

Owner
chris
chris
Test for generating stylized circuit traces from images

I test of an image processing idea to take an image and make neat circuit board art automatically. Inspired by this twitter post by @JackRhysider

Miller Hooks 3 Dec 12, 2022
Faker is a Python package that generates fake data for you.

Faker is a Python package that generates fake data for you. Whether you need to bootstrap your database, create good-looking XML documents, fill-in yo

Daniele Faraglia 15.2k Jan 01, 2023
GitHub action for AppSweep Mobile Application Security Testing

GitHub action for AppSweep can be used to continuously integrate app scanning using AppSweep into your Android app build process

Guardsquare 14 Oct 06, 2022
🎓 Stepik Academy Автоматизация тестирования на Python

🎓 Stepik Academy Автоматизация тестирования на Python Запуск тестов выполняется в командной строке: pytest -v --tb=line --language=en --alluredir=all

Sergey 1 Dec 03, 2021
pytest plugin providing a function to check if pytest is running.

pytest-is-running pytest plugin providing a function to check if pytest is running. Installation Install with: python -m pip install pytest-is-running

Adam Johnson 21 Nov 01, 2022
Command line driven CI frontend and development task automation tool.

tox automation project Command line driven CI frontend and development task automation tool At its core tox provides a convenient way to run arbitrary

tox development team 3.1k Jan 04, 2023
自动化爬取并自动测试所有swagger-ui.html显示的接口

swagger-hack 在测试中偶尔会碰到swagger泄露 常见的泄露如图: 有的泄露接口特别多,每一个都手动去试根本试不过来 于是用python写了个脚本自动爬取所有接口,配置好传参发包访问 原理是首先抓取http://url/swagger-resources 获取到有哪些标准及对应的文档地

jayus 534 Dec 29, 2022
A collection of testing examples using pytest and many other libreris

Effective testing with Python This project was created for PyConEs 2021 Check out the test samples at tests Check out the slides at slides (markdown o

Héctor Canto 10 Oct 23, 2022
WIP SAT benchmarking tooling, written with only my personal use in mind.

SAT Benchmarking Some early work in progress tooling for running benchmarks and keeping track of the results when working on SAT solvers and related t

Jannis Harder 1 Dec 26, 2021
a socket mock framework - for all kinds of socket animals, web-clients included

mocket /mɔˈkɛt/ A socket mock framework for all kinds of socket animals, web-clients included - with gevent/asyncio/SSL support ...and then MicroPytho

Giorgio Salluzzo 249 Dec 14, 2022
Scalable user load testing tool written in Python

Locust Locust is an easy to use, scriptable and scalable performance testing tool. You define the behaviour of your users in regular Python code, inst

Locust.io 20.4k Jan 04, 2023
A complete test automation tool

Golem - Test Automation Golem is a test framework and a complete tool for browser automation. Tests can be written with code in Python, codeless using

486 Dec 30, 2022
A toolbar overlay for debugging Flask applications

Flask Debug-toolbar This is a port of the excellent django-debug-toolbar for Flask applications. Installation Installing is simple with pip: $ pip ins

863 Dec 29, 2022
User-oriented Web UI browser tests in Python

Selene - User-oriented Web UI browser tests in Python (Selenide port) Main features: User-oriented API for Selenium Webdriver (code like speak common

Iakiv Kramarenko 575 Jan 02, 2023
This is a simple software for fetching new changes to remote repositories automatically.

Git Autofetch Git Autofetch is a simple software for fetching new changes from a repo to local repositories after a set time interval. This program is

Shreyas Ashtamkar 10 Jul 21, 2022
Automated tests for OKAY websites in Python (Selenium) - user friendly version

Okay Selenium Testy Aplikace určená k testování produkčních webů společnosti OKAY s.r.o. Závislosti K běhu aplikace je potřeba mít v počítači nainstal

Viktor Bem 0 Oct 01, 2022
hyppo is an open-source software package for multivariate hypothesis testing.

hyppo (HYPothesis Testing in PythOn, pronounced "Hippo") is an open-source software package for multivariate hypothesis testing.

neurodata 137 Dec 18, 2022
Show, Edit and Tell: A Framework for Editing Image Captions, CVPR 2020

Show, Edit and Tell: A Framework for Editing Image Captions | arXiv This contains the source code for Show, Edit and Tell: A Framework for Editing Ima

Fawaz Sammani 76 Nov 25, 2022
frwk_51pwn is an open-sourced remote vulnerability testing and proof-of-concept development framework

frwk_51pwn Legal Disclaimer Usage of frwk_51pwn for attacking targets without prior mutual consent is illegal. frwk_51pwn is for security testing purp

51pwn 4 Apr 24, 2022
A library for generating fake data and populating database tables.

Knockoff Factory A library for generating mock data and creating database fixtures that can be used for unit testing. Table of content Installation Ch

Nike Inc. 30 Sep 23, 2022