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
pytest plugin for distributed testing and loop-on-failures testing modes.

xdist: pytest distributed testing plugin The pytest-xdist plugin extends pytest with some unique test execution modes: test run parallelization: if yo

pytest-dev 1.1k Dec 30, 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
Baseball Discord bot that can post up-to-date scores, lineups, and home runs.

Sunny Day Discord Bot Baseball Discord bot that can post up-to-date scores, lineups, and home runs. Uses webscraping techniques to scrape baseball dat

Benjamin Hammack 1 Jun 20, 2022
자동 건강상태 자가진단 메크로 서버전용

Auto-Self-Diagnosis-for-server 자동 자가진단 메크로 서버전용 이 프로그램은 SaidBySolo님의 auto-self-diagnosis를 참고하여 제작하였습니다. 개인 사용 목적으로 제작하였기 때문에 추후 업데이트는 진행하지 않습니다. 의존성 G

JJooni 3 Dec 04, 2021
A pytest plugin that enables you to test your code that relies on a running Elasticsearch search engine

pytest-elasticsearch What is this? This is a pytest plugin that enables you to test your code that relies on a running Elasticsearch search engine. It

Clearcode 65 Nov 10, 2022
Python script to automatically download from Zippyshare

Zippyshare downloader and Links Extractor Python script to automatically download from Zippyshare using Selenium package and Internet Download Manager

Daksh Khurana 2 Oct 31, 2022
splinter - python test framework for web applications

splinter - python tool for testing web applications splinter is an open source tool for testing web applications using Python. It lets you automate br

Cobra Team 2.6k Dec 27, 2022
Doggo Browser

Doggo Browser Quick Start $ python3 -m venv ./venv/ $ source ./venv/bin/activate $ pip3 install -r requirements.txt $ ./sobaki.py References Heavily I

Alexey Kutepov 9 Dec 12, 2022
a wrapper around pytest for executing tests to look for test flakiness and runtime regression

bubblewrap a wrapper around pytest for assessing flakiness and runtime regressions a cs implementations practice project How to Run: First, install de

Anna Nagy 1 Aug 05, 2021
FauxFactory generates random data for your automated tests easily!

FauxFactory FauxFactory generates random data for your automated tests easily! There are times when you're writing tests for your application when you

Og Maciel 37 Sep 23, 2022
Aioresponses is a helper for mock/fake web requests in python aiohttp package.

aioresponses Aioresponses is a helper to mock/fake web requests in python aiohttp package. For requests module there are a lot of packages that help u

402 Jan 06, 2023
A web scraping using Selenium Webdriver

Savee - Images Downloader Project using Selenium Webdriver to download images from someone's profile on https:www.savee.it website. Usage The project

Caio Eduardo Lobo 1 Dec 17, 2021
Enabling easy statistical significance testing for deep neural networks.

deep-significance: Easy and Better Significance Testing for Deep Neural Networks Contents ⁉️ Why 📥 Installation 🔖 Examples Intermezzo: Almost Stocha

Dennis Ulmer 270 Dec 20, 2022
nose is nicer testing for python

On some platforms, brp-compress zips man pages without distutils knowing about it. This results in an error when building an rpm for nose. The rpm bui

1.4k Dec 12, 2022
Headless chrome/chromium automation library (unofficial port of puppeteer)

Pyppeteer Pyppeteer has moved to pyppeteer/pyppeteer Unofficial Python port of puppeteer JavaScript (headless) chrome/chromium browser automation libr

miyakogi 3.5k Dec 30, 2022
Sixpack is a language-agnostic a/b-testing framework

Sixpack Sixpack is a framework to enable A/B testing across multiple programming languages. It does this by exposing a simple API for client libraries

1.7k Dec 24, 2022
Playwright Python tool practice pytest pytest-bdd screen-play page-object allure cucumber-report

pytest-ui-automatic Playwright Python tool practice pytest pytest-bdd screen-play page-object allure cucumber-report How to run Run tests execute_test

moyu6027 11 Nov 08, 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
Python Projects - Few Python projects with Testing using Pytest

Python_Projects Few Python projects : Fast_API_Docker_PyTest- Just a simple auto

Tal Mogendorff 1 Jan 22, 2022
Percy visual testing for Python Selenium

percy-selenium-python Percy visual testing for Python Selenium. Installation npm install @percy/cli: $ npm install --save-dev @percy/cli pip install P

Percy 9 Mar 24, 2022