Data Flow Testing (๋ฐ์ดํฐ ํ๋ฆ ํ ์คํ ) ์ ์
- Data๊ฐ ์ ์๋๊ณ ์ฌ์ฉ๋ ์์น์ ๋ฐ๋ผ์ Path๋ฅผ ์ ํํ๋ ๊ธฐ๋ฒ
![](https://blog.kakaocdn.net/dn/caRt73/btsdNuOhDbd/WtLVJYkQbktJkYrZkozh3k/img.png)
ํน์ง
- Data Flow Test๋ Data์ ์ํด์ ๋ฐ์ํ๋ ์ค๋ฅ๋ฅผ ํ์ ํ๊ธฐ ์ํด Control Flow Graph๋ฅผ ์ฌ์ฉํ๋ค.
- Path Teating, Branch Teating, Statement Testing ๊ณผ์ ๊ฐญ ์ฐจ์ด๋ฅผ ๋ฉ์ฐ๋ Path ์ ํ ๊ธฐ๋ฒ์ด๋ค.
read(x,y):
z = x + 2;
if (x < y )
w = x + 1;
else
y = y + 1;
print (x,y,w,z)
- ์์ ๊ฐ์ ์ฝ๋๊ฐ ์์ ๋, y์ ํ๋ฆ์ ๋ฐ๋ผ ํ ์คํธ๋ฅผ ์งํํ ์ ์๋ค. (x, z๋ ๊ฐ๋ฅํ๋ค)
Data Flow Test์
Data์ "Define"๊ณผ "Use"๋ฅผ ์ค์ฌ์ผ๋ก ํ ์คํธ์ผ์ด์ค๋ฅผ ๋์ถํ๋ค.
Define Use Testing - DU Testing
- Data Flow Testing ๊ธฐ๋ฒ ์ค ํ๋
- CFG์ ๋ณ์์ ๊ด๋ จํ path๋ฅผ ์ฌ์ฉ
a. ๊ตฌ์ฑ์์
1. ์ ์(Define node) : d, Defined, Created, Initalized
ใด ์ฌ์ฉํ๊ธฐ ์ํด ์ ์ํ๋ ๊ฒ
2. ์ฌ์ฉ(Use node) : u, Used
ใด ๊ณ์ฐ์ ์ฌ์ฉ : c-use ( a=a+1 ์ ๊ฐ์ ๊ณ์ฐ, p-use ์ด์ธ์๋ ๋ชจ๋ c-use)
ใด ๊ฒฐ์ ์ ์ฌ์ฉ : p-use (n!=0๊ณผ ๊ฐ์ ์กฐ๊ฑด๋ฌธ)
b. ์ฌ์ฉํ๋ ๊ธฐ๋ฒ/๋ฐฉ๋ฒ
- All-Edges & All-Nodes : ํ๋ก๊ทธ๋จ์ ๋ชจ๋ edge๊ฐ ํฌํจ๋๋๋ก path๋ฅผ ์ ์ (Branch Test์ ๋น์ท)
- All-Path : ํ๋ก๊ทธ๋จ์ ๋ชจ๋ path ( Path Test์ ๋น์ท)
- All-defs : define ๋ ํ, ์ ์ด๋ ํ ๋ฒ์ ์ฌ์ฉ(c-use, p-use) ๋๋ path
- All-p-use : define๋ ํ, ๊ฐ์ด ๋ณํ์ง ์๊ณ p-use ๋๋ path
- All-c-use : define๋ ํ, ๊ฐ์ด ๋ณํ์ง ์๊ณ c-use ๋๋ path
- All-c-use/Some-p-use : All-c-use๋ฅผ ์ ์ฉ์ํจ ํ, c-use๊ฐ ์กด์ฌํ์ง ์๋ ๋ณ์์ ๋ํด p-use๋ฅผ ์ ์ฉ์ํจ path
- All-p-use/Some-c-use: All-c-use๋ฅผ ์ ์ฉ์ํจ ํ, p-use๊ฐ ์กด์ฌํ์ง ์๋ ๋ณ์์ ๋ํด c-use๋ฅผ ์ ์ฉ์ํจ path
- All-uses : define-> c-use, define-> p-use๋ฅผ ๋ง์กฑํ๋ ๋ชจ๋ path
- All-du-path : ๋ชจ๋ define ๋ ธ๋๋ก๋ถํฐ definition clear path(d, u ์ฌ์ด์ ๋ ๋ค๋ฅธ d๋ฅผ ํฌํจํ์ง ์๋ ๊ฒฝ๋ก)๋ฅผ ๊ฐ์ง๋ ๊ฒฝ์ฐ
c. ์ปค๋ฒ๋ฆฌ์ง ๊ฐ๋ ๋น๊ต
All-du-path > All-uses > All-c-use/Some-p-use > All-p-use/Some-c-use > All-defs > All-p-use (All-c-use)
ํจ๊ป ๊ณต๋ถํด๋ณผ ๋งํ ํ ์คํ ๊ฐ๋
Whith Box Testing ์ ์ด ํ๋ฆ ํ ์คํ
Control Flow Testing ์ ์ด ํ๋ฆ ํ ์คํ ์ด๋? - ํ๋ก๊ทธ๋จ์ ์ ์ด ํ๋ฆ์ ์ด์ฉํ๋ ๋ชจ๋ธ - ๊ตฌ์กฐ์ ํ ์คํ ๊ธฐ๋ฒ์ ์ํ๋ค. - ํ๋ก๊ทธ๋จ ๋ด์ ๋ชจ๋ path๋ฅผ ์ ์ ํ๊ฒ ์ ํํ๋ ๊ฒ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ค. ์ ์ ์กฐ๊ฑด 1
dev-yujin.tistory.com
'SQA > Theory' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
White Box Testing ์ํ ๋ณต์ก๋ (0) | 2023.04.11 |
---|---|
White Box Testing ํํฅ์ ํ ์คํธ์ ์ํฅ์ ํ ์คํธ (0) | 2023.04.08 |
Whith Box Testing ์ ์ด ํ๋ฆ ํ ์คํ (0) | 2023.04.07 |
White Box Testing ํ์ดํธ ๋ฐ์ค์ ๋ธ๋ ๋ฐ์ค (0) | 2023.04.03 |
White Box Testing ์ ์์ ํ์์ฑ (0) | 2023.04.01 |