Example #1
0
 public LoadGenerator(LoadTest loadTest, Type testType, LoadTestContext context, CancellationToken cancellationToken)
 {
     _loadTest = loadTest;
     _testType = testType;
     _context = context;
     _cancellationToken = cancellationToken;
 }
Example #2
0
 public LoadGenerator(LoadTest loadTest, Type testType, LoadTestContext context, CancellationToken cancellationToken)
 {
     _loadTest          = loadTest;
     _testType          = testType;
     _context           = context;
     _cancellationToken = cancellationToken;
 }
Example #3
0
        private LoadGeneratorResult Start(LoadTestContext context)
        {
            var result = new LoadGeneratorResult(starTime: DateTime.UtcNow);

            var testRunResults = new List<TestRunResult>();

            var test = (ITest)Activator.CreateInstance(_testType);

            test.Initialize();

            _loadTest.IncrementTotalThreads();

            context.StartEvent.WaitOne();

            while (!context.QuitEvent.WaitOne(0))
            {
                var testRunResult = new TestRunResult
                {
                    StartTime = DateTime.UtcNow
                };

                try
                {
                    testRunResult.TestResult = test.Execute();
                }
                catch
                {
                    testRunResult.TestResult = TestResult.Failure;
                }
                finally
                {
                    testRunResult.EndTime = DateTime.UtcNow;

                    _loadTest.IncrementTotalIterations();

                    if (testRunResult.TestResult.Failed) //todo: ?
                    {
                        _loadTest.IncrementTotalErrors();
                    }
                }

                testRunResults.Add(testRunResult);
            }

            result.TestRuns = testRunResults;

            result.EndTime = DateTime.UtcNow;

            return result;
        }
Example #4
0
        private LoadGeneratorResult Start(LoadTestContext context)
        {
            var result = new LoadGeneratorResult(starTime: DateTime.UtcNow);

            var testRunResults = new List <TestRunResult>();

            var test = (ITest)Activator.CreateInstance(_testType);

            test.Initialize();

            _loadTest.IncrementTotalThreads();

            context.StartEvent.WaitOne();

            while (!context.QuitEvent.WaitOne(0))
            {
                var testRunResult = new TestRunResult
                {
                    StartTime = DateTime.UtcNow
                };

                try
                {
                    testRunResult.TestResult = test.Execute();
                }
                catch
                {
                    testRunResult.TestResult = TestResult.Failure;
                }
                finally
                {
                    testRunResult.EndTime = DateTime.UtcNow;

                    _loadTest.IncrementTotalIterations();

                    if (testRunResult.TestResult.Failed) //todo: ?
                    {
                        _loadTest.IncrementTotalErrors();
                    }
                }

                testRunResults.Add(testRunResult);
            }

            result.TestRuns = testRunResults;

            result.EndTime = DateTime.UtcNow;

            return(result);
        }