모듈:변환/테스터/닥

Module

이 모듈에서는 유닛테스트를 실행하여 템플릿 출력을 예상 텍스트와 비교합니다.또한 모듈은 템플릿 확장 결과를 출력할 수 있습니다.

모듈 테스트용인 경우:변환하면 테스터는 간단한 형식의 테스트 입력을 사용하여 많은 테스트를 필요로 하는 다른 템플릿에 유용해야 합니다.

테스트 사례 예시

테스트 결과를 보기 전에 테스트 사례 페이지를 저장할 필요는 없습니다.를 들어 Module:변환/샌드박스/테스트 케이스를 편집하여 테스트를 변경할 수 있습니다.페이지를 편집하는 동안 "" (따옴표 없음)을 "이 템플릿으로 미리 보기 페이지" 아래의 페이지 제목 상자에 Module talk:Convert/sandbox/testcases붙여넣은 다음 "미리보기 표시"를 클릭합니다.

테스트 케이스 토크페이지(모듈 토크 등)Convert/sandbox/testcase)의 내용:

{{#cisco/testcase run_testcase}

테스트 케이스 모듈 페이지(예: Module:변환/샌드박스/테스트 케이스)는 다음을 포함할 수 있습니다.

local tests = [ == [ 테스트할 템플릿은 줄의 시작 부분에 있어야 합니다.템플릿으로 시작하지 않는 행은 무시됩니다.{{caper/caper 1에이커 lk=on}} 1 [[caper] (0.40 )[ arehect ] ) { { / / 11 m2 acer lk = on } 1 [[ squaresquare ( 0 . 00025 ]]s ) { /sandboxsandboxsandbox 0.16 / l2 disp= table } align = " right " 0.16 \ n align = " 0.61 ] ] local p = require ( ' module : )변환/테스터') 페이지.199 = 테스트 결과 p가 반환됩니다.

필요한 경우 테스트에 지정된 템플릿과 다른 템플릿을 사용하여 테스트를 실행할 수 있습니다.예를 들어, 다음과 같이 모듈에서 테스트를 수행합니다.변환/샌드박스/테스트 케이스를 사용하지만 해당 페이지에서 발견된 각 템플릿의 이름을 "로 변경합니다.convert/sandbox2".

{{#parames: parames/parames/testces run_parames 템플릿=parames

포맷

테스트는 여러 줄의 문자열에서 추출됩니다.템플릿으로 시작하지 않는 행은 무시됩니다.처리된 각 행은 템플릿으로 시작하고 그 뒤에 공백이 이어지며 Wikitext가 템플릿 확장으로 생성됩니다.

예상되는 출력은 한 줄에 입력해야 합니다.템플릿이 여러 행을 출력하는 경우 해당 행은 "\n"(2자: 백슬래시)로 결합해야 합니다.n).

템플릿이 같을 필요는 없습니다.예를 들어 다음과 같은 테스트가 동작합니다.

로컬 테스트 = [==[{12 m} 12 m} 12 m(39 & nbsp;ft) {{12 m} 12 m} 12 m} 39 & nbsp;ft} {age 1989 7 23 2003 7 14} 13 {{age in days 2007 5 24 2008 4 23} 335 ==]

결과에서 템플릿의 출력이 예상 텍스트와 정확히 일치하는 경우 상태 열에 "통과"가 표시됩니다.예상 텍스트가 없는 경우 템플릿 출력은 빈 상태로 Actual 열에 표시됩니다.지정된 예상 텍스트가 템플릿 출력과 다를 경우 템플릿 출력은 실제 열에 "실패" 상태로 표시되고 페이지 맨 위에 실패 횟수가 표시됩니다.페이지에서 「실패」를 검색하면, 각각의 문제가 검출됩니다.모든 "실패" 결과 뒤에 nowiki 실제 wikitext 및 예상되는 wikitext 행이 나타납니다.

테스트 지정

테스트 케이스 모듈(위의 와 같이)을 사용하는 경우 테스트텍스트는 다음과 같이 할당됩니다.p.tests실행하기 전에run_tests.

또는 임의의 페이지 또는 임의의 페이지의 임의의 섹션에서 테스트 텍스트를 읽을 수 있습니다.예를 들어 다음 Wikitext를 샌드박스에 입력할 수 있습니다.

== 혼합 테스트 == {{pre> 12m(39ft) {{param/param 0.16/l 2 disp=table} align="right" 0.16\n align="right" 0.61 {age in days 2007 5 24 2008 4 23} 335 --- 다음 줄은 "실패"를 나타내는 데 올바르지 않습니다.{{165 12 m lk=on}} 12 [[m]] (39 [[피트]])다음 행은 예상 텍스트가 제공되지 않은 경우의 결과를 보여 줍니다.{{param/param 1~5 in mm lk=on}} </pre>

위와 같이 테스트를 수행할 수 있습니다.

테스트를 여러 줄 문자열로 지정하는 대신 테이블을 다음 문자열에 할당할 수 있습니다.p.tests다음 테스트 케이스 모듈에 나타나듯이

로컬 테스트 = { -- 각 테스트 항목은 { template, expected }형식입니다. {{template/template 0.16 /l 2 disp=table}}, {align='right' 0.16\n align='right' 0.61'}, {{{n days in 2007 5 2008}, 233},'{module/module 1 - 5 in mm lk=on}}'},} 로컬 p = 필수('모듈:변환/테스터') 페이지.199 = 테스트 결과 p가 반환됩니다.

이 예에서는 위의 "Mixed tests"에서 여러 줄 문자열과 동일한 결과를 보여 줍니다.

임의의 페이지에서 테스트 실행

샌드박스 또는 토크페이지에 다음 중 하나의 Wikitext 행을 입력하면 지정된 위치에 있는 테스트가 실행됩니다.첫 번째 줄에는 "Template talk:예"에서 두 번째 예에서는 "혼합 테스트" 섹션에 있는 해당 페이지의 테스트만 표시합니다.

{{#pairs:pair/pairs run_pairs 페이지=템플릿 토크:예}} {{#param:param/param run_parames 페이지=템플릿 토크:예 섹션=혼합 테스트}

데모를 위해 다음 행을 사용하여 대시 3개로 시작하는 주석을 포함하여 아래 표를 작성합니다.

{{#filename:filename/filename run_filename 페이지=파일:Convert/tester/doc 섹션=테스트 지정 show=all}

2개의 테스트에 실패했습니다. 예상 텍스트가 비어 있기 때문에 1개의 테스트가 무시되었습니다.

템플릿 기대됩니다 다를 경우 실제 상황
{{12m}}개 12미터(39피트) 통과하다
{{caps/caps 0.16/l 2 disp=table} align="오른쪽" 0.16
align="오른쪽" 0.61
style="text-align:right;" 0.16
style="text-align:right;" 0.61
실패하다
(위, 노위키) align="오른쪽" 0.16
align="오른쪽" 0.61
style="text-align:right;" 0.16
style="text-align:right;" 0.61
{{age in days 2007 5 24 2008 4 23}} 335 통과하다
다음 행은 "실패"를 나타내는 데 올바르지 않습니다. Cmnt
{{12m lk=on}}개 12미터(39피트) 12미터(39피트) 실패하다
(위, 노위키) 12 [[m] (39&nbsp;[피트]) 12 [[m]초 (39&nbsp;[피트(단위) 피트])
{{caps/caps 1~5 in mm lk=on}} 1 ~ 5 인치 (25 ~125 mm)

기대한 성과를 내다

기능.make_tests가 기대하는 형식의 테스트를 작성하기 위해 사용할 수 있습니다.run_tests예를 들어 샌드박스에서 다음 중 하나를 미리 보면 지정된 페이지에서 발견된 각 템플릿을 확장한 결과가 표시됩니다.

{{#make/make_make_make_make_make_message=템플릿 토크:예}} {{#make/make_make_make_make_make 페이지=템플릿 토크:예: show=all}

사용시make_tests입력에서 예상되는 결과는 모두 무시됩니다.대신 모듈은 각 템플릿과 실제 출력을 플레인텍스트로 표시합니다.플레인텍스트를 복사하여 테스트케이스 페이지를 만들 수 있습니다.처리할 템플릿을 설정으로 지정할 수 있습니다.p.tests또는 옵션 섹션이 있는 페이지를 지정해 주세요.

한다면 show=all이 포함되어 있는 경우, 결과에는 모든 비직렬 행이 포함됩니다.출력은 복사하여 테스트로 페이지를 대체하여 각 템플릿의 예상 텍스트를 갱신할 수 있지만 템플릿 이외의 행은 변경하지 않습니다.

예시로 다음 행을 사용하여 아래 텍스트를 작성합니다.

{{#make/make_make_make_make_make_message=메시지:Convert / tester / doc section = tests 지정}
{{12m 옮기다}}12미터({{convert/sandbox 0.16/l 2disp=table}}style="text-align:오른쪽."0.16\n style="text-align:오른쪽."0.61{일에{나이 2007년 5242008년 423}}335{{12나 변환하 lk=on}}12[m-LSB-]]s({{convert/sandbox 1-5mm에 lk=on}}.   1–5 -LSB-는 경우인치] (25 ~127 & nbsp; [밀리미터])

show=all 사용

show=all옵션과 함께 사용할 수 있습니다.make_tests그리고run_tests.

사용 예make_tests의 항에서 나타내고 있습니다.

사용. show=all와 함께run_tests그럼 출력 테이블에 코멘트 행을 표시할 수 있습니다.모든 행이 표시되는 것은 아니고, 3개의 대시로 시작하는 행만 표시됩니다.예를 들어, 테스트 케이스에는 다음이 포함될 수 있습니다.

2014년 1월 12일 추가. --- 다음 테스트는 위젯 옵션을 확인합니다.{{widget1 2 widget=on}}...(예상출력)... 

에 의해 작성된 표입니다.run_tests주석 행으로 "The following tests check the widget option."이 표시됩니다만, show=all사용됩니다.주석은 고유한 배경색을 가지지만 상태 열에 "Cmnt"를 표시하므로 검색으로 찾을 수 있습니다.

모듈과 샌드박스 비교

모듈을 표시하면 문서 페이지가 표시됩니다.모듈에 샌드박스가 있는 경우 모듈과 샌드박스를 구분하는 링크와 함께 "에디터는 이 모듈의 샌드박스에서 실험할 수 있습니다"가 문서에 포함됩니다.

테스터 모듈은compare일련의 모듈을 체크하고 각각의 모듈을 샌드박스와 비교할 수 있는 기능입니다.내용이 다른지 아닌지를 나타내는 표가 다른 링크와 함께 표시됩니다.

예를 들어 다음과 같은 Wikitext를 사용할 수 있습니다.

{{#invoke:convert/tester 비교 예/data}}

"Example" 및 "Example/data" 이름에는 콜론이 포함되지 않습니다.:), 「Module:」라고 가정합니다.이 명령어는 모듈을 비교합니다.모듈에서의 예:예/샌드박스모듈:모듈 사용한 예/데이터:예제/데이터/샌드박스.

모듈에서는 페이지 제목 쌍을 정의할 수도 있습니다.p.pairs테스터 모듈을 사용하여 각 제목 쌍에 대한 표를 생성합니다.

편의상 특정 키워드를 정의합니다.키워드가 인식되면 파라미터가 아닌 모듈에서 쌍 목록이 생성됩니다.예를 들어, 다음에서는 "convert" 키워드를 사용하여 모듈과 관련된 페이지 쌍의 목록을 가져옵니다.변환하다.

{{#contrace/contrace convert}

다음 텍스트는 위에서 발생할 수 있는 출력을 보여 주는 예입니다.

디폴트에서는, 각 출력 행의 선두에는 「」가 붙습니다.*글머리 기호 목록을 표시합니다.대체 프레픽스는,prefix파라미터를 지정합니다.예를 들어, 다음은 들여쓰기된 글머리 기호 목록을 제공합니다.

{{#prefix: convert prefix=}:*}}