test/py: Implement pytest infrastructure
This tool aims to test U-Boot by executing U-Boot shell commands using the console interface. A single top-level script exists to execute or attach to the U-Boot console, run the entire script of tests against it, and summarize the results. Advantages of this approach are: - Testing is performed in the same way a user or script would interact with U-Boot; there can be no disconnect. - There is no need to write or embed test-related code into U-Boot itself. It is asserted that writing test-related code in Python is simpler and more flexible that writing it all in C. - It is reasonably simple to interact with U-Boot in this way. A few simple tests are provided as examples. Soon, we should convert as many as possible of the other tests in test/* and test/cmd_ut.c too. The hook scripts, relay control utilities, and udev rules I use for my own HW setup are published at https://github.com/swarren/uboot-test-hooks. See README.md for more details! Signed-off-by: Stephen Warren <swarren@wwwdotorg.org> Signed-off-by: Stephen Warren <swarren@nvidia.com> Tested-by: Michal Simek <michal.simek@xilinx.com> Tested-by: Simon Glass <sjg@chromium.org> Acked-by: Simon Glass <sjg@chromium.org> #v3
This commit is contained in:
committed by
Simon Glass
parent
27067a46c5
commit
d201506cca
88
test/py/multiplexed_log.css
Normal file
88
test/py/multiplexed_log.css
Normal file
@@ -0,0 +1,88 @@
|
||||
/*
|
||||
* Copyright (c) 2015 Stephen Warren
|
||||
* Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved.
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0
|
||||
*/
|
||||
|
||||
/*
|
||||
* This provides pretty formatting of the HTML log file, e.g.
|
||||
* - colored bars beside/above log sections for easily parsed delineation.
|
||||
* - color highlighting of various messages.
|
||||
*/
|
||||
|
||||
body {
|
||||
background-color: black;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
pre {
|
||||
margin-top: 0px;
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.implicit {
|
||||
color: #808080;
|
||||
}
|
||||
|
||||
.section {
|
||||
border-style: solid;
|
||||
border-color: #303030;
|
||||
border-width: 0px 0px 0px 5px;
|
||||
padding-left: 5px
|
||||
}
|
||||
|
||||
.section-header {
|
||||
background-color: #303030;
|
||||
margin-left: -5px;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
.section-trailer {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.stream {
|
||||
border-style: solid;
|
||||
border-color: #303030;
|
||||
border-width: 0px 0px 0px 5px;
|
||||
padding-left: 5px
|
||||
}
|
||||
|
||||
.stream-header {
|
||||
background-color: #303030;
|
||||
margin-left: -5px;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
.stream-trailer {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.error {
|
||||
color: #ff0000
|
||||
}
|
||||
|
||||
.warning {
|
||||
color: #ffff00
|
||||
}
|
||||
|
||||
.info {
|
||||
color: #808080
|
||||
}
|
||||
|
||||
.action {
|
||||
color: #8080ff
|
||||
}
|
||||
|
||||
.status-pass {
|
||||
color: #00ff00
|
||||
}
|
||||
|
||||
.status-skipped {
|
||||
color: #ffff00
|
||||
}
|
||||
|
||||
.status-fail {
|
||||
color: #ff0000
|
||||
}
|
||||
Reference in New Issue
Block a user