Comments (6)
Hm, details? Do we still need this?
from openhtf.
I've actually wanted this in tests I've written, I have a bunch of power-related measurements, serial-related, ethernet-related, etc and I'd like them to be grouped together instead of mixed in any UI that I can access.
What I was thinking of doing was group them by the phase, but that won't help with phase re-use (the name is the same but the measurements should be separated) nor with multi-phase grouping. Here's a couple strawman APIs:
@(measures(...).Group('power')) # or Grouping or GroupBy?
# or
@measures.Group('power')(...)
The first seems like it would be good? You could even chain them to have multiple groups in the same phase. It requires the extra ()
to deal with Python syntax, I checked :(
from openhtf.
I don't think my group has a particular need for this at the moment, but I can see it being useful. The new test UI as designed breaks things down primarily by phase. We would need to add a new view to support group-based measurement display.
If groups aren't going to be mutually exclusive, I think we should consider calling them 'tags', since #tags are a concept that most internet users are already familiar with.
Regarding API, I would suggest something simple like:
@measures(
Measurement('vegeta_power_lvl').Tags('power'),
Measurement('goku_power_lvl',
tags='power')) # We talked about doing something like this, right?
from openhtf.
I like your examples, Joe!
My thinking was they would be exclusive, but if there's a use case for
non-exclusive then tags seems good. Even putting the # in the name if we
want to go full-millenial :)
On Apr 5, 2016 1:25 PM, "Joe Ethier" [email protected] wrote:
I don't think my group has a particular need for this at the moment, but I
can see it being useful. The new test UI as designed breaks things down
primarily by phase. We would need to add a new view to support group-based
measurement display.If groups aren't going to be mutually exclusive, I think we should
consider calling them 'tags', since #tags are a concept that most internet
users are already familiar with.Regarding API, I would suggest something simple like:
@measures(
Measurement('vegeta_power_lvl').Tags('power'),
Measurement('goku_power_lvl',
tags='power')) # We talked about doing something like this, right?—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
#10 (comment)
from openhtf.
+1, I like Joe's syntax examples, and they map nicely to the inline-spec version, too:
@measures('gohan_power_lvl', tags='power')
IIRC guzzle TestRun proto already has tags for measurements, or is that just for the TestRun as a whole? Either way, we could add the tag to the measurement metadata we output :)
from openhtf.
To keep things simple, we're currently keeping measurements "flat" (no second "dimensions" like tags or group). This functionality is nice but not often needed. For complex testers we recommend recording data in structured formats like JSON.
from openhtf.
Related Issues (20)
- If plug configuration is dynamic (e.g. configs loaded from a file), how can the decorators be updated accordingly? HOT 2
- frontend_example with PyInstaller HOT 3
- Running a phase in backgroud HOT 7
- Request: Add ability to FAIL_AND_CONTINUE instead of STOP when a Phase reaches max_repeats
- How to build a test running multiple test groups concurrently, but showing I/O data of all test groups on the same webpage? HOT 1
- HIL testing? HOT 5
- multiple monitors for a single phase?
- KeyError in `PlugManager.provide_plugs` HOT 6
- monitors decorator does not fully copy the specification of the monitored phase
- Feature Request(?): Provide a mechanism for displaying images in the front-end HOT 1
- Progress bar/completion status stops if test is marked as FAIL. HOT 4
- How could I call a PhaseDescriptor explicitly? HOT 3
- runtime reporting/logging for each phase during test HOT 6
- Having trouble using the unit test decorator @test.patch_plugs to mock a device I'm testing. HOT 3
- where PyOpenSSL is used?
- Unused `six` import in monitor code
- Replacing `M2Crypto` dependency with `cryptography`
- Status LED on failure HOT 1
- Multiple tests or one test and multiple subtests?
- Best practice on how to organize product-dependent tests
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openhtf.