refresh GC reliability tests (#25622)
authorVladimir Sadov <vsadov@microsoft.com>
Thu, 11 Jul 2019 03:33:58 +0000 (20:33 -0700)
committerGitHub <noreply@github.com>
Thu, 11 Jul 2019 03:33:58 +0000 (20:33 -0700)
* refresh GC reliability tests

* Update stress instructions (PR feedback)

tests/scripts/run-gc-reliability-framework.sh
tests/src/GC/Stress/Framework/ReliabilityFramework.cs
tests/src/GC/Stress/Framework/ReliabilityFramework.csproj
tests/src/GC/Stress/stress_run_readme.txt

index d6b8f03..f83170c 100755 (executable)
@@ -1,7 +1,31 @@
 #!/bin/bash
 
-export CORE_ROOT=`pwd`/bin/tests/Windows_NT.$1.$2/Tests/coreoverlay
-FRAMEWORK_DIR=`pwd`/bin/tests/Windows_NT.$1.$2/GC/Stress/Framework/ReliabilityFramework
+OSName=$(uname -s)
+case $OSName in
+    Darwin)
+        OS=OSX
+        ;;
+
+    FreeBSD)
+        OS=FreeBSD
+        ;;
+
+    Linux)
+        OS=Linux
+        ;;
+
+    NetBSD)
+        OS=NetBSD
+        ;;
+
+    *)
+        echo "Unsupported OS $OSName detected, configuring as if for Linux"
+        OS=Linux
+        ;;
+esac
+
+export CORE_ROOT=`pwd`/bin/tests/$OSName.$1.$2/Tests/Core_Root
+FRAMEWORK_DIR=`pwd`/bin/tests/$OSName.$1.$2/GC/Stress/Framework/ReliabilityFramework
 $CORE_ROOT/corerun $FRAMEWORK_DIR/ReliabilityFramework.exe $FRAMEWORK_DIR/testmix_gc.config
 EXIT_CODE=$?
 if [ $EXIT_CODE -eq 100 ]
index b3eb0e7..197cbc4 100644 (file)
@@ -167,7 +167,7 @@ public class ReliabilityFramework
         foreach (string arg in args)
         {
             rf._logger.WriteToInstrumentationLog(null, LoggingLevels.StartupShutdown, String.Format("Argument: {0}", arg));
-            if (arg[0] == '/' || arg[0] == '-')
+            if (arg[0] == '-')
             {
                 if (String.Compare(arg.Substring(1), "replay", true) == 0)
                 {
@@ -207,14 +207,14 @@ public class ReliabilityFramework
         }
         if (!okToContinue)
         {
-            Console.WriteLine("\r\nWhidbey Host Interface Reliability Harness\r\n");
+            Console.WriteLine("\r\nHost Interface Reliability Harness\r\n");
             Console.WriteLine("Usage: ReliabiltityFramework [options] <test config file>");
             Console.WriteLine("");
             Console.WriteLine("Available options: ");
             Console.WriteLine("");
-            Console.WriteLine(" /replay     -   Replay from log file");
-            Console.WriteLine(" /{0}:<tests>   -       Comma delimited list of tests to run (no spaces)", sTests);
-            Console.WriteLine(" /{0}:<seed>    -       Random Number seed for replays", sSeed);
+            Console.WriteLine(" -replay     -   Replay from log file");
+            Console.WriteLine(" -{0}:<tests>   -       Comma delimited list of tests to run (no spaces)", sTests);
+            Console.WriteLine(" -{0}:<seed>    -       Random Number seed for replays", sSeed);
             rf._logger.WriteToInstrumentationLog(null, LoggingLevels.StartupShutdown, "Not ok to continue.");
 
 #if PROJECTK_BUILD
index 91921ab..c772c9b 100644 (file)
@@ -12,7 +12,7 @@
     <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
     <CLRTestKind>BuildOnly</CLRTestKind>
     <GenerateRunScript>false</GenerateRunScript>
-    <CLRTestPriority>1</CLRTestPriority>
+    <CLRTestPriority>0</CLRTestPriority>
     <DefineConstants>$(DefineConstants);STATIC;PROJECTK_BUILD</DefineConstants>
   </PropertyGroup>
   <!-- Default configurations to help VS understand the configurations -->
index 7a2cf2b..f0efa71 100644 (file)
@@ -18,7 +18,12 @@ The stress framework is built from <REPO_ROOT>\tests\src\GC\Stress\Framework
 
 The tests are built from <REPO_ROOT>\tests\src\GC\Stress\Tests
 
-The config is at <REPO_ROOT>NDP\clr\tests\src\GC\Stress\testmix_gc.config, this will be copied to the output folder of Framework
+The config is at <REPO_ROOT>\tests\src\GC\Stress\testmix_gc.config, this will be copied to the output folder of Framework
+
+The easiest way to build the Framework+Tests is by building all tests - "<REPO_ROOT>\build_test[.bat|.sh]"
+
+Sometimes there is a need (after initial build) to rebuild Framework+Tests. For example when modifying the Framework to add a new scenario or when investigating a failure.
+In such case it is possible to go directly into the the Framework directory and build manually- Ex: "dotnet build -c:debug".
 
 3. Running stress
 
@@ -30,7 +35,7 @@ To run stress:
 
 (or if you copied testmix_gc.config somewhere else you need to tell it so, eg, c:\TestConfigs\testmix_gc.config)
 
-We recommand to run it for 48 hours (see the comments below on maximumExecutionTime in test config for more detail).
+We recommend to run it for 48 hours (see the comments below on maximumExecutionTime in test config for more detail).
 
 4. Test config