gen doc for functional test
This commit is contained in:
parent
918a4eeb52
commit
2d393515c4
286
src/testing.md
286
src/testing.md
@ -74,262 +74,36 @@ setting: defered register ... ok (16ms)
|
||||
test result: ok. 35 passed (15 steps); 0 failed; 0 ignored; 0 measured; 0 filtered out (2s)
|
||||
```
|
||||
|
||||
|
||||
## 6.2 기능 테스트(Functional Test)
|
||||
|
||||
### Chunk
|
||||
<% const keys = Array.from(it.table.keys()); %>
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>Content</th>
|
||||
<th>Procedure</th>
|
||||
<th>Test Data</th>
|
||||
<th>P/F</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>1</td>
|
||||
<td>Focus/Unfocus</td>
|
||||
<td>1. 청크를 클릭한다.</td>
|
||||
<td></td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2</td>
|
||||
<td>remove</td>
|
||||
<td>1. 청크를 삭제하는 버튼을 클릭한다.</td>
|
||||
<td></td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>3-1</td>
|
||||
<td>render - markdown</td>
|
||||
<td>1. 마크다운 청크 렌더링을 확인한다.</td>
|
||||
<td> # 제목 </td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>3-2</td>
|
||||
<td>render - latex</td>
|
||||
<td>1. LaTex 청크 렌더링을 확인한다.</td>
|
||||
<td> sum^n_{n=0}n = \frac{n(n+1)}2$$ </td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>3-3</td>
|
||||
<td>render - link</td>
|
||||
<td>1. Image 청크 렌더링을 확인한다.</td>
|
||||
<td>http://picsum.photos</td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>4</td>
|
||||
<td>previews</td>
|
||||
<td>1. Katex 청크의 미리보기를 본다.</td>
|
||||
<td> sum^n_{n=0}n = \frac{n(n+1)}2$$ </td>
|
||||
<td>F</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>10</td>
|
||||
<td>autocomplete</td>
|
||||
<td>1. <kbd>Ctrl+Space</kbd>를 눌러 자동완성을 시도한다.</td>
|
||||
<td></td>
|
||||
<td>F</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>11</td>
|
||||
<td>swap positions</td>
|
||||
<td>1. 청크의 위치를 바꾼다.</td>
|
||||
<td></td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>27-1</td>
|
||||
<td>edit</td>
|
||||
<td>1. 청크를 수정한다.</td>
|
||||
<td></td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>27-2</td>
|
||||
<td>edit chunk conflict</td>
|
||||
<td>1. 청크를 수정모드에 들어간다.</td>
|
||||
<td></td>
|
||||
<td>F</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
### Document
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>Content</th>
|
||||
<th>Procedure</th>
|
||||
<th>Test Data</th>
|
||||
<th>P/F</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>5</td>
|
||||
<td>view Chunk</td>
|
||||
<td>1. 문서를 열어 청크가 렌더링되는지 본다.</td>
|
||||
<td>test.syd</td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>7</td>
|
||||
<td>add/delete tag</td>
|
||||
<td>1. 문서에 태그를 추가한다.<br>2. 문서에 태그를 삭제한다.</td>
|
||||
<td>A</td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>8</td>
|
||||
<td>Drag And Drop Upload,</td>
|
||||
<td>1. 텍스트를 드래그한다.</td>
|
||||
<td></td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
### File
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>Content</th>
|
||||
<th>Procedure</th>
|
||||
<th>Test Data</th>
|
||||
<th>P/F</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>14</td>
|
||||
<td>create/delete/rename file</td>
|
||||
<td>1. 파일을 만든다.</td>
|
||||
<td>test.txt</td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>15</td>
|
||||
<td>upload/download files</td>
|
||||
<td>1. 파일을 업로드한다.</td>
|
||||
<td>test.txt</td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>18</td>
|
||||
<td>export document</td>
|
||||
<td>1. export 버튼을 누른다.</td>
|
||||
<td></td>
|
||||
<td>F</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
### Search
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>Content</th>
|
||||
<th>Procedure</th>
|
||||
<th>Test Data</th>
|
||||
<th>P/F</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>16</td>
|
||||
<td>Document Search</td>
|
||||
<td>1. 검색버튼을 눌러 검색을 한다.</td>
|
||||
<td>chunk</td>
|
||||
<td>F</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
### Stash
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>Content</th>
|
||||
<th>Procedure</th>
|
||||
<th>Test Data</th>
|
||||
<th>P/F</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>17</td>
|
||||
<td>render</td>
|
||||
<td>1. 스태시가 그려지는지 확인한다</td>
|
||||
<td></td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>19</td>
|
||||
<td>add</td>
|
||||
<td>1. 청크를 추가한다</td>
|
||||
<td></td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>20</td>
|
||||
<td>remove</td>
|
||||
<td>1. 청크를 삭제한다</td>
|
||||
<td></td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>21</td>
|
||||
<td>Drag and Drop to Document</td>
|
||||
<td>1. 청크로부터 문서로 청크를 옮긴다.</td>
|
||||
<td></td>
|
||||
<td>P</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
### Management
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>Content</th>
|
||||
<th>Procedure</th>
|
||||
<th>Test Data</th>
|
||||
<th>P/F</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>22</td>
|
||||
<td>Login</td>
|
||||
<td>1. 비밀번호를 입력한다.</td>
|
||||
<td>admin</td>
|
||||
<td>F</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>24</td>
|
||||
<td>Localization</td>
|
||||
<td>1. 다른언어를 지원하는지 언어를 바꿔 확인한다</td>
|
||||
<td></td>
|
||||
<td>F</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<% keys.forEach(c=>{
|
||||
const issues = it.table.get(c);
|
||||
const ts = issues.map(x=> it.testcases.filter(y=>y.id==x.number)).flat();
|
||||
if(ts?.length == 0) return; %>
|
||||
<%~`\n\n### ${c}\n\n`%>
|
||||
<%~"<table>"%>
|
||||
<%~"<thead>"%>
|
||||
<%~"<tr>"%>
|
||||
<%~"<th>ID</th>"%>
|
||||
<%~"<th>Content</th>"%>
|
||||
<%~"<th>Procedure</th>"%>
|
||||
<%~"<th>Test Data</th>"%>
|
||||
<%~"<th>P/F</th>"%>
|
||||
<%~"</tr>"%>
|
||||
<%~"</thead>"%>
|
||||
<%~"<tbody>"%>
|
||||
<% ts.forEach((y,i)=>{
|
||||
const id = y.subId ? `${y.id}-${y.subId}` : y.id;%>
|
||||
<%~"<tr>"%>
|
||||
<%~`<td>${id}</td>`%>
|
||||
<%~`<td>${y.content}</td>`%>
|
||||
<%~`<td>${y.procedure}</td>`%>
|
||||
<%~`<td>${y.testData ?? ""}</td>`%>
|
||||
<%~`<td>${y.pass ? "P" : "F"}</td>`%>
|
||||
<%~"</tr>"%>
|
||||
<%});%>
|
||||
<%~"</tbody>"%>
|
||||
<%~"</table>"%>
|
||||
<% });%>
|
@ -4,6 +4,20 @@ import { WriterHandler } from "https://deno.land/std@0.143.0/log/handlers.ts";
|
||||
import * as Eta from "https://deno.land/x/eta@v1.12.3/mod.ts";
|
||||
import { Issue } from "./githubType.ts";
|
||||
|
||||
import testcaseData from "./testcases.json" assert { type: "json"};
|
||||
|
||||
type Testcase = {
|
||||
id: number,
|
||||
subId: number | null,
|
||||
content: string,
|
||||
procedure: string,
|
||||
testData: string| null,
|
||||
expected: string,
|
||||
actual: string,
|
||||
pass: boolean
|
||||
}
|
||||
const testcases = testcaseData as Testcase[];
|
||||
|
||||
class StderrHandler extends WriterHandler {
|
||||
protected _writer: Deno.Writer;
|
||||
#encoder: TextEncoder;
|
||||
@ -111,6 +125,7 @@ async function main(args: string[]) {
|
||||
table: table,
|
||||
gitHash: gitHash,
|
||||
toHeadId: toHeadId,
|
||||
testcases: testcases
|
||||
}) as string;
|
||||
}
|
||||
})
|
||||
|
Loading…
Reference in New Issue
Block a user