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
Gnomeとdogtail
Search
Masami Ichikawa
August 22, 2010
Programming
0
83
Gnomeとdogtail
Masami Ichikawa
August 22, 2010
Tweet
Share
More Decks by Masami Ichikawa
See All by Masami Ichikawa
cgroupsとプロセス生成・終了処理
masami256
1
1.2k
Linux の Debug 機能
masami256
0
79
Linux Namespaces
masami256
0
49
slub: alloc and free
masami256
0
72
SLUB data structures
masami256
0
95
SystemV IPC
masami256
0
110
Linux Namespace
masami256
0
62
とある帽子の大蛇料理Ⅱ
masami256
0
72
x86 とコンテキストスイッチ
masami256
0
220
Other Decks in Programming
See All in Programming
#QiitaBash MCPのセキュリティ
ryosukedtomita
0
350
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
260
技術同人誌をMCP Serverにしてみた
74th
1
440
AIコーディング道場勉強会#2 君(エンジニア)たちはどう生きるか
misakiotb
1
260
A2A プロトコルを試してみる
azukiazusa1
2
1.2k
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
highu
0
110
DroidKnights 2025 - 다양한 스크롤 뷰에서의 영상 재생
gaeun5744
3
330
第9回 情シス転職ミートアップ 株式会社IVRy(アイブリー)の紹介
ivry_presentationmaterials
1
250
Go1.25からのGOMAXPROCS
kuro_kurorrr
1
820
童醫院敏捷轉型的實踐經驗
cclai999
0
200
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
270
エラーって何種類あるの?
kajitack
5
320
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
Optimizing for Happiness
mojombo
379
70k
KATA
mclloyd
30
14k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
17
950
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Being A Developer After 40
akosma
90
590k
Unsuck your backbone
ammeep
671
58k
How to train your dragon (web standard)
notwaldorf
94
6.1k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.4k
Transcript
Gnome と dogtail 2010/08/22 カーネル/ VM 探検隊 @masami256
What is the dogtail? • 元々は Redhat で開発されたテストツール • GUI
の操作を自動化 • 実装は Python で書かれてる • スクリプトも Python で書く • 操作のキャプチャ・リプレイ可能
Base Technology • AT-SPI を利用 • Assistive Technology Service Provider
Interface • Gnome プロジェクト発祥
AT-SPI Browser
AT-SPI Browser
Dogtail Internal pyatspy dogtail
Dogtail Internal •
[email protected]
• click, check などのアクションの定義と実行 •
[email protected]
• UI を構成する各要素を取得して保持 • 要素の内容の取得・変更もする • コンボボックスの選択内容を取得したり、テキスト ボックスに文字を書き込むなど
Dogtail Internal •
[email protected]
• フォーカスに関するクラス • Window や Application
にフォーカスを移したり、 フォーカスのある要素に対してアクションを実行な ど • WARNING: Here There be Dragons (TM)
Dogtail Internal •
[email protected]
• テストクラスの本体 •
[email protected]
• テスト対象のプロセス起動、停止などを実行など
• rawinput.py • マウス・キーボードのイベントを取得し、イベント を登録する • utils.py • プログラムの実行、スクリーンショット取得など
ご清聴ありがとうございました