fix & add: testcases for refs #885, refs #1031

This commit is contained in:
Ken Sato
2018-03-01 15:41:58 +09:00
parent afcf1a24aa
commit 3432f46d8b
15 changed files with 320 additions and 42 deletions

View File

@@ -21,43 +21,62 @@ McKernelでのptraceのattach/detach操作の基本動作確認9項目
2. テスト項目
CT_001: 通常のattach detach 操作
1. 親プロセスが子プロセスにattach
2. 親プロセスが子プロセスをdetach
3. プロセスが終了
4. 親プロセスがwait()で子プロセス終了を回収
2. 親プロセスがwait()で子プロセスの停止を回収
3. プロセスが子プロセスをdetach
4. 子プロセス終了
5. 親プロセスがwait()で子プロセスの終了を回収
CT_002: tracee(子プロセス)がdetachせずに終了
1. 親プロセスが子プロセスにattach
2. プロセスが終了
3. 親プロセスがwait()で子プロセスの終了を回収
2. プロセスがwait()で子プロセスの停止を回収
3. 親プロセスが子プロセスに再開指示(ptrace_cont)
4. 子プロセスが終了
5. 親プロセスがwait()で子プロセスの終了を回収
CT_003: tracer(親プロセス)がdetachしないまま先に終了
1. 親プロセスが子プロセスにattach
2. 親プロセスが子プロセスに再開指示した直後に終了
3. 子プロセスが終了
2. 親プロセスがwait()で子プロセスの停止を回収
3. 親プロセスが子プロセスに再開指示した直後に終了
4. 子プロセスが終了
CT_004: 複数回のattach -> detach 操作
1. 親プロセスが子プロセスにattach
2. 親プロセスが子プロセスにdetach
3. 再び、親プロセスが子プロセスにattach
4. 親プロセスが子プロセスにdetach
2. 親プロセスがwait()で子プロセスの停止を回収
3. 親プロセスが子プロセスにdetach
4. 再び、親プロセスが子プロセスにattach
5. 親プロセスがwait()で子プロセスの停止を回収
6. 親プロセスが子プロセスにdetach
7. 親プロセスがwait()で子プロセスの終了を回収
CT_005: 不正なpid指定のattach
1. 不正なpid(0, 1, 負数)を指定したattach
2. 自身のpidを指定したattach
1. 不正なpid(0, 1, 負数)を指定したattachが失敗
2. 自身のpidを指定したattachが失敗
CT_006: attach済の子プロセスへのattach①
1. 既にattachしている子プロセスへ再びattach
1. 既にattachしている子プロセスへ再びattachが失敗
CT_007: attach済の子プロセスへのattach②
1. tracemeした子プロセスへattach
1. tracemeした子プロセスへattachが失敗
CT_008: 不正なpid指定のdetach
1. 不正なpid(0, 1, 負数)を指定したdetach
2. attachしていない子プロセスのpidを指定したdetach
1. 不正なpid(0, 1, 負数)を指定したdetachが失敗
2. attachしていない子プロセスのpidを指定したdetachが失敗
3. 自身のpidを指定したattachが失敗
CT_009: detach済の子プロセスへのdetach
1. 既にdetachしていいる子プロセスへ再びdetach
CT_010: 親子関係ではないプロセス間でのattach
1. 親プロセスが2つの子プロセス(tracerプロセス, traceeプロセスとする)をforkする
2. tracerプロセスがtraceeプロセスをattach
3. tracerプロセスがwait()でtraceeプロセスの停止を回収
4. tracerプロセスがtraceeプロセスに再開を指示
5. traceeプロセスが終了する
6. tracerプロセスがtraceeプロセスにdetach
7. tracerプロセスがwait()でtraceeプロセスの終了を回収
8. tracerプロセスが終了
9. 親プロセスがwait()でtracee,tracerプロセスの終了を回収
3. 結果
テストプログラムの実行結果をresult.log に示す。
上記の10項目がPASSしていることを確認した。
上記の11項目がPASSしていることを確認した。