모듈:변환/테스터/닥
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 [피트]) | 12 [[m]초 (39 [피트(단위) 피트]) | |
| {{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} 다음 텍스트는 위에서 발생할 수 있는 출력을 보여 주는 예입니다.
- 모듈: 변환 • 모듈:변환/샌드박스 • 다른(diff)
- 모듈: 변환/데이터 • 모듈:변환/데이터/샌드박스 • 동일 콘텐츠
- 모듈: 변환/텍스트 • 모듈:변환/텍스트/샌드박스 • 다른(diff)
- 모듈: 변환/외부 • 모듈:변환/추가/샌드박스 • 다른 (diff)
디폴트에서는, 각 출력 행의 선두에는 「」가 붙습니다.*글머리 기호 목록을 표시합니다.대체 프레픽스는,prefix파라미터를 지정합니다.예를 들어, 다음은 들여쓰기된 글머리 기호 목록을 제공합니다.
{{#prefix: convert prefix=}:*}}
