191112 単体テストのお話 おしうみなおきさん
by
RPACommunity
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
単体テストのお話 アジアクエスト株式会社 鴛海直輝(おしうみなおき) Twitter: @hilhilyzyan
Slide 2
Slide 2 text
自己紹介 鴛海 直輝(おしうみ なおき) ■本読む ■ストリートダンスする ■ Laravelでwebアプリ作る 2019年4月に新卒で入社し、 UiPathを用いていろいろ経験中 今日はRPALT n回目登壇!! Twitter: @hilhilyzyan
Slide 3
Slide 3 text
イベント主催したりしてます
Slide 4
Slide 4 text
明後日もやります!
Slide 5
Slide 5 text
目次 1. 単体テストってなーに? 2. とりあえずやってみる! Twitter: @hilhilyzyan
Slide 6
Slide 6 text
単体テストってなーに?
Slide 7
Slide 7 text
単体テストとは? 単体テスト(ユニットテストと呼ばれることもあります )は、プログラムを構成する比較的小さな単位(ユニッ ト)が個々の機能を正しく果たしているかどうかを検証 するテストです。 出典: https://www.techmatrix.co.jp/t/quality/unittest.html Twitter: @hilhilyzyan
Slide 8
Slide 8 text
単体テストとは? 通常、関数やメソッドが単体テストの単位(ユニット) となります。 プログラムが全体として正しく動作してい るかを検証する結合テストは、開発の比較的後の段階で QAチームなどによって行なわれることが多いのとは対照 的に、単体テストは、コード作成時などの早い段階で開 発者によって実施されることが多いのが特徴です。 Twitter: @hilhilyzyan 出典: https://www.techmatrix.co.jp/t/quality/unittest.html
Slide 9
Slide 9 text
UiPathの場合は各XAMLのテストかな? 開発時にXAMLを機能ごとにファイル分割をする ↓↓↓ それぞれの機能(XAML)が 正常に動いているかを自動でテストする Twitter: @hilhilyzyan
Slide 10
Slide 10 text
とりあえずやってみる!
Slide 11
Slide 11 text
手順1. UiPath Goからダウンロード Twitter: @hilhilyzyan
Slide 12
Slide 12 text
ファイル構成を見てみる uipath_AutomationTestRobot |-- src |-- config(設定するときはここを見る) |-- lib |-- templates |-- test |-- test_cases_sample
Slide 13
Slide 13 text
Configファイルを見てみる uipath_AutomationTestRobot¥src¥config¥config.xlsx
Slide 14
Slide 14 text
手順②. 設定をする とりあえず何も考えずに、PC内のどこかに このフォルダたちをつくる! (中身は空っぽでOK) Twitter: @hilhilyzyan
Slide 15
Slide 15 text
手順②. 設定をする uipath_AutomationTestRobot¥src¥config¥config.xlsx に先程作成したフォルダのパスをいれる
Slide 16
Slide 16 text
手順3. テストしたいワークフローを用意 今回は 税抜金額をいれると 税込金額を計算する ワークフローを 作りました。 「100」 といれると 「110」が 返ってきます このXAMLはPC内のどこにあってもOK
Slide 17
Slide 17 text
手順4.テストケースを自動生成 uipath_AutomationTestRobot¥src¥Main.xaml 実行! Twitter: @hilhilyzyan
Slide 18
Slide 18 text
手順4.テストケースを自動生成 ポップアップが出てくるので、 3番目を選択! ちなみに ・1番目はすべてのテストケースをテストする ・2番目は一部のテストケースをテストする ・3番目はテストケースを自動生成する
Slide 19
Slide 19 text
手順4.テストケースを自動生成 どのフォルダーのテストケースを自動生成しますか? って出てくるので一旦OKを押す Twitter: @hilhilyzyan
Slide 20
Slide 20 text
手順4.テストケースを自動生成 先程用意した「消費税計算」のフォルダーを選択 Twitter: @hilhilyzyan
Slide 21
Slide 21 text
手順4.テストケースを自動生成 テストケースが自動生成されました!
Slide 22
Slide 22 text
手順4. テストケースを自動生成 中身はこんな感じです Twitter: @hilhilyzyan
Slide 23
Slide 23 text
手順5. テストケースを修正 テストケースをコピーしてきます
Slide 24
Slide 24 text
手順5. テストケースを修正 コピーしたテストケースに情報を入力! Twitter: @hilhilyzyan
Slide 25
Slide 25 text
手順6. テストを実行! uipath_AutomationTestRobot¥src¥Main.xaml 実行! Twitter: @hilhilyzyan
Slide 26
Slide 26 text
手順6. テストを実行! ポップアップが出てくるので、 1番目を選択! ちなみに ・1番目はすべてのテストケースをテストする ・2番目は一部のテストケースをテストする ・3番目はテストケースを自動生成する
Slide 27
Slide 27 text
手順7. 実行結果を確認
Slide 28
Slide 28 text
手順7. 実行結果を確認
Slide 29
Slide 29 text
この場合はどうなの!?
Slide 30
Slide 30 text
リスト型が引数のoutで出る場合 {“りんご”, “ごりら”, “らっぱ”}のように書けば大丈夫! Twitter: @hilhilyzyan
Slide 31
Slide 31 text
配列型が引数のoutで出る場合 [“りんご”, “ごりら”, “らっぱ”]のように書けば大丈夫! out_配列型 Twitter: @hilhilyzyan
Slide 32
Slide 32 text
辞書型の場合 {“key1":“value",“key2":“value2"}のように書けば大丈夫! Twitter: @hilhilyzyan
Slide 33
Slide 33 text
データテーブルの場合 エラーが出て、 結局治りませんでした。 ので、調査できませんでした…! Twitter: @hilhilyzyan
Slide 34
Slide 34 text
単体テストの向き不向き
Slide 35
Slide 35 text
単体テストに向いているもの • 引数に特定の値をいれると必ず決まったものが返って くる(消費税計算など) これだけ! Twitter: @hilhilyzyan
Slide 36
Slide 36 text
テストの自動化をする意味 ・ミスに気づける! (例:Bのワークフロー開発で共通部品を一部修正したが、 逆にそのせいでAのワークフローで不具合が生じた) ・テストに当てていたリソースを別な開発に当てること ができる (そもそも、みなさんテストやってます…?) ・テストしやすいようにワークフローを開発する!とい う観点で開発すると、良いワークフローができそう。 ※全てのXAMLのテストをすることは多分無理です