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
単体試験の生産性向上と私
Search
HANACCHI
June 05, 2026
Technology
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
単体試験の生産性向上と私
2026/06/04(木) 19:00〜
ライトニングトーク&交流会!~〇〇と生産性向上と私~
HANACCHI
June 05, 2026
More Decks by HANACCHI
See All by HANACCHI
PowerAutomatefordesktopでの開発シーンで
hanacchi
0
30
ChatGPTにテストデータを作ってもらう
hanacchi
0
210
AI JIMYで数独
hanacchi
0
68
メール本文をどうやっつけるか
hanacchi
0
390
2024年のローコード界隈最新事情~業務担当者でもAI・生成AIを活用できる!~
hanacchi
0
470
AI JIMY - 登壇(インストール編)
hanacchi
0
560
AI JIMY - 登壇(設定編)
hanacchi
0
520
AI JIMY - 登壇(実行編)
hanacchi
0
480
パスワードを保存しますか?
hanacchi
0
490
Other Decks in Technology
See All in Technology
AI時代のAPI品質を支えるガードレール / API Guardrails for API quality in the AI era
yokawasa
1
110
JAWS-UG初心者支部#88わいわい初心塾(夏休みの宿題やったかGit編)
otsuki
0
120
AIで開発は速くなったのに、なぜ現場は楽にならないのか 〜あなたの組織のボトルネックを突き止めるワークショップ〜
jacopen
1
260
grill-me(grilling):AI駆動開発を超助けてくれるSkill / grill me
mathbullet
0
100
生成AIのテナント制御とシャドーMCP対策 | AIを"止めずに"、情報を守る
yukun
0
110
Driving AI Adoption Using In-House GPUs to Serve Qwen
po3rin
2
450
ブラウザアプリの継続的パフォーマンスモニタリング (序) / Continuous Browser Application Performance Monitoring; Act 1
moznion
0
110
少人数データチームのDevin活用実践事例
runandy16
2
440
AI-DLCって実際どう? 〜聞きたいこと全部聞いてみる〜
news_it_enj
0
220
Azure Cost Management の FOCUS コストデータを迷わず読むための“3つの軸”
tetsuyaooooo
0
140
「重なり」は迎える側がつくる ― 人もAIエージェントも歓迎するプロダクトエンジニアリング ―
go0517go
PRO
0
230
Genie Code ワークショップ 基礎編 / Genie-Code-Workshop-fundamental
databricksjapan
PRO
0
350
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
28
2.8k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
430
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
810
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
510
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
220
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
300
So, you think you're a good person
axbom
PRO
2
2.1k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
490
Game over? The fight for quality and originality in the time of robots
wayneb77
1
260
Automating Front-end Workflow
addyosmani
1369
210k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Transcript
単体試験の 生産性向上と私
はなっち!とは… 2020年11月 定年退職 同 年 同 月 有期契約社員
2022年7月 個人事業主化 はなっち!の最近 実家への単身赴任が解け、自宅に戻る ⇒両親は自宅そばの老健さんへ 2025年9月からRPACommunityの仲間から 仕事のオファーをいただく 現在、絶賛UiPath! Twitter:hjmkzk Qiita:@HANACCHI FaceBook:hajime.kozaki BlueSky: hjmkzk.bsky.social
仕様概要 … CONFIGで指定された列毎に、データテーブル中の行の値を、ログに出力する ログに出力する CONFIGで指定され た列毎に データテーブル中の 行の値を
無論、CONFIGファイルの処理と、データテーブルの処理が必要 NAME VALUE DESCRIPTION FOLDER c:\RPA FILENAME SAMLEDATA.xlsx COLUMNs 列A,列C
列A 列B 列C 2110035 神奈川県 自宅 1710031 東京都 実家 3660824 埼玉県 ダチんち 読んだシート上の情報 をCONFIGに代入 CONFIG上の辞書情報を 参照しDataTableへ
全体図 読んだシート上の情報 をCONFIGに代入 CONFIG上の辞書情報を 参照しDataTableへ ログに出力する NAME VALUE DESCRIPTION FOLDER
c:\RPA FILENAME SAMLEDATA.xlsx COLUMNs 列A,列C 列A 列B 列C 2110035 神奈川県 自宅 1710031 東京都 実家 3660824 埼玉県 ダチんち
主処理部分は、他でも転用したいので、xamlとして切り出して!
「ワークフローとして抽出」後
とりあえず、単体で起動しておこうか... 未設定だから 当然!
Main CONFIG処理 データテーブル処理 INVOKE処理 DRIVER_Main.xaml CONFIG処理 データテーブル処理 INVOKE処理 単体試験の方法 それって、Main.xamlとほぼ変わらないよね?
Main.xamlの中で処理しているCONFIG、データテーブルを利用すればいいね? ①単体試験用にドライバxamlを作成し、そこからINVOKEする! ≒ ②主処理.xamlの中に、CONFIG処理、データテーブル処理を組み込む! それも、Main.xamlとほぼ変わらないし、汚しているよね? 主処理.xaml CONFIG処理 機能 データテーブル処理 ≒ ② ①
既定値 … 引数タブの「既定値」に事前に設定しておけば!? … どうやって? ? String型への設定例 Dictionary型, DataTable型 への設定?
Geminiに、「UiPathの開発で、辞書型の引数の『既定値』に事前に設定したいんだけど」と訊いてみる
Geminiに、「UiPathの開発で、DataTable型の引数の『既定値』に3列、2行を事前に設定したいんだけど」 …
知らなった!!!引数タブの「既定値」に事前に設定してしてみた New Dictionary(Of String, Object) From { {"FOLDER","c:¥RPA"}, {"FILENAME","SAMLEDATA.xlsx"}, {"COLUMNs","列A,列C"}
} DirectCast( Newtonsoft.Json.JsonConvert.DeserializeObject ("[{'列A':'A1','列B':'B1','列C':'C1'},{'列A':'A2','列B':'B2','列C':'C2'}]", GetType(DataTable) ) , DataTable) ※見やすさのため、改行しています ※見やすさのため、改行しています
このようにやるメリット・デメリット 辞書型への「既定値」設定 【メリット】 • EXCELからテキストエディタにコピペし、加工できる! • 後任の人が、動作確認しやすい(!) • 必要なCONFIGが洗い出せる(?) 【デメリット】
• 大量のKeyPairを持つDictionary設定には不向き • 引数に、編集パネルがないから修正しにくい データテーブル型への「既定値」設定 【メリット】 • ドライバxamlとか、「データテーブルの構築」が不要 • 後任の人が、動作確認しやすい(!) • 必要な列名が洗い出せる(?) 【デメリット】 • JSON構文を維持しつつ設定するのが面倒 ⇒「データテーブルの構築」でも大量データには不向き ⇒そもそも、大量データで単体試験はしない? • 引数に、編集パネルがないから修正しにくい
最大のデメリット … 参照した際に、既定値が設定されてしまっている ⇒ 正しく設定するのを忘れてしまう!? 既定値に設定されて いない場合 既定値に設定されて いる場合 引数と同じ名前の変
数が存在する場合
(一工夫…データテーブルに、指定があってもなくても大丈夫なように...)
適材適用!
一生UiPathします How Do You Like "UiPath"?