Concordion-목록에서 실행

Concordion 실행 명령은 반복되는 방식으로 Concordion 조명기의 작동을 실행하는 데 사용할 수 있습니다. 예를 들어 목록 형태로 여러 예를 사용하여 요구 사항을 설명하려는 경우 유용합니다.

다음 요구 사항을 고려하십시오-

<ul>
   <li>The full name Robert De is to be split as
      <ul>
         <li>Robert</li>
         <li>De</li>
      </ul>
   </li>
	
   <li>The full name John Diere is to be split as
      <ul>
         <li>John</li>
         <li>Diere</li>
      </ul>
   </li>
	
</ul>

이름을 이름과 성으로 분할하는 분할 함수에 대한 사양을 작성하려면 사양은 다음과 같습니다.

<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>

Concordion은 문서를 구문 분석 할 때 특수 변수 #TEXT의 값을 현재 요소의 값으로 "Robert De"로 설정하고이를 split 함수에 전달합니다. 그런 다음 execute 명령을 사용하여 매개 변수를 #TEXT로하여 split () 메서드를 실행하고 결과를 #result 변수로 설정하고 result를 사용하여 firstName 및 lastName 값을 출력으로 인쇄합니다.

작동하는 Eclipse IDE를 준비하고 아래 단계에 따라 Concordion 애플리케이션을 만듭니다.

단계 기술
1 이름이 일치 하는 프로젝트를 만들고 아래에 com.tutorialspoint 패키지를 만듭니다 .src 생성 된 프로젝트의 폴더.
2 Concordion-First Application 장에 설명 된대로 Add External JARs 옵션을 사용하여 필수 Concordion 라이브러리를 추가 합니다.
com.tutorialspoint 패키지 아래에 Java 클래스 시스템을 만듭니다 .
4 specs.tutorialspoint 패키지 아래에 Fixture 클래스 SystemFixture를 만듭니다 .
5 specs.tutorialspoint 패키지 아래에 사양 html System.html을 만듭니다 .
6 마지막 단계는 모든 Java 파일 및 사양 파일의 내용을 만들고 아래 설명 된대로 응용 프로그램을 실행하는 것입니다.

다음은 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;
   }
}

다음은 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);
   }  
}

다음은 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>
   </body>

</html>

소스 및 사양 파일 생성이 완료되면 애플리케이션을 JUnit 테스트로 실행하겠습니다. 응용 프로그램에 문제가 없으면 다음과 같은 결과가 생성됩니다.

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

System.html은 Concordion 테스트 실행의 출력입니다.