AutoBugTracker (Local Side)
Updated: 7/28/2020
NOTE: AutoBugTracker currently exists as two separate and distinct repositories. One, for the local side and the other for the server side. You're currently on the local side 😮 ☁️ ☔.
Contents
Description
What is AutoBugTracker?
AutoBugTracker is a python program that executes a client program, detects bugs, and filters bugs of your choosing. It then sends any bugs it encounters to a server where it, records, and reports the bugs to Github. AutoBugTracker utilizes a PostgreSQL database to help keep things organized and keeps team members updated on the status of bugs via email.
Why use AutoBugTracker?
AutoBugTracker facilitates an efficient workflow for programmers, making it a great addition to any development suite.
Who should use AutoBugTracker?
AutoBugTracker is valuable to developers working in large teams, that need the ability to accumulate a large quantity of debug information from their customers. AutoBugTracker is highly configurable and can be tailored for your teams specific needs.
Instructions
Setup
Currently the AutoBugTracker client side repository can be cloned here.
Eventually we would like to set this up as a pip package.
Windows Setup
To run AutoBugTracker on windows machines you will need to install WSL 1 and the Ubuntu terminal for windows 10.
- Install the Windows Subsystem for Linux.
- Open PowerShell as Administrator:
- To open the PowerShell type
PowerShell
into the search box on windows 10.
- To open the PowerShell type
- To install WSL 1 for windows copy and paste this command into PowerShell, then restart your computer:
dism.exe/online/enable-feature/featurename:Microsoft-Windows-Subsystem-Linux/all/norestart
.
- Open PowerShell as Administrator:
- Installing Ubuntu.
- Once WSL 1 has been installed and enabled, open the windows Microsoft store by searching for it in the Windows 10 search bar.
- Now search for Ubuntu and then click on install to start installing.
- Now that Ubuntu has been installed launch the process. The first time Ubuntu is opened it will finish installing some files and then ask you to create a username and password.
- Once the above setup is done you have installed WSL 1 and the Ubuntu Linux distribution that can be used to run AutoBugTracker.
- Updating Ubuntu and Installing pip.
- Now that Ubuntu is installed you may need to update it.
- At the Ubuntu command line type:
sudo apt update
. - Now there may be some libraries that need to be installed so AutoBugTracker can run. Install pip if you have not already by typing in:
sudo apt install python3-pip
. - Now when you try to run AutoBugTracker and there are some dependencies missing you can install them using pip3.
- At the Ubuntu command line type:
- Now that Ubuntu is installed you may need to update it.
- Setting up AutoBugTracker in Ubuntu.
- Now that we have the proper environment setup to use AutoBugTracker on Windows 10 we need to pull the project from the github repo and set up the correct python path.
- Create a directory for AutoBugTracker.
mkdir someDirectory
.
- Now go to the AutoBugLocal repo and copy the link under the green code button.
- Once you have copied the link under the green code button,
cd
into the directory that you want to clone the repo into and enter the following command:git clone https://github.com/Danc2050/AutoBugLocal.git
.
- Create a directory for AutoBugTracker.
- Now that we have the proper environment setup to use AutoBugTracker on Windows 10 we need to pull the project from the github repo and set up the correct python path.
- Running AutoBugTracker.
- Now the
PYTHONPATH=
variable needs to be added to your.bashrc
file.- Go to your base directory and you can type:
ls -a
and thenvim .bashrc
.
- At the very bottom of the
.bashrc
file on a new line add:export PYTHONPATH=$PWD/AutoBugLocal;
.- Save the changes and exit the
.bashrc
file.
- Save the changes and exit the
- Now at the command line type:
source .bashrc
.
- At the Ubuntu command line type:
PYTHONPATH=$PWD/AutoBugLocal
.
- Go to your base directory and you can type:
- Now the
- Running your tests.
- To run tests using AutoBugTracker you will want to be in the AutoBugLocal directory and then create a new directory for your test scripts.
mkdir localTests
.cd
into this directory and you can put your tests scripts in here.- Mine is called
test.py
.
- Mine is called
- To run AutoBugTracker along with a test script
cd
into AutoBugLocal and then type, depending on your test directory and script name:python3 src/Main.py -S localTests/test.py
.- Note: You may need to run the command
chmod +x test.py
in order for AutoBugTracker to be able to execute the test script.
- To run tests using AutoBugTracker you will want to be in the AutoBugLocal directory and then create a new directory for your test scripts.
Example Black List
A black list can be configured locally to prevent any unwanted/unnecessary bugs from making it to the server.
In the future we will probably have the local black list sync up with one located at the remote server. This would make sure that all clients ignore the same kinds of bugs.
black.list:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'spam' is not defined
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: Can't convert 'int' object to str implicitly
Usage
AutoBugTracker can be run by using the command python3 AutoBugLocal -S client-program
Features
Current
- Execute client program and capture output of bugs.
- Black-list filtering.
Stretch Goals
- Alter config options at program execution via command line arguments.
- Capture bugs from programs written in more languages.
- Pip package.
- Formalize project. (Give it more professional layout features, i.e.
__main__.py
,-help
command, etc.) - Record user input to see what they did specifically when a bug occurred.
Contributors
Product Owners / Sponsors
Development Team
Team Lead
😂 Antonio DiMaggio
Software Engineers
😏 Ryan Campbell
😆 Ramon Guarnes
😀 Dana Khoshnaw
😊 Princess Kim
😉 Armando Lajara
😎 Mahmoud Al Robiai