Skip to main content
Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
EN
Upload
Download free for 30 days
Sign in
Uploaded by
Tatsuya Ishikawa
PPTX, PDF
35,365 views
Stac2014 石川
http://connpass.com/event/9618/ で話た内容です。
Software
◦
Read more
17
Save
Share
Embed
Save to Drive
Download now
Downloaded 57 times
1
/ 62
2
/ 62
3
/ 62
4
/ 62
5
/ 62
6
/ 62
7
/ 62
8
/ 62
9
/ 62
10
/ 62
11
/ 62
12
/ 62
13
/ 62
14
/ 62
15
/ 62
16
/ 62
17
/ 62
18
/ 62
19
/ 62
20
/ 62
More Related Content
PDF
実践で学ぶ、効率的な自動テストスクリプトのメンテナンス
by
Nozomi Ito
74 slides
40.8K views
PPTX
システムテスト自動化標準ガイド 5章発表資料
by
Masatoshi Itoh
78 slides
2.7K views
PDF
ビルドプロセスとCI #STAC2014
by
Koji Hasegawa
59 slides
25.7K views
PDF
GUI自動テストの保守性を高めるには
by
Nozomi Ito
66 slides
29.5K views
PPTX
20131201 テスト自動化カンファレンスLT「激しいUI変更との戦い」
by
Hiroko Tamagawa
15 slides
30.1K views
PDF
テスト自動化読書会 第3章 20150523
by
dnoguchi
80 slides
2.6K views
PPT
自動テスト知識体系TABOKのご紹介
by
Shinsuke Matsuki
20 slides
9K views
PDF
スマートフォンアプリの テスト自動化をはじめよう
by
Koji Hasegawa
59 slides
40.6K views
実践で学ぶ、効率的な自動テストスクリプトのメンテナンス
by
Nozomi Ito
74 slides
40.8K views
システムテスト自動化標準ガイド 5章発表資料
by
Masatoshi Itoh
78 slides
2.7K views
ビルドプロセスとCI #STAC2014
by
Koji Hasegawa
59 slides
25.7K views
GUI自動テストの保守性を高めるには
by
Nozomi Ito
66 slides
29.5K views
20131201 テスト自動化カンファレンスLT「激しいUI変更との戦い」
by
Hiroko Tamagawa
15 slides
30.1K views
テスト自動化読書会 第3章 20150523
by
dnoguchi
80 slides
2.6K views
自動テスト知識体系TABOKのご紹介
by
Shinsuke Matsuki
20 slides
9K views
スマートフォンアプリの テスト自動化をはじめよう
by
Koji Hasegawa
59 slides
40.6K views
What's hot
PDF
異業種でのテスト自動化の実際
by
Satsuki Urayama
59 slides
2.9K views
PDF
1時間で分かるSTA (Software Test Automation) #stac2014
by
Kazuhiro Suzuki
78 slides
176.4K views
PPTX
価値あるシステムテスト自動化の実現By friendly
by
Tatsuya Ishikawa
41 slides
28.5K views
PDF
テストの自動化を考える前に
by
bleis tift
26 slides
14K views
PDF
OSSのブラウザ自動テストツール「Selenium」を使った、開発・テストの効率化
by
Nozomi Ito
55 slides
48.7K views
PDF
テスト自動化のこれまでとこれから
by
Keizo Tatsumi
30 slides
37K views
PDF
4時間で学ぶ、効率的な自動テストスクリプトのメンテナンス
by
Nozomi Ito
72 slides
23.5K views
PDF
Windowsでの自動化の手段
by
Hidari Ikw
92 slides
15.5K views
PDF
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
by
kyon mm
60 slides
25.1K views
PPTX
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
by
Tatsuya Ishikawa
75 slides
10.4K views
PDF
20150418 システムテスト自動化 第一章
by
Yuki Fujisawa
55 slides
6.1K views
PPTX
システムテスト自動化標準ガイド 読書会 第8章
by
mirer
52 slides
3.2K views
PPTX
Stac2013 開会挨拶
by
Shinsuke Matsuki
8 slides
26.1K views
PPTX
20150418 システムテスト自動化 第二章
by
atsushi ishiji
41 slides
2.1K views
PDF
iOSアプリ開発でもTravis CI #eytokyo
by
Koji Hasegawa
17 slides
4.9K views
PDF
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
by
Yahoo!デベロッパーネットワーク
54 slides
9.7K views
PPTX
EMTEを使って自動化の費用対効果をわかりやすく表現する
by
JYERUEY
39 slides
5.9K views
PPTX
reg-suitとQA Wolfを活用したVisual Regression Test
by
Kazuyuki Tsuzisaki
62 slides
3.6K views
PDF
事例から見るテスト自動化のポイント
by
Hiroshi Maekawa
56 slides
34K views
PDF
「UI自動テストツールとAI」〜AIを使った自動テストの「今」と「未来」〜
by
Nozomi Ito
51 slides
18.2K views
異業種でのテスト自動化の実際
by
Satsuki Urayama
59 slides
2.9K views
1時間で分かるSTA (Software Test Automation) #stac2014
by
Kazuhiro Suzuki
78 slides
176.4K views
価値あるシステムテスト自動化の実現By friendly
by
Tatsuya Ishikawa
41 slides
28.5K views
テストの自動化を考える前に
by
bleis tift
26 slides
14K views
OSSのブラウザ自動テストツール「Selenium」を使った、開発・テストの効率化
by
Nozomi Ito
55 slides
48.7K views
テスト自動化のこれまでとこれから
by
Keizo Tatsumi
30 slides
37K views
4時間で学ぶ、効率的な自動テストスクリプトのメンテナンス
by
Nozomi Ito
72 slides
23.5K views
Windowsでの自動化の手段
by
Hidari Ikw
92 slides
15.5K views
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
by
kyon mm
60 slides
25.1K views
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
by
Tatsuya Ishikawa
75 slides
10.4K views
20150418 システムテスト自動化 第一章
by
Yuki Fujisawa
55 slides
6.1K views
システムテスト自動化標準ガイド 読書会 第8章
by
mirer
52 slides
3.2K views
Stac2013 開会挨拶
by
Shinsuke Matsuki
8 slides
26.1K views
20150418 システムテスト自動化 第二章
by
atsushi ishiji
41 slides
2.1K views
iOSアプリ開発でもTravis CI #eytokyo
by
Koji Hasegawa
17 slides
4.9K views
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
by
Yahoo!デベロッパーネットワーク
54 slides
9.7K views
EMTEを使って自動化の費用対効果をわかりやすく表現する
by
JYERUEY
39 slides
5.9K views
reg-suitとQA Wolfを活用したVisual Regression Test
by
Kazuyuki Tsuzisaki
62 slides
3.6K views
事例から見るテスト自動化のポイント
by
Hiroshi Maekawa
56 slides
34K views
「UI自動テストツールとAI」〜AIを使った自動テストの「今」と「未来」〜
by
Nozomi Ito
51 slides
18.2K views
Viewers also liked
PDF
キーワード駆動テストチュートリアルハンズアウト.03.06
by
Toru Koido
38 slides
10.9K views
PDF
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
by
Yahoo!デベロッパーネットワーク
34 slides
16.8K views
PDF
組み込み開発でのシステムテスト自動化の一つの考え方(STAC)
by
H Iseri
19 slides
35.6K views
PDF
#STAC2014 システムテスト自動化ハンズオン
by
kyon mm
61 slides
22.4K views
PDF
テスト自動化のパターンと実践
by
Hiroshi Maekawa
37 slides
26.8K views
PPTX
キーワード駆動によるシステムテストの自動化について 2015
by
Toru Koido
63 slides
23.3K views
PPTX
モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013
by
Kinji Akemine
48 slides
42.6K views
PDF
Automation test.ssf alpha
by
ryuji koyama
25 slides
23.7K views
PDF
20151213 system test automation conference
by
Kazuaki Matsuo
65 slides
24.3K views
PPTX
手動テストからの移行大作戦
by
Satsuki Urayama
25 slides
27.4K views
PPTX
【STAC2017】テスト自動化システム 成長記
by
友隆 浅黄
38 slides
20K views
PDF
「自動家は見た! 〜自動化の現場の真実〜」-システムテスト自動化カンファレンス2015「.reviewrc(おいしが)」発表枠 #stac2015
by
Kazuhito Miura
167 slides
42K views
PDF
「自動家(オートメータ)をつくる」-システムテスト自動化カンファレンス2014 「.reviewrc」枠発表-
by
Kazuhito Miura
96 slides
25.1K views
PDF
STAC 2015 自動家は見た~自動化の現場の真実~ SIDE:マネージャ
by
Noriyuki Mizuno
30 slides
41.9K views
PPTX
【システムテスト自動化カンファレンス2015】 楽天の品質改善を加速する継続的システムテストパターン #stac2015
by
Kotaro Ogino
94 slides
25.2K views
キーワード駆動テストチュートリアルハンズアウト.03.06
by
Toru Koido
38 slides
10.9K views
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
by
Yahoo!デベロッパーネットワーク
34 slides
16.8K views
組み込み開発でのシステムテスト自動化の一つの考え方(STAC)
by
H Iseri
19 slides
35.6K views
#STAC2014 システムテスト自動化ハンズオン
by
kyon mm
61 slides
22.4K views
テスト自動化のパターンと実践
by
Hiroshi Maekawa
37 slides
26.8K views
キーワード駆動によるシステムテストの自動化について 2015
by
Toru Koido
63 slides
23.3K views
モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013
by
Kinji Akemine
48 slides
42.6K views
Automation test.ssf alpha
by
ryuji koyama
25 slides
23.7K views
20151213 system test automation conference
by
Kazuaki Matsuo
65 slides
24.3K views
手動テストからの移行大作戦
by
Satsuki Urayama
25 slides
27.4K views
【STAC2017】テスト自動化システム 成長記
by
友隆 浅黄
38 slides
20K views
「自動家は見た! 〜自動化の現場の真実〜」-システムテスト自動化カンファレンス2015「.reviewrc(おいしが)」発表枠 #stac2015
by
Kazuhito Miura
167 slides
42K views
「自動家(オートメータ)をつくる」-システムテスト自動化カンファレンス2014 「.reviewrc」枠発表-
by
Kazuhito Miura
96 slides
25.1K views
STAC 2015 自動家は見た~自動化の現場の真実~ SIDE:マネージャ
by
Noriyuki Mizuno
30 slides
41.9K views
【システムテスト自動化カンファレンス2015】 楽天の品質改善を加速する継続的システムテストパターン #stac2015
by
Kotaro Ogino
94 slides
25.2K views
Similar to Stac2014 石川
PPTX
Friendlyで始めるwindowsアプリシステムテスト自動化+内部使用技術解説
by
Tatsuya Ishikawa
31 slides
14.1K views
PDF
GUI Test is (not) necessary
by
Hiroshi Maekawa
32 slides
4.2K views
PPTX
FriendlyによるWindowsアプリテスト自動化手法 基礎技術編
by
Kenji Fukumoto
30 slides
7.5K views
PPTX
【オンライン】.NET 6 移行祭り! C# Tokyo イベント
by
Tatsuya Ishikawa
11 slides
72 views
PDF
デブサミ2014【13-B-L】テスト自動化を見直そう!自動化への投資が開発チームをクリエイティブにする(安竹由起夫〔コベリティジャパン〕)
by
Developers Summit
32 slides
2.7K views
PPTX
Friendlyを使ったwindowsアプリテスト自動化
by
Tatsuya Ishikawa
50 slides
12.6K views
PDF
ギアと開発とわたし_AAA2015
by
Kazuhiro Suzuki
75 slides
4.5K views
PDF
函館IKA Eclipse活用術
by
Masahiro Wakame
53 slides
2.4K views
KEY
1.29.user,user,user
by
Tonny Xu
174 slides
897 views
PDF
Extending the Unity Editor Extended
by
Masamitsu Ishikawa
23 slides
33.9K views
Friendlyで始めるwindowsアプリシステムテスト自動化+内部使用技術解説
by
Tatsuya Ishikawa
31 slides
14.1K views
GUI Test is (not) necessary
by
Hiroshi Maekawa
32 slides
4.2K views
FriendlyによるWindowsアプリテスト自動化手法 基礎技術編
by
Kenji Fukumoto
30 slides
7.5K views
【オンライン】.NET 6 移行祭り! C# Tokyo イベント
by
Tatsuya Ishikawa
11 slides
72 views
デブサミ2014【13-B-L】テスト自動化を見直そう!自動化への投資が開発チームをクリエイティブにする(安竹由起夫〔コベリティジャパン〕)
by
Developers Summit
32 slides
2.7K views
Friendlyを使ったwindowsアプリテスト自動化
by
Tatsuya Ishikawa
50 slides
12.6K views
ギアと開発とわたし_AAA2015
by
Kazuhiro Suzuki
75 slides
4.5K views
函館IKA Eclipse活用術
by
Masahiro Wakame
53 slides
2.4K views
1.29.user,user,user
by
Tonny Xu
174 slides
897 views
Extending the Unity Editor Extended
by
Masamitsu Ishikawa
23 slides
33.9K views
More from Tatsuya Ishikawa
PDF
AIが未知のローコード技術を学び実装する方法:Codeer.LowCode.Blazor事例紹介
by
Tatsuya Ishikawa
3 slides
11 views
PPTX
burikaigi2025.pptx Burikaigi2025でつかった資料です。
by
Tatsuya Ishikawa
27 slides
57 views
PPTX
DotNetConf2024の資料 BlazorとLowCodeと生成AIの話です
by
Tatsuya Ishikawa
23 slides
109 views
PDF
2024/07/04 Blazor+ローコードで実現する.NET資産のモダナイズ
by
Tatsuya Ishikawa
34 slides
187 views
PPTX
burikaigi2024.pptx
by
Tatsuya Ishikawa
21 slides
76 views
PPTX
burikaigi2023
by
Tatsuya Ishikawa
19 slides
96 views
PPTX
Test to net core 3
by
Tatsuya Ishikawa
37 slides
418 views
PPTX
Test automation strategy for .net core 3 transition
by
Tatsuya Ishikawa
26 slides
1.3K views
PDF
Developer summit codeer
by
Tatsuya Ishikawa
48 slides
668 views
PPTX
Infragistics Web Day 2017 - 継続的な開発を支える テスト自動化技術
by
Tatsuya Ishikawa
38 slides
761 views
PPTX
Stack2017 自動化困難な状況での活動方法
by
Tatsuya Ishikawa
32 slides
4.6K views
PPTX
メタな感じのプログラミング(プロ生 + わんくま 071118)
by
Tatsuya Ishikawa
57 slides
1.2K views
PPTX
Dot netconf2017 - VS拡張
by
Tatsuya Ishikawa
77 slides
1.1K views
PPTX
.Netconf
by
Tatsuya Ishikawa
30 slides
3.2K views
PPTX
Bindingからframework elementを見つける
by
Tatsuya Ishikawa
13 slides
6.5K views
PPTX
boost - std - C#
by
Tatsuya Ishikawa
64 slides
2.9K views
PPTX
Windowsアプリテスト自動化 [Friendly+delphi]
by
Tatsuya Ishikawa
21 slides
1.3K views
PPTX
Ride on azure~アイデアソン編~
by
Tatsuya Ishikawa
42 slides
808 views
PPTX
私とC++ in 例外安全day
by
Tatsuya Ishikawa
44 slides
2K views
PPTX
他言語との連携(ネイティブから動的言語まで)
by
Tatsuya Ishikawa
36 slides
2.9K views
AIが未知のローコード技術を学び実装する方法:Codeer.LowCode.Blazor事例紹介
by
Tatsuya Ishikawa
3 slides
11 views
burikaigi2025.pptx Burikaigi2025でつかった資料です。
by
Tatsuya Ishikawa
27 slides
57 views
DotNetConf2024の資料 BlazorとLowCodeと生成AIの話です
by
Tatsuya Ishikawa
23 slides
109 views
2024/07/04 Blazor+ローコードで実現する.NET資産のモダナイズ
by
Tatsuya Ishikawa
34 slides
187 views
burikaigi2024.pptx
by
Tatsuya Ishikawa
21 slides
76 views
burikaigi2023
by
Tatsuya Ishikawa
19 slides
96 views
Test to net core 3
by
Tatsuya Ishikawa
37 slides
418 views
Test automation strategy for .net core 3 transition
by
Tatsuya Ishikawa
26 slides
1.3K views
Developer summit codeer
by
Tatsuya Ishikawa
48 slides
668 views
Infragistics Web Day 2017 - 継続的な開発を支える テスト自動化技術
by
Tatsuya Ishikawa
38 slides
761 views
Stack2017 自動化困難な状況での活動方法
by
Tatsuya Ishikawa
32 slides
4.6K views
メタな感じのプログラミング(プロ生 + わんくま 071118)
by
Tatsuya Ishikawa
57 slides
1.2K views
Dot netconf2017 - VS拡張
by
Tatsuya Ishikawa
77 slides
1.1K views
.Netconf
by
Tatsuya Ishikawa
30 slides
3.2K views
Bindingからframework elementを見つける
by
Tatsuya Ishikawa
13 slides
6.5K views
boost - std - C#
by
Tatsuya Ishikawa
64 slides
2.9K views
Windowsアプリテスト自動化 [Friendly+delphi]
by
Tatsuya Ishikawa
21 slides
1.3K views
Ride on azure~アイデアソン編~
by
Tatsuya Ishikawa
42 slides
808 views
私とC++ in 例外安全day
by
Tatsuya Ishikawa
44 slides
2K views
他言語との連携(ネイティブから動的言語まで)
by
Tatsuya Ishikawa
36 slides
2.9K views
Stac2014 石川
1.
皮を剥く
2.
自己紹介 石川達也 株式会社Codeer代表取締役
Microsoft MVP for C# Windowsアプリテスト自動化歴9年 Windowsアプリ操作用ライブラリFriendlyの開発者
3.
Windowsアプリ用の皮むき器です。 *詳細は後で Friendly紹介
http://www.codeer.co.jp/ Friendly 自動化で検索!
4.
Friendly紹介 無料です!
5.
Friendly紹介 じわじわ来てます。 一部上場企業様でも続々と採用中
6.
Friendly紹介 アメリカでも大好評でした! 亀岡的プログラマ日記
http://posaune.hatenablog.com/entry/2014/11/16/173446
7.
アジェンダ 1.なぜ剥くのか? 2.剥き方
3.新たな皮をかぶせる
8.
1.なぜ剥くのか? 1.Why do
you peel it?
9.
もっと自由に自動化したい! 1.Why do
you peel it?
10.
これプログラムから操作しようと思うでしょ? 1.Why do
you peel it? アプリケーションとして起動してる画面ね
11.
いやいや、どうやんの? このコントロールは、 UIオートメーション対応してんのね。
あれ、こいつ動かん。 キー、マウスエミュレートやるかー。 あかん、タイミング依存。 あれ?このウィンドウどれへん。 モーダルダイアログでかたまったー。 この画面、OSによって デザインかわっとるやんけ! 1.Why do you peel it?
12.
むずかしわ! 1.Why do
you peel it?
13.
システムテスト自動化のボトルネック (あくまで私の経験) そのほとんどは
「操作技術」 1.Why do you peel it? だって、簡単に操作できたら 手動でやってるスクリプトは 全部自動化するよね?
14.
でもおかしな話ですよね? 僕らは、このシステムを作ったはずです。 その時は、APIを駆使して
自在にシステムを操ったはずなのですよ。 なんで、こんなことに? 1.Why do you peel it?
15.
それはね、こう見ているからですよ。 アプリケーションとして起動すると もはやプログラムとしてみてないんですね。
別プロセスのGUIって得体がしれないもの。 1.Why do you peel it?
16.
こう見るのだ! つまり、プログラムとして 見るのですね
public partial class InputForm : Form{ DataGridView _dataGridView; TextBox _textBoxName; DateTimePicker _dateTime; Button _buttonOK; void buttonOK_Click(object s, EventArgs e) { ・・・ } } 1.Why do you peel it?
17.
いつもと同じAPIが使える!(とすると form._textBoxName.Text =
“abc”; form._dateTime.Value = new DateTime(2014, 11, 1); Form._buttonOK.PerformClick(); public partial class InputForm : Form{ DataGridView _dataGridView; TextBox _textBoxName; DateTimePicker _dateTime; Button _buttonOK; void buttonOK_Click(object s, EventArgs e) { ・・・ } } 1.Why do you peel it? 思い通りにプログラムできる! Happy!
18.
いやいや、何言ってんの? それができたら簡単だけど。 別プロセスですよ?
そんなのできるわけないじゃん
19.
そこでFriendlyですよ Is a
magical library! It break through the walls of processes. デモ! https://www.youtube.com/watch?v=CK327YuI-bk https://www.youtube.com/watch?v=xy7BvrrF8oE
20.
対象ごとに、皮むき器が必要になってくるんですけどね。 1.Why do
you peel it? WindowsアプリならFriendly!
21.
なぜ剥くのか? 僕自身が 自在にテスト自動化コードを書くために
この考えを採用したのです。 だって、こうしたら 普通のプログラムと同じノリで拡張できるし。 操作上のボトルネックを外すこともできる! テスタビリティーも好きに向上できるじゃん! 1.Why do you peel it? Freedom!
22.
それから・・・ システムテスト自動化って、つまりは プロダクトプロセスとテストプロセスを協調動作させる
マルチプロセスプログラミング。 安定して動作させるためには こういった、内部を見る視点が必要不可欠! 1.Why do you peel it? なぜ剥くのか? アクロバティック!
23.
皮の剥き方 2.How to
peel
24.
それを、説明にするにあたってこれをみてください。 アプリってね、こうじゃないんですよ。 いや、こうなんだけど・・・
2.How to peel
25.
こうなんですよー ものによっては サーバーとか外部機器と通信する
奥行があるのです! 2.How to peel
26.
この結合したシステムを 効率よくテストしたいのです GUIの詳細をテストが目的ではない。
システムをテストすることが目的なのだ! 2.How to peel
27.
さあ、剥くぞー! 2.How to
peel
28.
操作するということを考えて、ちょっと図を変えると OS層 2.How
to peel
29.
まずは、一番不安定で、かつ自動化する価値が低いとこ 2.How to
peel OS
30.
ここだ! 2.How to
peel OS
31.
キーマウスエミュレートは・・・ OS層に送って、長い道のりを経て 目的のコードにたどり着く
安定したテストを書くのは困難(僕には無理 あと、低レベルな指令に頼ると メンテナンス性が低いんですよねー 2.How to peel 一旦OSに送って そこからアクティブな プロセスに送信される OS
32.
よし、剥がそう GUI コントロール
(3rdパーティー) 2.How to peel
33.
GUIコントロールを操作する分には、 多くの場合は手動と同等と考えられる GUI
コントロール (3rdパーティー) →差異のあるものもある form._textBoxName.Text = “abc”; form._dateTime.Value = new DateTime(2014, 11, 1); form._buttonOK.PerformClick(); 大体はこれでOK 一般的に望まれる システムテスト自動化とほぼ同等の効果 単にプログラムから扱いやすいだけ 2.How to peel
34.
備考:実はUIオートメーションも、この層は剥いでいる GUI コントロール
(3rdパーティー) で、GUIコントロールとだけ 通信できるような仕組みを用意している まあ、自由度はないけど 2.How to peel
35.
備考:Friendlyなら GUI コントロール
(3rdパーティー) Netならフルアクセス、 ネイティブはDLL公開関数を操作できる 2.How to peel 自由すぎる!
36.
時には、もっと剥いでみよう! 2.How to
peel
37.
こんな感じ 2.How to
peel ユーザーロジック ここまで剥いたら 全部知ってるよね
38.
結局のところ、テストしたい対象って、ここで十分だったりする それに、扱いやすいよね! もちろん、システムテストなんで
できるだけ上位から叩けた方が良いいけど。 テストの本質的な対象でない部分がボトルネックになって 自動化を諦めるのってホントにもったいない! 2.How to peel バグのほとんどは ここにあるでしょ? あと、データ取得とかで使いますね。
39.
例えばこんなとき //ここの結合は不安が少ない void
Event(object sender, EventArgs e) { EventCore(PointToClient(Control. MousePosition)); } //これを呼び出す void EventCore(Point mousePosClient) { //ここから先なら簡単に操作可能 //テストとしても問題がない } 自動化可能に! こういうの苦手・・・ ・キー、マウス直接参照 ・D&D ・OS提供のGUI 2.How to peel
40.
あ、念のため単体テストとは違いますよ。 あくまで、操作開始トリガを変えてるだけです。 テストスクリプト
・・・・ 結合したシステムに処理を実行させている 2.How to peel 単体テストは結合前の部品のテスト これはこれで、やらなきゃね。
41.
裏ワザ 2.How to
peel
42.
結合状態で特定のメソッドをテスト テストスクリプト ・・・・
まったく、セオリーに反した手法ですが 場合によっては非常に費用対効果高い場合があります。 レガシーコードで 単体テスト不可とかね・・・ 2.How to peel
43.
例えば、どんなとき? はいはい、実際にあったんですよー 2.How
to peel
44.
すっげー深いネストで、 それぞれもすごく入り組んでて、 static変数ありまくりで、
初期化は意味わからんタイミングで、 おまじないのように書き込まれている 神関数スタート! static変数の 状態によって複雑に 処理が変わるよ 実行したら 何処かのstatic変数の 状態が変わるよ 関数ツリー クリスマスバージョン 2.How to peel
45.
既存の動きは全く変えずに 機能追加してください。 あ、既存に不具合あっても直しちゃダメよ。
そんなアホな
46.
仕様がわからんから、 仕様化テストをやりたい。 テストケースは総当たり15万ケース
結合状態でやんないといけない。 各static変数には GUIが結びついてて それで、状態を変えたり 取得したりできるのだけど 1ケース2秒・・・ 83時間かかるやんけ 2.How to peel
47.
GUIすっ飛ばして、 static変数書き換えて 関数呼び出し。
結果のstatic変数を全ダンプ。 2.How to peel 種類実行平均時間合計 手動30秒1250時間 自動GUI操作2秒83時間 自動内部メソッド10ミリ秒24分 24分でできた。 これなら機能追加期間に 頻繁に実行できるね。 ローカルPCでもね。
48.
剥く皮の厚さは テスト対象ごとの性質を考えて 決定してね。
最初は薄皮一枚剥がすのがおすすめ 普通のGUI操作とほぼ同じ プログラムから操作しやすいだけ GUI コントロール
49.
注意事項 2.How to
peel 皮もおいしくいただきましょう 三浦さん(仮)は 失敗していましたが
50.
大事なのは、どこを自動化で抑えたかを把握すること。 それによって、手動テストを削れる部分と やっぱりやっておくべき部分を明確にする。
自動化できたケース手動で実施するケース A B C F C D E E 自動化 一部手動 手動 *毎日実行される こちらに入れることが重要 2.How to peel
51.
ちなみに、既存の捉え方だと、ボトルネックがあると 大きく自動化の範囲がそがれる場合がある。 自動化できたケース手動で実施するケース
2.How to peel もったいない! A B C F C E D E 自動化 一部手動 手動 *毎日実行される こちらに入れることが重要
52.
皮を剥くことによって ボトルネックのあるケースでも、 いくらかは自動化できる。
自動化できたケース手動で実施するケース A B C F でも、その分 管理しないと いけないけどね C D E E 自動化 一部手動 手動 *毎日実行される こちらに入れることが重要 2.How to peel
53.
3.新たな皮をかぶせる 3.Wrap to
eat
54.
OK! あんたがHappyなのはわかった。 でも、これってホワイトボックスすぎて
内部知っている開発者しか書けなくない? 3.Wrap to eat
55.
はい、ごもっとも。 それにテストシナリオに内部仕様の言葉使いたくないですよね。 テストシナリオ
・・・・ 生で触ってはだめ! 3.Wrap to eat
56.
そこで、アプリケーションドライバですよ。 ←参照 3.Wrap
to eat
57.
操作の層とテストシナリオの層を明確に分離 テストシナリオ ・・・・
3.Wrap to eat
58.
アプリケーションドライバは、 プロダクト作るときに開発チームで作っておく 内部仕様の知識を使って
確実に正確に動作させる こっちは 外部仕様の言葉 で理解できる インターフェイス Friendlyとその上位ライブラリ使えば 簡単に作れるよ 3.Wrap to eat
59.
Friendlyの上位ライブラリは 一般的なコントロールの皮を剥いた後にかぶせるラッパー それを使うとローコストにAppDriverを作れます!
Win32,WinForms,WPF そろってます。 3.Add New Interface http://www.codeer.co.jp/AutoTest/api-reference/codeer-friendly-windows- nativestandardcontrols-dll http://www.codeer.co.jp/AutoTest/api-reference/ong-friendly-formsstandardcontrols- dll https://github.com/Roommetro/Friendly.WPFStandardControls/
60.
テストシナリオは、テストチームで書く テストシナリオ ・・・・
簡単な操作手段が (インテリセンスで片が付く) 公開されていれば テストシナリオは テストチームで書いた方が 効率が良い 技術的な部分は隠蔽 3.Wrap to eat
61.
これによって、チームが一丸となって 自動化に取り組めるわけです。 そして、チーム全体で見て
コストダウンに繋げれるのです。 3.Wrap to eat
62.
まとめ ・システムをプログラムとして見る ・操作上のボトルネックを取り除く
・剥いだ皮に注意 →薄皮なのか、厚い皮なのか。 ・メンバーそれぞれの特性を生かせる設計にしよう ご清聴ありがとうございました! 【Picture】 Dawn Huczek