実現したいこと
単体試験(単体テスト、UnitTest、UT)で、「C1を100%にするためのテストケースの数え方」を知りたい。
カバレッジを取得した際に「C1が100%になれば」それでよいです。
前提
・新人の開発エンジニアです。仕事で、単体テストを担当することになりました。プログラミング経験はほぼゼロです。
・言語はpythonで、テストフレームワーク(pytest)やC1カバレッジの取得方法(pycov)などの準備は事前に済ませています。
・テスト対象のモジュールは40ほどです。ソースを1つ開いたところ、行数が2000行ありました。
単純計算で、2000*40=80000行のソースに対してテストケースを数える必要があるようです。
発生している問題
上司から「C1を100%にしたい。そのためのテスト数はいくつあるか数えて」と言われました。
しかし、目検で80000行すべてのテストケースを数えるとなると、時間がかかりすぎるし、どこかで漏れが出そうです。
また、まわりに単体テスト経験者がおらず、一般的にどのような手法でテストケースを数えているか、聞くことができません。
if文のみで構成されている場合は2パターン×条件数でよいかな?という認識はあります。
しかし、例えば下記のような場合、if文はないけれど、テストケースは戻り値が0か-1の、2つになると思います。
python
1def piyo(foo,bar): 2 ret = 0 3 fuga = "hogehoge" 4 try: 5 subprocess.call(fuga, shell=True) 6 except Exception as e: 7 ret = -1 8 9 return ret
これらのようなテストケースを、すべて目検で拾うことが大変かなと、なにか効率よく数える方法はないかなと模索しているところです。
単体テストで、「C1が100%になるようなテストケースの数え方」について、よい手法を知りたいので、
知見のある方、お知恵を貸していただけませんでしょうか。
一発で済む魔法はないと思うのですが、おすすめのツールやフレームワーク、また経験談などあれば助かります...
正解がないので難しい話だとは思うのですが、よろしくおねがいします。
泥くさく、ひとつずつ数えるしかないのでしょうか?
試したこと
ググって、テストケースの数え方について調べた。(コーディングの話が多くヒットして、実務の話がうまく見つけられなかった)
補足情報(FW/ツールのバージョンなど)
python2.7
IDEはpycharmを使っています
※テスト項目数とテストケースを混同しており、他の投稿で指摘していただいたため、修正して投稿し直しています。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/14 11:47