ソフトウェアテスト
[10] リファクタリング演演
習
Software Testing
[10] Refactoring Exercise & Seminar
あまん ひろひさ ひろひさ
阿萬 裕久 裕久( AMAN
Hirohisa )
(C) 2007-2022 Hirohisa AMAN
1
演習の目的目的
プログ演ラムのの目的リファクタリング演を行い,分行い,分い,分分
かりやすく書くことの重要性を体験・学習書くことの重要性を体験・学習く書くことの重要性を体験・学習ことの目的重要性を体験・学習を行い,分体験・学習
する
主な内容な内容内容
インデント,分変数名,分関数名が整理されてい整理されていされてい
な内容い分かりにく書くことの重要性を体験・学習いプログ演ラムのの目的改善
長いい整理されていされていな内容いプログ演ラムのの目的改善
リファクタリング演とともに回帰テストを実施テストを行い,分実施
(C) 2007-2022 Hirohisa AMAN
2
演習の目的内容
演習は1人で行うで行う行い,分うか,分または,分
2人で行うで行う協力してペアプログラミングしてペアプログ演ラミング演を行い,分行い,分ってもよい
(どちらの目的スタイルでもよい)で行うもよい)
課題1
インデント,分変数名,分関数名が整理されてい全く整理されていく書くことの重要性を体験・学習整理されていされてい
な内容いプログ演ラムのを行い,分リファクタリング演する
ただし,分回帰テストを実施テストも一緒に行うに行い,分う
課題2
与えられたプログラムをえられたプログ演ラムのを行い,分リファクタリング演する
ただし,分回帰テストを実施テストも一緒に行うに行い,分う
(C) 2007-2022 Hirohisa AMAN
3
課題1 ( 1/2 )
Teams から
ダウンロードせせ
よ
【対象プログラム】 プログ演ラムの】 sample1001.c
この目的プログ演ラムのは整数の目的並べ替えべ替え替ええを行い,分行い,分うも
の目的とな内容っているが整理されてい,分書くことの重要性を体験・学習き方が悪い方が悪いが整理されてい悪いいために他
人で行うに
は理されてい解できない内容であるで行うき方が悪いな内容い内容で行うある
まず,分仕様書くことの重要性を体験・学習 spec1001.pdf を行い,分見て,て,分
テストケースを行い,分作り,テストを行いなさいり,分テストを行い,分行い,分いな内容さい
内容は test1001.xlsx
に書くことの重要性を体験・学習き方が悪いな内容さい( 5 個以上は考えること)は考えること)えること)
(C) 2007-2022 Hirohisa AMAN
4
課題1 ( 2/2 )
以下の点に注意して の目的点に注意して に注意して して sample1001.c の目的
リファクタリング演を行い,分行い,分いな内容さい
インデント
変数の目的名前
関数の目的名前
必要に応じてじて
コメント文を追加を行い,分追加
するの目的もよい
そして,分自分が整理されてい用意して したテストケースを行い,分
使ってってテストを行い,分行い,分い( test1001.xlsx に
記録),分リファクタリング演した後でも正しで行うも正しし
く書くことの重要性を体験・学習動作り,テストを行いなさいすることを行い,分確認しなさい(しな内容さい(これを行い,分回
帰テストを実施テストという)
(C) 2007-2022 Hirohisa AMAN
5
課題 1 の目的提出
Teams から
sample1001.c と
test1001.xlsx
を行い,分提出しな内容さい
もしも2人で行う組でペアプログラミングで行うペアプログ演ラミング演
を行い,分行い,分った場合は,2人とも同じものは,分2人で行うとも同じものじもの目的
を行い,分提出しな内容さい
[10] Exercise-1
提出〆切:本日 (May 9) May 9) )
15:00 (ベトナムの時間)
(C) 2007-2022 Hirohisa AMAN
6
課題2 ( 1/2 )
Teams から
ダウンロードせせ
よ
【対象プログラム】 プログ演ラムの】 sample1002.c
この目的プログ演ラムのは2進数と10進数の変換進数の目的変換
を行い,分
行い,分うもの目的とな内容っているが整理されてい書くことの重要性を体験・学習き方が悪い方が悪いに悪いいとこ
ろ
が整理されていある
まず,分仕様書くことの重要性を体験・学習 spec1002.pdf を行い,分見て,て,分
テストケースを行い,分作り,テストを行いなさいり,分テストを行い,分行い,分いな内容さい
内容は test1002.xlsx
(C) 2007-2022 Hirohisa AMAN
7
課題 2 ( 2/2 )
以下の点に注意して の目的点に注意して に注意して して sample1002.c の目的
リファクタリング演を行い,分行い,分いな内容さい
main 関数の目的内容を行い,分関数へ分割する分割するする
必要に応じてじて
変数名を行い,分意して 味のあるものにするの目的あるもの目的にする
コメント文を追加を行い,分追加
するの目的もよい
ハードせコーディング演を行い,分マクロへ分割する変える
そして,分自分が整理されてい用意して したテストケースを行い,分
使ってってテストを行い,分行い,分い( test1002.xlsx に
記録),分リファクタリング演した後でも正しで行うも正しし
く書くことの重要性を体験・学習動作り,テストを行いなさいすることを行い,分確認しなさい(しな内容さい
(C) 2007-2022 Hirohisa AMAN
8
課題 2 の目的提出
Teams から
sample1002.c と
test1002.xlsx
を行い,分提出しな内容さい
もしも2人で行う組でペアプログラミングで行うペアプログ演ラミング演
を行い,分行い,分った場合は,2人とも同じものは,分2人で行うとも同じものじもの目的
を行い,分提出しな内容さい
[10] Exercise-2
提出〆切: May 16,
15:00 (ベトナムの時間)
(C) 2007-2022 Hirohisa AMAN
9
Survey に答えなさいえな内容さい
今回の目的演習で行うは1人で行うで行うやってもよいし,分
2人で行う組でペアプログラミングで行うペアプログ演ラミング演を行い,分やってもよ
い
みな内容さん ひろひさが整理されていどちらを行い,分選んだのかを知りたいん ひろひさだの目的かを行い,分知りたいりたい
の目的で行う,分最初に に Survey に答えなさいえてく書くことの重要性を体験・学習ださい
[10] Survey (you must answer first)
(C) 2007-2022 Hirohisa AMAN
10