示例#1
0
        protected override TestActionResultItem[] RunImplementation(RunTestSubOptions options)
        {
            Uri[] serviceAddressList = GetServers(options);
            var   performanceTester  = new PerfomanceTester(serviceAddressList, Logger, options.Parallelism);

            /*
             * performanceTester.TestStartManyGames(options.RequestsCount, RandomString(15));
             * Logger.Info("Press any key to close...");
             * Console.ReadKey();
             *
             * Array.ForEach(new int[] { 10, 50, 100, 500, 1000, 5000, 10000, 50000 }, i =>
             * {
             *  Logger.Info("Testing with {0} accounts", i);
             *  Logger.Info("Test: Register accounts");
             *  performanceTester.TestPerformanceRegisterManyAccounts(i, RandomString(15), false);
             *  Logger.Info("Test: Get game data");
             *  performanceTester.TestGetGameData(i, RandomString(15), false);
             *  Logger.Info("Test: Perform step");
             *  performanceTester.TestPerformStepAction(i, RandomString(15), false);
             *
             *  Logger.Info("Test: Register accounts in parallel");
             *  performanceTester.TestPerformanceRegisterManyAccounts(i, RandomString(15), true);
             *  Logger.Info("Test: Get game data in parallel");
             *  performanceTester.TestGetGameData(i, RandomString(15), true);
             *
             *  Logger.Info("Test: Perform step in parallel");
             *  performanceTester.TestPerformStepAction(i, RandomString(15), true);
             *  Logger.Info("\n");
             * });
             * Logger.Info("Press any key to close...");
             * Console.ReadKey();*/
            return(null);
        }
示例#2
0
        protected override TestActionResultItem[] RunImplementation(RunTestSubOptions options)
        {
            Uri[] serviceAddressList = GetServers(options);

            var performanceTester      = new PerfomanceTester(serviceAddressList, Logger, options.Parallelism);
            var echoPerformanceResults = performanceTester.TestEcho(options.RequestsCount, RandomString(15), options.Concurrent);

            return(new[] { GetTestActionResultItem("Test echo", echoPerformanceResults.Item1, options.RequestsCount) });
        }
示例#3
0
        public TestResultInfo Run(RunTestSubOptions options)
        {
            if (!Directory.Exists(GetSaveFilePath()))
            {
                Directory.CreateDirectory(GetSaveFilePath());
            }

            var res = new TestResultInfo()
            {
                TestName          = Name,
                TestActionResults = RunImplementation(options)
            };

            SaveResultsToJson(res);
            return(res);
        }
示例#4
0
 protected Uri[] GetServers(RunTestSubOptions options)
 {
     return(options.ServersList != null && options.ServersList.Any()
         ? options.ServersList.Select(_ => new Uri("http://" + _ + ":" + options.Port)).ToArray()
         : GetServers().Select(_ => new Uri("http://" + _ + ":" + options.Port)).ToArray());
 }
示例#5
0
 protected abstract TestActionResultItem[] RunImplementation(RunTestSubOptions options);