Frasy is a tool allowing technicians to test any Printed Circuit Board Assemblies (PCBA) in a highly scalable manner, ranging from small (less than 1000 units per year) to very large (> 10 million units per year) production lines.
Using a descriptive approach, very little programming knowledge are required in order to write test sequences. The technician only has to specify the criteria for a PCBA to be valid, and Frasy handles the rest!
TODO: add screenshot of main gui
This short example demonstrates how a voltage is measured on a PCBA.
local Commands = requires("commands.lua")
Sequence("MySequence", function(seqContext)
Test("VCC", function(testContext)
local tension = Commands.GetTension(testContext.Map.VCC)
Expect(tension):ToBeBetween(3.0, 3.6) -- Expects VCC to be 3.3V +/- 300mV.
end)
end)
At its core, Frasy uses the functionalities of the GoogleTest unit testing framework to select, configure and execute sequences of tests defined by the user. Tests can be individually controlled from within the software, and their behavior can be specified through scripts written in Lua.
When opening Frasy for the first time, the user will be prompted to select the files that contain the sequences of test. This will be remembered so that they are automatically loaded on start up in the future.
Sequences and tests can be enabled and disabled through the test explorer, which is also used to display the progression of the sequence. The user then only has to click on the "Run" button.
The API reference documentation can be found here.
A thorough description of Frasy's architecture can be found here
Thank you to the following persons for their help in making this project possible!
- DoubleNom for the help designing the entire architecture and for his helpful criticism :)
- nickclark2016 for designing the test description procedure!
- An anonymous sergal for the help coming up with sentences that makes sense!
To generate the project files, use one of the scripts found here. Alternatively, invoke Premake directly.
Note: C++20 is required to build Frasy!
By default, Frasy builds the demonstration mode. The sources for this demo mode can be found here.
To provide your own source code, use the --src_loc
flag when generating the project files.
Because Morwenn.