Concordion - Run Command

Lệnh Concordion run có thể được sử dụng để liên kết nhiều thông số kỹ thuật với nhau và hiển thị chúng tại một trang trung tâm. Lệnh này có thể chạy tất cả các thông số kỹ thuật, đồng thời hiển thị nền của liên kết bằng màu xanh lá cây / đỏ / xám nếu thích hợp.

Bây giờ chúng ta sẽ tạo hai thông số kỹ thuật và liên kết chúng với nhau. Chúng tôi sẽ sử dụng lại các thông số kỹ thuật được tạo trong Concordion - Thực hiện trên danh sách và Concordion - Thực thi trên bảng dưới dạng các chương Đặc tả hệ thống và Thông số kỹ thuật máy tính.

Thí dụ

Hãy để chúng tôi có một IDE Eclipse đang hoạt động tại chỗ và làm theo các bước dưới đây để tạo một ứng dụng Concordion -

Bươc Sự miêu tả
1 Tạo một dự án với một tên concordion và tạo ra một gói com.tutorialspoint dướisrc thư mục trong dự án đã tạo.
2 Thêm các thư viện Concordion cần thiết bằng cách sử dụng tùy chọn Thêm JAR bên ngoài như được giải thích trong chương Concordion - Ứng dụng đầu tiên .
3 Tạo Hệ thống lớp Java theo gói com.tutorialspoint .
4 Tạo các lớp Fixture SystemFixture , CalculatorFixture theo gói specs.tutorialspoint .
5 Tạo tệp html Đặc tả System.html , Calculator.html trong gói specs.tutorialspoint .
6 Bước cuối cùng là tạo nội dung của tất cả các tệp Java và tệp đặc tả và chạy ứng dụng như được giải thích bên dưới.

Đây là nội dung của tệp System.java -

package com.tutorialspoint;
import org.concordion.api.MultiValueResult;

public class System { 
   public MultiValueResult split(String userName){  
      MultiValueResult result = new MultiValueResult();
      String[] words = userName.split(" ");   
      result.with("firstName", words[0]).with("lastName", words[1]);       
      return result;
   }
	
   public int sum(int firstNumber, int secondNumber) {
      return firstNumber + secondNumber;
   }
}

Sau đây là nội dung của tệp SystemFixture.java:

package specs.tutorialspoint;

import org.concordion.api.MultiValueResult;
import org.concordion.integration.junit4.ConcordionRunner;
import org.junit.runner.RunWith;
import com.tutorialspoint.System;

@RunWith(ConcordionRunner.class)

public class SystemFixture {
   System system = new System();
   public MultiValueResult split(String userName){
      return system.split(userName);
   }  
}

Sau đây là nội dung của tệp CalculatorFixture.java -

package specs.tutorialspoint;

import org.concordion.integration.junit4.ConcordionRunner;
import org.junit.runner.RunWith;
import com.tutorialspoint.System;

@RunWith(ConcordionRunner.class)

public class CalculatorFixture {
   System system = new System();
   public int sum(int firstNumber, int secondNumber) {
      return system.sum(firstNumber, secondNumber);
   }
}

Sau đây là nội dung của tệp System.html -

<html xmlns:concordion = "http://www.concordion.org/2007/concordion">
   <head>
      <link href = "../concordion.css" rel = "stylesheet" type = "text/css" />
   </head>

   <body>
      <h1>System Specifications</h1>
      <p>We are building specifications for our online 
         order tracking application.</p>
      <p>Following is the requirement to split full name of a 
         logged in user to its constituents by splitting name by whitespace:</p>
		
      <div class = "example">      
         <h3>Example</h3>
			
         <ul>
            <li>The full name <span concordion:execute = "#result = split(#TEXT)">
               Robert De</span> is to be splited as
               <ul>
                  <li><span concordion:assertEquals = "#result.firstName">
                     Robert</span></li>
                  <li><span concordion:assertEquals = "#result.lastName">
                     De</span></li>
               </ul>
            </li>
         
            <li>The full name <span concordion:execute = "#result = split(#TEXT)">
               John Diere</span> is to be splited as
               <ul>
                  <li><span concordion:assertEquals = "#result.firstName">
                     John</span></li>
                  <li><span concordion:assertEquals = "#result.lastName">
                     Diere</span></li>
               </ul>
            </li>
      
         </ul>
      </div>
   
      <a concordion:run = "concordion" href = "Calculator.html">
         Calculator Service Specifications</a>
   </body>

</html>

Sau đây là nội dung của tệp Calculator.html -

<html xmlns:concordion = "http://www.concordion.org/2007/concordion">
   <head>
      <link href = "../concordion.css" rel = "stylesheet" type = "text/css" />
   </head>

   <body>
      <h1>Calculator Specifications</h1>
      <p>We are building online calculator support in our website.</p>
      <p>Following is the requirement to add two numbers:</p>
		
      <div class = "example">
         <h3>Example</h3>
		
         <table>
            <tr>
               <th>First Number</th>
               <th>Second Number</th>
               <th>Sum</th>
            </tr>
            <tr concordion:execute = "#result = sum(#firstNumber, #secondNumber)">
               <td concordion:set = "#firstNumber">2</td>
               <td concordion:set = "#secondNumber">3</td>
               <td concordion:assertEquals = "#result">5</td>
            </tr>
            <tr concordion:execute = "#result = sum(#firstNumber, #secondNumber)">
               <td concordion:set = "#firstNumber">4</td>
               <td concordion:set = "#secondNumber">5</td>
               <td concordion:assertEquals = "#result">9</td>
            </tr>
         </table>
   
      </div>
   </body>

</html>

Khi bạn đã hoàn tất việc tạo tệp nguồn và đặc tả, hãy để chúng tôi chạy ứng dụng dưới dạng Kiểm tra JUnit. Nếu mọi thứ đều ổn với ứng dụng của bạn, thì nó sẽ tạo ra kết quả sau:

C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\concordion\specs\tutorialspoint\System.html
Successes: 2, Failures: 0
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\concordion\specs\tutorialspoint\System.html
Successes: 6, Failures: 0

System.html là kết quả của quá trình chạy thử nghiệm Concordion.

Nhấp vào liên kết Thông số Dịch vụ Máy tính. Bạn sẽ thấy kết quả sau: