Exemplo n.º 1
0
        private void buttonStart_Click(object sender, EventArgs e)
        {
            textBoxLog.Text = "";
            ServiceInfo serviceInfo = new ServiceInfo(textBoxAddress.Text, Convert.ToInt16(textBoxPort.Text), textBoxUser.Text, textBoxPassword.Text, "/");
            TestLog     testLog     = new TestLog();

            if (!checkBoxCloseConnection.Checked)
            {
                SoapClient.OpenConnection(serviceInfo);
            }
            foreach (Test test in m_testSuit)
            {
                TestResult testResult = test.Run(serviceInfo, checkBoxCloseConnection.Checked);
                testLog.AddTestResult(testResult);
                textBoxLog.Text = textBoxLog.Text + testResult.MessageForShortLog + "\r\n";
                textBoxLog.Refresh();
                System.Threading.Thread.Sleep(50);
            }
            if (!checkBoxCloseConnection.Checked)
            {
                SoapClient.CloseConnection();
            }

            testLog.SaveAsExcel(textBoxLogFile.Text + m_testSuit.XMLDocument.SelectSingleNode("TestSuit/Info/ReportName").InnerText);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Run test step
        /// </summary>
        /// <param name="step">Step information</param>
        /// <param name="serviceInfo">Host information</param>
        /// <param name="CloseConnection">Do we need close connection after each request (true recomended)</param>
        /// <returns>Test step result</returns>
        private TestStepResult RunStep(XmlNode step, ServiceInfo serviceInfo, bool CloseConnection)
        {
            TestStepResult testStepResult = new TestStepResult();

            testStepResult.Result          = false;
            testStepResult.StepId          = step.Attributes.GetNamedItem("id").InnerText;
            testStepResult.StepDescription = step.PreviousSibling.InnerText;

            string resultSoapMessage = "";
            string resultCompareMessage;

            string pathToRequestFile          = m_pathToTests + step.Attributes.GetNamedItem("fileRequest").InnerText;
            string pathToResponseFile         = m_pathToTests + step.Attributes.GetNamedItem("fileAnswer").InnerText;
            string pathToResponseFileReal     = m_pathToTestsResult + this.TestId + "_" + testStepResult.StepId + "_response.xml";
            string pathToResponseFileRealFull = m_pathToTestsResult + this.TestId + "_" + testStepResult.StepId + "_response_full.txt";
            string pathToCompareFile          = m_pathToTestsResult + this.TestId + "_" + testStepResult.StepId + "_compare.htm";

            testStepResult.PathToRequestFile = pathToRequestFile;

            //Send request and get answer
            double time = 0;

            if (CloseConnection)
            {
                try
                {
                    SoapClient.OpenConnection(serviceInfo);
                    testStepResult.Result = SoapClient.SendSoapRequest(pathToRequestFile, pathToResponseFileReal, pathToResponseFileRealFull, serviceInfo, out resultSoapMessage, out time, CloseConnection);
                }
                catch (Exception e)
                {
                    resultSoapMessage     = e.Message;
                    testStepResult.Result = false;
                }
                finally
                {
                    SoapClient.CloseConnection();
                }
            }
            else
            {
                testStepResult.Result = SoapClient.SendSoapRequest(pathToRequestFile, pathToResponseFileReal, pathToResponseFileRealFull, serviceInfo, out resultSoapMessage, out time, CloseConnection);
            }
            testStepResult.Time = time;

            if (testStepResult.Result)
            {
                testStepResult.PathToRealResponseFile     = pathToResponseFileReal;
                testStepResult.PathToRealResponseFileFull = pathToResponseFileRealFull;

                //Compare result to ethalon
                testStepResult.Result  = CompareResponse(pathToResponseFile, pathToResponseFileReal, out resultCompareMessage, ref pathToCompareFile);
                testStepResult.Message = resultCompareMessage;
                if (!testStepResult.Result)
                {
                    if (System.IO.File.Exists(pathToCompareFile))
                    {
                        testStepResult.PathToCompareFile = pathToCompareFile;
                    }
                }
            }
            else
            {
                testStepResult.Message = resultSoapMessage;
            }

            return(testStepResult);
        }