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
191112 単体テストのお話 おしうみなおきさん
Search
RPACommunity
November 12, 2019
Technology
0
220
191112 単体テストのお話 おしうみなおきさん
RPACommunity
November 12, 2019
Tweet
Share
More Decks by RPACommunity
See All by RPACommunity
201023 Automation Anywhere「A2019」を触ってみた Ayy
rpabank
0
980
201023 DX Suiteを触ってみた Ayy
rpabank
0
970
201023 RPA超初心者がWinActorにチャレンジしてみた ユーコさん
rpabank
0
580
201023 PowerPlatform はじめの一歩 みさみささん
rpabank
0
570
201023 アシロボで実際に沼ってみた たまいさん
rpabank
0
640
201018 RPAの本質とトレンド Mitz
rpabank
0
490
201006 僕がいまRPAで伝えたいことのすべて いろはまるさん
rpabank
0
430
201006 UiPath MVP 2019-2020 はなっち!さん
rpabank
0
420
201006 今からでも間に合う!UiPathトーク一気に振り返り たまいさん
rpabank
0
390
Other Decks in Technology
See All in Technology
Change Managerを活用して本番環境へのセキュアなGUIアクセスを統制する / Control Secure GUI Access to the Production Environment with Change Manager
yuj1osm
0
110
Snowflake ML モデルを dbt データパイプラインに組み込む
estie
0
110
AIエージェント時代のエンジニアになろう #jawsug #jawsdays2025 / 20250301 Agentic AI Engineering
yoshidashingo
8
4k
事業を差別化する技術を生み出す技術
pyama86
2
440
JAWS DAYS 2025 アーキテクチャ道場 事前説明会 / JAWS DAYS 2025 briefing document
naospon
0
2.7k
自分だけの仮想クラスタを高速かつ効率的に作る kubefork
donkomura
0
110
AWS Well-Architected Frameworkで学ぶAmazon ECSのセキュリティ対策
umekou
2
150
AWSアカウントのセキュリティ自動化、どこまで進める? 最適な設計と実践ポイント
yuobayashi
7
990
入門 PEAK Threat Hunting @SECCON
odorusatoshi
0
170
AIエージェント入門
minorun365
PRO
32
19k
MIMEと文字コードの闇
hirachan
2
1.4k
リクルートのエンジニア組織を下支えする 新卒の育成の仕組み
recruitengineers
PRO
1
140
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
The Cost Of JavaScript in 2023
addyosmani
47
7.4k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
A designer walks into a library…
pauljervisheath
205
24k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Side Projects
sachag
452
42k
Facilitating Awesome Meetings
lara
53
6.3k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Rails Girls Zürich Keynote
gr2m
94
13k
Producing Creativity
orderedlist
PRO
344
40k
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のテストをすることは多分無理です