[Lldb-commits] [lldb] 48490e3 - [lldb/Docs] Document testing strategies for the reproducers

Jonas Devlieghere via lldb-commits lldb-commits at lists.llvm.org
Wed Jan 22 18:03:35 PST 2020


Author: Jonas Devlieghere
Date: 2020-01-22T18:02:36-08:00
New Revision: 48490e3247af93eaf576a7bf1c1f6b7450fe6d54

URL: https://github.com/llvm/llvm-project/commit/48490e3247af93eaf576a7bf1c1f6b7450fe6d54
DIFF: https://github.com/llvm/llvm-project/commit/48490e3247af93eaf576a7bf1c1f6b7450fe6d54.diff

LOG: [lldb/Docs] Document testing strategies for the reproducers

Document the different ways we test the reproducers. This is mostly to
describe the new check-lldb-repro target.

Added: 
    

Modified: 
    lldb/docs/resources/reproducers.rst

Removed: 
    


################################################################################
diff  --git a/lldb/docs/resources/reproducers.rst b/lldb/docs/resources/reproducers.rst
index d28cade45215..c20c29892978 100644
--- a/lldb/docs/resources/reproducers.rst
+++ b/lldb/docs/resources/reproducers.rst
@@ -93,6 +93,31 @@ Design
 
 Coming soon.
 
+Testing
+-------
+
+Reproducers are tested in the following ways:
+
+ - Unit tests to cover the generic reproducer infrastructure.
+ - Focused test cases in the ``test/Shell/Reproducer`` directory. These tests
+   serve as integration tests for the reproducers infrastructure, as well as
+   doing some sanity checking for basic debugger functionality.
+
+Additional testing is possible:
+
+ - It's possible to unconditionally capture reproducers while running the
+   entire test suite by setting the ``LLDB_CAPTURE_REPRODUCER`` environment
+   variable. Assuming the reproducers behave correctly, this can also help to
+   reproduce test failures.
+ - It's possible to run the shell tests from a reproducer replay. The
+   ``check-lldb-repro`` target will run the shell test suite twice. First it
+   runs the test suite and captures a reproducer for every lldb invocation and
+   saves it to a known location based off lldb's arguments and  working
+   directory. Then it runs the test suite again, this time replaying the
+   reproducers. Certain tests do not fit this paradigm (for example test that
+   check the output of the binary being debugged) and can be skipped by setting
+   ``UNSUPPORTED: lldb-repro`` at the top of the test.
+
 Knows Issues
 ------------
 


        


More information about the lldb-commits mailing list