Skip to main content

A tkinter-based front-end GUI for trigger and monitoring hardware tests based on the ATE package

Project description

Tk Manufacturing Automated Test System (TkMATS)

The Manufacturing Automated Test System is a Python library which provides useful structure for test creation and execution, but does not provide a user-defined method of controlling that test environment. The purpose of this project is to provide the start button and to provide visual feedback as to the actual test that is executing. The implementation is done using a tkinter.Frame subclass which may be embedded into any tkinter-style window.

Installation

Installation is as easy as pip install tkate.

Usage

You must set up your test so that it can successfully execute on the MATS. Once it is set up there, then you are just a couple of lines away from converting an ATE-based test to a TkATE.

We will start with the example application located within the ATE repository. The high-level functional bits are copied here for reference:

# create the sequence of test objects
sequence = [CommunicationTest(), PumpFlowTest()]
ts = TestSequence(sequence=sequence, auto_run=False, loglevel=logging.DEBUG)

# start the test as many times as you wish!
for _ in range(3):
    ts.start()
    sleep(2.0)

Note that the test was simply started using the TestSequence.start() method. Since we are going to have a test frame that comes with TkATE, then we won't require the automated start and can, instead, rely on the user button supplied. Our complete sequence could be as simple as:

# create the sequence of test objects
sequence = [CommunicationTest(), PumpFlowTest()]
ts = TestSequence(sequence=sequence, auto_run=False, loglevel=logging.DEBUG)

window = tk.Tk()

tkate_frame = TkAteFrame(window, ts)
tkate_frame.grid()

window.mainloop()

Note that most of the added code is related to simply creating the window object within which the TkAteFrame is to be embedded.

There are two tests that are executed here, one CommunicationTest and one PumpTest. Screenshots of various possible scenarios are shown here:

Communications Test Failure

Communications Test Failure Screenshot

Flow Test Failure

Flow Test Failure Screenshot

All Passing

All Passing Screenshot

Project details


Release history Release notifications

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for tkmats, version 0.7.0
Filename, size File type Python version Upload date Hashes
Filename, size tkmats-0.7.0-py3-none-any.whl (4.0 kB) File type Wheel Python version py3 Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page