Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
UiPathの単体テストのお話
Search
n-oshiumi
November 12, 2019
Technology
0
760
UiPathの単体テストのお話
n-oshiumi
November 12, 2019
Tweet
Share
More Decks by n-oshiumi
See All by n-oshiumi
疑問・知識・経験をもっとオープンに
oshiumi
0
760
最近なーんとなく考えていること。○○vs○○
oshiumi
0
280
AmazonTextractの信頼スコアはどれくらい信頼できるのか
oshiumi
0
720
Other Decks in Technology
See All in Technology
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
110
Google Cloud Next '24でブログを10本書いた方法と勉強会を沸かせた方法
yasumuusan
0
260
推しは推せるときに推せ! プロダクトにフィードバックしていこう
nakasho
0
250
「手動オペレーションに定評がある」と言われた私が心がけていること / phpcon_odawara2024
blue_goheimochi
2
370
コンテナセキュリティの基本と脅威への対策
kyohmizu
3
740
20240416_devopsdaystokyo
kzkmaeda
1
210
DevOpsメトリクスとアウトカムの接続にトライ!開発プロセスを通して計測できるメトリクスの活用方法
ham0215
2
230
SIEMを用いて、セキュリティログ分析の可視化と分析を実現し、PDCAサイクルを回してみた
coconala_engineer
0
270
ServiceNow Knowledge 24の歩き方 EYストラテジー・アンド・コンサルティング
manarobot
0
170
JSON攻略法.pdf
miyakemito
8
4.6k
「スニダン」開発組織の構造に込めた意図 ~組織作りはパッションや政治ではない!~
rinchsan
3
480
On Your Data を超えていく!
hirotomotaguchi
2
630
Featured
See All Featured
Navigating Team Friction
lara
177
13k
Unsuck your backbone
ammeep
663
57k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
18
1.7k
GraphQLとの向き合い方2022年版
quramy
31
12k
Reflections from 52 weeks, 52 projects
jeffersonlam
344
19k
[RailsConf 2023] Rails as a piece of cake
palkan
22
3.9k
Debugging Ruby Performance
tmm1
70
11k
Side Projects
sachag
451
41k
Designing with Data
zakiwarfel
95
4.8k
Thoughts on Productivity
jonyablonski
57
3.8k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
60
14k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Transcript
単体テストのお話 アジアクエスト株式会社 鴛海直輝(おしうみなおき) Twitter: @hilhilyzyan
自己紹介 鴛海 直輝(おしうみ なおき) ▪本読む ▪ストリートダンスする ▪ Laravelでwebアプリ作る 2019年4月に新卒で入社し、 UiPathを用いていろいろ経験中
今日はRPALT n回目登壇!! Twitter: @hilhilyzyan
イベント主催したりしてます
明後日もやります!
目次 1. 単体テストってなーに? 2. とりあえずやってみる! Twitter: @hilhilyzyan
単体テストってなーに?
単体テストとは? 単体テスト(ユニットテストと呼ばれることもあります )は、プログラムを構成する比較的小さな単位(ユニッ ト)が個々の機能を正しく果たしているかどうかを検証 するテストです。 出典: https://www.techmatrix.co.jp/t/quality/unittest.html Twitter: @hilhilyzyan
単体テストとは? 通常、関数やメソッドが単体テストの単位(ユニット) となります。 プログラムが全体として正しく動作してい るかを検証する結合テストは、開発の比較的後の段階で QAチームなどによって行なわれることが多いのとは対照 的に、単体テストは、コード作成時などの早い段階で開 発者によって実施されることが多いのが特徴です。 Twitter: @hilhilyzyan
出典: https://www.techmatrix.co.jp/t/quality/unittest.html
UiPathの場合は各XAMLのテストかな? 開発時にXAMLを機能ごとにファイル分割をする ↓↓↓ それぞれの機能(XAML)が 正常に動いているかを自動でテストする Twitter: @hilhilyzyan
とりあえずやってみる!
手順1. UiPath Goからダウンロード Twitter: @hilhilyzyan
ファイル構成を見てみる uipath_AutomationTestRobot |-- src |-- config(設定するときはここを見る) |-- lib |-- templates
|-- test |-- test_cases_sample
Configファイルを見てみる uipath_AutomationTestRobot¥src¥config¥config.xlsx
手順②. 設定をする とりあえず何も考えずに、PC内のどこかに このフォルダたちをつくる! (中身は空っぽでOK) Twitter: @hilhilyzyan
手順②. 設定をする uipath_AutomationTestRobot¥src¥config¥config.xlsx に先程作成したフォルダのパスをいれる
手順3. テストしたいワークフローを用意 今回は 税抜金額をいれると 税込金額を計算する ワークフローを 作りました。 「100」 といれると 「110」が
返ってきます このXAMLはPC内のどこにあってもOK
手順4.テストケースを自動生成 uipath_AutomationTestRobot¥src¥Main.xaml 実行! Twitter: @hilhilyzyan
手順4.テストケースを自動生成 ポップアップが出てくるので、 3番目を選択! ちなみに ・1番目はすべてのテストケースをテストする ・2番目は一部のテストケースをテストする ・3番目はテストケースを自動生成する
手順4.テストケースを自動生成 どのフォルダーのテストケースを自動生成しますか? って出てくるので一旦OKを押す Twitter: @hilhilyzyan
手順4.テストケースを自動生成 先程用意した「消費税計算」のフォルダーを選択 Twitter: @hilhilyzyan
手順4.テストケースを自動生成 テストケースが自動生成されました!
手順4. テストケースを自動生成 中身はこんな感じです Twitter: @hilhilyzyan
手順5. テストケースを修正 テストケースをコピーしてきます
手順5. テストケースを修正 コピーしたテストケースに情報を入力! Twitter: @hilhilyzyan
手順6. テストを実行! uipath_AutomationTestRobot¥src¥Main.xaml 実行! Twitter: @hilhilyzyan
手順6. テストを実行! ポップアップが出てくるので、 1番目を選択! ちなみに ・1番目はすべてのテストケースをテストする ・2番目は一部のテストケースをテストする ・3番目はテストケースを自動生成する
手順7. 実行結果を確認
手順7. 実行結果を確認
この場合はどうなの!?
リスト型が引数のoutで出る場合 {“りんご”, “ごりら”, “らっぱ”}のように書けば大丈夫! Twitter: @hilhilyzyan
配列型が引数のoutで出る場合 [“りんご”, “ごりら”, “らっぱ”]のように書けば大丈夫! out_配列型 Twitter: @hilhilyzyan
辞書型の場合 {“key1":“value",“key2":“value2"}のように書けば大丈夫! Twitter: @hilhilyzyan
データテーブルの場合 エラーが出て、 結局治りませんでした。 ので、調査できませんでした…! Twitter: @hilhilyzyan
単体テストの向き不向き
単体テストに向いているもの • 引数に特定の値をいれると必ず決まったものが返って くる(消費税計算など) これだけ! Twitter: @hilhilyzyan
テストの自動化をする意味 ・ミスに気づける! (例:Bのワークフロー開発で共通部品を一部修正したが、 逆にそのせいでAのワークフローで不具合が生じた) ・テストに当てていたリソースを別な開発に当てること ができる (そもそも、みなさんテストやってます…?) ・テストしやすいようにワークフローを開発する!とい う観点で開発すると、良いワークフローができそう。 ※全てのXAMLのテストをすることは多分無理です