Ejemplo n.º 1
0
 /// <summary>
 /// 中断测试
 /// </summary>
 /// <returns></returns>
 public bool StopTest()
 {
     if (ServerTestInstance != null)
     {
         return(ServerTestInstance.Stop());
     }
     else
     {
         return(false);
     }
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 开始测试
 /// </summary>
 /// <param name="testName"></param>
 /// <returns></returns>
 public bool StartTest(string testName)
 {
     try
     {
         //判断是否存在正在运行中的测试
         lock (IsRunningTestLock)
         {
             if (!IsRunningTest)
             {
                 IsRunningTest = true;
             }
             else
             {
                 return(false);
             }
         }
         //寻找是否有测试用例
         if (!Tests.Keys.Contains(testName))
         {
             throw new Exception("Cannot find test named " + testName);
         }
         //加载
         var testInstance = Tests[testName].Load();
         ServerTestInstance = new ServerTestInstance(testInstance, testName, MessageContext);
         ServerTestInstance.CompleteEvent += (object e) =>
         {
             lock (IsRunningTestLock)
             {
                 IsRunningTest = false;
             }
             MessageContext.Info("测试已经结束");
             MessageContext.SendEvent("TestComplete", new string[] { });
         };
         Thread t = new Thread(new ThreadStart(ServerTestInstance.Run));
         t.Start();
         return(true);
     }
     catch (Exception ex)
     {
         lock (IsRunningTestLock)
         {
             IsRunningTest = false;
         }
         LogManger.WriteError("Start test failed:" + ex.ToString());
         return(false);
     }
 }