Suche senden
Hochladen
アプリ開発作業の効率改善
•
Als PPTX, PDF herunterladen
•
3 gefällt mir
•
3,614 views
健一 辰濱
Folgen
アプリ開発作業の効率改善
Weniger lesen
Mehr lesen
Software
Melden
Teilen
Melden
Teilen
1 von 42
Jetzt herunterladen
Empfohlen
Rubyを使ったスマホアプリのUIテスト
Rubyを使ったスマホアプリのUIテスト
健一 辰濱
Robotium を使った UI テストとレイアウト確認の効率化
Robotium を使った UI テストとレイアウト確認の効率化
健一 辰濱
Appium を使って iOS / Android の UI テストを共通化
Appium を使って iOS / Android の UI テストを共通化
健一 辰濱
Yidev201406.pub
Yidev201406.pub
itoz itoz
nalgo-botができるまで
nalgo-botができるまで
TomoakiNakashima
20170131 新潟セミナー
20170131 新潟セミナー
Nishida Kansuke
iPhoneアプリ開発Swift講座無料セミナー(appcre.com)
iPhoneアプリ開発Swift講座無料セミナー(appcre.com)
Haruyoshi Kuwamura
cochica
cochica
Hiroki Yoshida
Empfohlen
Rubyを使ったスマホアプリのUIテスト
Rubyを使ったスマホアプリのUIテスト
健一 辰濱
Robotium を使った UI テストとレイアウト確認の効率化
Robotium を使った UI テストとレイアウト確認の効率化
健一 辰濱
Appium を使って iOS / Android の UI テストを共通化
Appium を使って iOS / Android の UI テストを共通化
健一 辰濱
Yidev201406.pub
Yidev201406.pub
itoz itoz
nalgo-botができるまで
nalgo-botができるまで
TomoakiNakashima
20170131 新潟セミナー
20170131 新潟セミナー
Nishida Kansuke
iPhoneアプリ開発Swift講座無料セミナー(appcre.com)
iPhoneアプリ開発Swift講座無料セミナー(appcre.com)
Haruyoshi Kuwamura
cochica
cochica
Hiroki Yoshida
Swift愛好会_ライブラリを使わずにゴリゴリと
Swift愛好会_ライブラリを使わずにゴリゴリと
Sachiko Kajishima
コードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみた
コードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみた
Shintaro Ito
Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2
Kanako Kobayashi
マルチデバイスに対応するためのAuto layout
マルチデバイスに対応するためのAuto layout
asakahara
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Masaru Gushiken
iOSでライブラリを提供する際に気をつけたいこと
iOSでライブラリを提供する際に気をつけたいこと
asakahara
TypeScriptで作る型安全FirefoxOSアプリ
TypeScriptで作る型安全FirefoxOSアプリ
progre
ゲームエンジンの中の話
ゲームエンジンの中の話
Masayoshi Kamai
多言語学習アプリを作成してみよう
多言語学習アプリを作成してみよう
korune ☆
できるだけUI系のライブラリを用いないアニメーションを盛り込んだサンプル実装まとめ(追加版)
できるだけUI系のライブラリを用いないアニメーションを盛り込んだサンプル実装まとめ(追加版)
Fumiya Sakai
AngularでAmebaコミュニティサービス開発
AngularでAmebaコミュニティサービス開発
Yusuke Goto
Swift事情2014夏 ~ Swift入門 beta6対応
Swift事情2014夏 ~ Swift入門 beta6対応
Tomoki Hasegawa
Uiテスト@yidev
Uiテスト@yidev
Yusuke Kita
capybara で快適なテスト生活を
capybara で快適なテスト生活を
Ryunosuke SATO
Embedded framework and so on
Embedded framework and so on
toyship
最近のSpringFramework2013 #jjug #jsug #SpringFramework
最近のSpringFramework2013 #jjug #jsug #SpringFramework
Toshiaki Maki
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
Masayuki KaToH
【東京】ドコモのAIエージェント基盤「セバスチャン」勉強会【#3】
【東京】ドコモのAIエージェント基盤「セバスチャン」勉強会【#3】
Nishida Kansuke
Kyakusaki.rb
Kyakusaki.rb
Yasuyuki Fujikawa
Swift 3 その基本ルールを眺める #cswift
Swift 3 その基本ルールを眺める #cswift
Tomohiro Kumagai
確実に良くするUI/UX設計
確実に良くするUI/UX設計
Takayuki Fukatsu
スマホアプリ開発のワークフロー
スマホアプリ開発のワークフロー
Kouhei Suzuki
Weitere ähnliche Inhalte
Was ist angesagt?
Swift愛好会_ライブラリを使わずにゴリゴリと
Swift愛好会_ライブラリを使わずにゴリゴリと
Sachiko Kajishima
コードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみた
コードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみた
Shintaro Ito
Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2
Kanako Kobayashi
マルチデバイスに対応するためのAuto layout
マルチデバイスに対応するためのAuto layout
asakahara
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Masaru Gushiken
iOSでライブラリを提供する際に気をつけたいこと
iOSでライブラリを提供する際に気をつけたいこと
asakahara
TypeScriptで作る型安全FirefoxOSアプリ
TypeScriptで作る型安全FirefoxOSアプリ
progre
ゲームエンジンの中の話
ゲームエンジンの中の話
Masayoshi Kamai
多言語学習アプリを作成してみよう
多言語学習アプリを作成してみよう
korune ☆
できるだけUI系のライブラリを用いないアニメーションを盛り込んだサンプル実装まとめ(追加版)
できるだけUI系のライブラリを用いないアニメーションを盛り込んだサンプル実装まとめ(追加版)
Fumiya Sakai
AngularでAmebaコミュニティサービス開発
AngularでAmebaコミュニティサービス開発
Yusuke Goto
Swift事情2014夏 ~ Swift入門 beta6対応
Swift事情2014夏 ~ Swift入門 beta6対応
Tomoki Hasegawa
Uiテスト@yidev
Uiテスト@yidev
Yusuke Kita
capybara で快適なテスト生活を
capybara で快適なテスト生活を
Ryunosuke SATO
Embedded framework and so on
Embedded framework and so on
toyship
最近のSpringFramework2013 #jjug #jsug #SpringFramework
最近のSpringFramework2013 #jjug #jsug #SpringFramework
Toshiaki Maki
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
Masayuki KaToH
【東京】ドコモのAIエージェント基盤「セバスチャン」勉強会【#3】
【東京】ドコモのAIエージェント基盤「セバスチャン」勉強会【#3】
Nishida Kansuke
Kyakusaki.rb
Kyakusaki.rb
Yasuyuki Fujikawa
Swift 3 その基本ルールを眺める #cswift
Swift 3 その基本ルールを眺める #cswift
Tomohiro Kumagai
Was ist angesagt?
(20)
Swift愛好会_ライブラリを使わずにゴリゴリと
Swift愛好会_ライブラリを使わずにゴリゴリと
コードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみた
コードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみた
Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2
マルチデバイスに対応するためのAuto layout
マルチデバイスに対応するためのAuto layout
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
iOSでライブラリを提供する際に気をつけたいこと
iOSでライブラリを提供する際に気をつけたいこと
TypeScriptで作る型安全FirefoxOSアプリ
TypeScriptで作る型安全FirefoxOSアプリ
ゲームエンジンの中の話
ゲームエンジンの中の話
多言語学習アプリを作成してみよう
多言語学習アプリを作成してみよう
できるだけUI系のライブラリを用いないアニメーションを盛り込んだサンプル実装まとめ(追加版)
できるだけUI系のライブラリを用いないアニメーションを盛り込んだサンプル実装まとめ(追加版)
AngularでAmebaコミュニティサービス開発
AngularでAmebaコミュニティサービス開発
Swift事情2014夏 ~ Swift入門 beta6対応
Swift事情2014夏 ~ Swift入門 beta6対応
Uiテスト@yidev
Uiテスト@yidev
capybara で快適なテスト生活を
capybara で快適なテスト生活を
Embedded framework and so on
Embedded framework and so on
最近のSpringFramework2013 #jjug #jsug #SpringFramework
最近のSpringFramework2013 #jjug #jsug #SpringFramework
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
【東京】ドコモのAIエージェント基盤「セバスチャン」勉強会【#3】
【東京】ドコモのAIエージェント基盤「セバスチャン」勉強会【#3】
Kyakusaki.rb
Kyakusaki.rb
Swift 3 その基本ルールを眺める #cswift
Swift 3 その基本ルールを眺める #cswift
Andere mochten auch
確実に良くするUI/UX設計
確実に良くするUI/UX設計
Takayuki Fukatsu
スマホアプリ開発のワークフロー
スマホアプリ開発のワークフロー
Kouhei Suzuki
Remote Research, The Talk.
Remote Research, The Talk.
bolt peters
Sketchnotes-SF Meetup :: Round 14 [Mon Jan 12, 2015]
Sketchnotes-SF Meetup :: Round 14 [Mon Jan 12, 2015]
Kate Rutter
Designing for Touch... and Beyond - Josh Clark
Designing for Touch... and Beyond - Josh Clark
Uniq UI: Usability, UX, and UI design, consulting and training
Handmock by Concent, Inc.
Handmock by Concent, Inc.
Concent, Inc.
Uxデザイン定義書ワークショップ 20120726 公開版
Uxデザイン定義書ワークショップ 20120726 公開版
Mikihiro Fujii
スクー第1回 ウェブサービスで抑えておくべき法律の概略 nakanishi
スクー第1回 ウェブサービスで抑えておくべき法律の概略 nakanishi
webcampusschoo
[Template]uxデザイン定義書201312
[Template]uxデザイン定義書201312
Mikihiro Fujii
Orchestrating Touchpoints - From Business to Buttons 2014
Orchestrating Touchpoints - From Business to Buttons 2014
Chris Risdon
SxSW 2013: Behavior Change as Value Proposition
SxSW 2013: Behavior Change as Value Proposition
Chris Risdon
ソフトウェア開発を加速させるリーン開発の原則 公開用
ソフトウェア開発を加速させるリーン開発の原則 公開用
ESM SEC
Mind the Gap: Designing the Space Between Devices
Mind the Gap: Designing the Space Between Devices
Josh Clark
IOS/Androidアプリの3つの大事な設計方針
IOS/Androidアプリの3つの大事な設計方針
Ken Morishita
Sketchで変わるワークフロー
Sketchで変わるワークフロー
Asami Yamamoto
Measuring What Matters: A UX Approach to Metrics :: UX Days Tokyo [April 2015]
Measuring What Matters: A UX Approach to Metrics :: UX Days Tokyo [April 2015]
Kate Rutter
モバイルアプリのインタラクションプロトタイピング - 高速に仮説・実行・検証サイクルを回すために
モバイルアプリのインタラクションプロトタイピング - 高速に仮説・実行・検証サイクルを回すために
Keisuke Tada
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜
Kentaro Matsumae
DeNAtechcon_DeNAのセキュリティの取り組みと、スマートフォンセキュリティ(same-origin policy)
DeNAtechcon_DeNAのセキュリティの取り組みと、スマートフォンセキュリティ(same-origin policy)
Toshiharu Sugiyama
Andere mochten auch
(19)
確実に良くするUI/UX設計
確実に良くするUI/UX設計
スマホアプリ開発のワークフロー
スマホアプリ開発のワークフロー
Remote Research, The Talk.
Remote Research, The Talk.
Sketchnotes-SF Meetup :: Round 14 [Mon Jan 12, 2015]
Sketchnotes-SF Meetup :: Round 14 [Mon Jan 12, 2015]
Designing for Touch... and Beyond - Josh Clark
Designing for Touch... and Beyond - Josh Clark
Handmock by Concent, Inc.
Handmock by Concent, Inc.
Uxデザイン定義書ワークショップ 20120726 公開版
Uxデザイン定義書ワークショップ 20120726 公開版
スクー第1回 ウェブサービスで抑えておくべき法律の概略 nakanishi
スクー第1回 ウェブサービスで抑えておくべき法律の概略 nakanishi
[Template]uxデザイン定義書201312
[Template]uxデザイン定義書201312
Orchestrating Touchpoints - From Business to Buttons 2014
Orchestrating Touchpoints - From Business to Buttons 2014
SxSW 2013: Behavior Change as Value Proposition
SxSW 2013: Behavior Change as Value Proposition
ソフトウェア開発を加速させるリーン開発の原則 公開用
ソフトウェア開発を加速させるリーン開発の原則 公開用
Mind the Gap: Designing the Space Between Devices
Mind the Gap: Designing the Space Between Devices
IOS/Androidアプリの3つの大事な設計方針
IOS/Androidアプリの3つの大事な設計方針
Sketchで変わるワークフロー
Sketchで変わるワークフロー
Measuring What Matters: A UX Approach to Metrics :: UX Days Tokyo [April 2015]
Measuring What Matters: A UX Approach to Metrics :: UX Days Tokyo [April 2015]
モバイルアプリのインタラクションプロトタイピング - 高速に仮説・実行・検証サイクルを回すために
モバイルアプリのインタラクションプロトタイピング - 高速に仮説・実行・検証サイクルを回すために
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜
DeNAtechcon_DeNAのセキュリティの取り組みと、スマートフォンセキュリティ(same-origin policy)
DeNAtechcon_DeNAのセキュリティの取り組みと、スマートフォンセキュリティ(same-origin policy)
Ähnlich wie アプリ開発作業の効率改善
アプリの不具合を少なくするために
アプリの不具合を少なくするために
健一 辰濱
Device Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テスト
健一 辰濱
Android 開発, 運用時に使いたいライブラリやサービスの紹介
Android 開発, 運用時に使いたいライブラリやサービスの紹介
健一 辰濱
Robotium を使った UI テスト
Robotium を使った UI テスト
健一 辰濱
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
Toshiyuki Hirata
Voicepic@FukuiMASeminar
Voicepic@FukuiMASeminar
Manabu Shimobe
20151201 私がSeleniumを使ってスクリーンショットを撮るまでに出会った闇の全て
20151201 私がSeleniumを使ってスクリーンショットを撮るまでに出会った闇の全て
Osamu Shimoda
Espresso と Firebase Test Lab で Android アプリのテストを自動化する
Espresso と Firebase Test Lab で Android アプリのテストを自動化する
健一 辰濱
Ansibleは簡単なIT自動化
Ansibleは簡単なIT自動化
You&I
iOSアプリの自動テストをはじめよう
iOSアプリの自動テストをはじめよう
Toshiyuki Hirata
Bluepillを使ったiOS自動テストの並列化
Bluepillを使ったiOS自動テストの並列化
Toshiyuki Hirata
おすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップ
Koichiro Sumi
リモート・スマホ・レンタル
リモート・スマホ・レンタル
NTT Resonant Technology Inc.
アウトプットのすすめ
アウトプットのすすめ
Satoshi Oikawa
kintone x Sansan連携事始め~カスタマイズまで
kintone x Sansan連携事始め~カスタマイズまで
Katsuki Ito
STFとAppiumをもちいたAndroidアプリの自動テスト
STFとAppiumをもちいたAndroidアプリの自動テスト
Toshiyuki Hirata
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
Kentaro Matsumae
Redmineプラグイン導入・開発入門
Redmineプラグイン導入・開発入門
Minoru Maeda
iOSアプリにおけるリリースフローとCI環境
iOSアプリにおけるリリースフローとCI環境
Toshiyuki Hirata
Ossを使ったazureでのdev ops
Ossを使ったazureでのdev ops
裕貴 荒井
Ähnlich wie アプリ開発作業の効率改善
(20)
アプリの不具合を少なくするために
アプリの不具合を少なくするために
Device Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テスト
Android 開発, 運用時に使いたいライブラリやサービスの紹介
Android 開発, 運用時に使いたいライブラリやサービスの紹介
Robotium を使った UI テスト
Robotium を使った UI テスト
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
Voicepic@FukuiMASeminar
Voicepic@FukuiMASeminar
20151201 私がSeleniumを使ってスクリーンショットを撮るまでに出会った闇の全て
20151201 私がSeleniumを使ってスクリーンショットを撮るまでに出会った闇の全て
Espresso と Firebase Test Lab で Android アプリのテストを自動化する
Espresso と Firebase Test Lab で Android アプリのテストを自動化する
Ansibleは簡単なIT自動化
Ansibleは簡単なIT自動化
iOSアプリの自動テストをはじめよう
iOSアプリの自動テストをはじめよう
Bluepillを使ったiOS自動テストの並列化
Bluepillを使ったiOS自動テストの並列化
おすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップ
リモート・スマホ・レンタル
リモート・スマホ・レンタル
アウトプットのすすめ
アウトプットのすすめ
kintone x Sansan連携事始め~カスタマイズまで
kintone x Sansan連携事始め~カスタマイズまで
STFとAppiumをもちいたAndroidアプリの自動テスト
STFとAppiumをもちいたAndroidアプリの自動テスト
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
Redmineプラグイン導入・開発入門
Redmineプラグイン導入・開発入門
iOSアプリにおけるリリースフローとCI環境
iOSアプリにおけるリリースフローとCI環境
Ossを使ったazureでのdev ops
Ossを使ったazureでのdev ops
Mehr von 健一 辰濱
地方創生ワカモノ会合
地方創生ワカモノ会合
健一 辰濱
Google Analytics のデータ分析ハンズオン
Google Analytics のデータ分析ハンズオン
健一 辰濱
Sansan Tech Meetup Androidエンジニアが振り返る Google I/O
Sansan Tech Meetup Androidエンジニアが振り返る Google I/O
健一 辰濱
知っておきたいFirebase の色んな上限について
知っておきたいFirebase の色んな上限について
健一 辰濱
Android 開発の昔と今
Android 開発の昔と今
健一 辰濱
Firebase Extensions はじめの一歩
Firebase Extensions はじめの一歩
健一 辰濱
Firebase & BigQuery で Android アプリの成⻑を支える
Firebase & BigQuery で Android アプリの成⻑を支える
健一 辰濱
GDG DevFest Tokyo 2019 Day2 Special Hands-on
GDG DevFest Tokyo 2019 Day2 Special Hands-on
健一 辰濱
Firebase Summit 2019 Recap
Firebase Summit 2019 Recap
健一 辰濱
Cloud Firestore を使って、Polling をやめたい話
Cloud Firestore を使って、Polling をやめたい話
健一 辰濱
Firebase hands on in Matsuyama
Firebase hands on in Matsuyama
健一 辰濱
インドのインターネット環境との戦い方
インドのインターネット環境との戦い方
健一 辰濱
インドの低速なネットワーク環境の攻略法
インドの低速なネットワーク環境の攻略法
健一 辰濱
DroidKaigi 2018 参加報告会 Closing
DroidKaigi 2018 参加報告会 Closing
健一 辰濱
企業スポンサー
企業スポンサー
健一 辰濱
参加したセッションのピックアップ
参加したセッションのピックアップ
健一 辰濱
CFP(Call For Paper)を出す話
CFP(Call For Paper)を出す話
健一 辰濱
DroidKaigi 2018 参加報告会
DroidKaigi 2018 参加報告会
健一 辰濱
DroidKaigi アプリの内部を見る
DroidKaigi アプリの内部を見る
健一 辰濱
Java で書かれた Android アプリに Kotlin を適用させていく
Java で書かれた Android アプリに Kotlin を適用させていく
健一 辰濱
Mehr von 健一 辰濱
(20)
地方創生ワカモノ会合
地方創生ワカモノ会合
Google Analytics のデータ分析ハンズオン
Google Analytics のデータ分析ハンズオン
Sansan Tech Meetup Androidエンジニアが振り返る Google I/O
Sansan Tech Meetup Androidエンジニアが振り返る Google I/O
知っておきたいFirebase の色んな上限について
知っておきたいFirebase の色んな上限について
Android 開発の昔と今
Android 開発の昔と今
Firebase Extensions はじめの一歩
Firebase Extensions はじめの一歩
Firebase & BigQuery で Android アプリの成⻑を支える
Firebase & BigQuery で Android アプリの成⻑を支える
GDG DevFest Tokyo 2019 Day2 Special Hands-on
GDG DevFest Tokyo 2019 Day2 Special Hands-on
Firebase Summit 2019 Recap
Firebase Summit 2019 Recap
Cloud Firestore を使って、Polling をやめたい話
Cloud Firestore を使って、Polling をやめたい話
Firebase hands on in Matsuyama
Firebase hands on in Matsuyama
インドのインターネット環境との戦い方
インドのインターネット環境との戦い方
インドの低速なネットワーク環境の攻略法
インドの低速なネットワーク環境の攻略法
DroidKaigi 2018 参加報告会 Closing
DroidKaigi 2018 参加報告会 Closing
企業スポンサー
企業スポンサー
参加したセッションのピックアップ
参加したセッションのピックアップ
CFP(Call For Paper)を出す話
CFP(Call For Paper)を出す話
DroidKaigi 2018 参加報告会
DroidKaigi 2018 参加報告会
DroidKaigi アプリの内部を見る
DroidKaigi アプリの内部を見る
Java で書かれた Android アプリに Kotlin を適用させていく
Java で書かれた Android アプリに Kotlin を適用させていく
アプリ開発作業の効率改善
1.
> アプリ開発作業の効率改善 2015/07/09 2015/07/09 日経電子版×Sansanアプリ開発プロジェクト成功への道 〜アプリ開発者勉強会Vol.3 Sansan株式会社 辰濱健一
2.
Copyright © 2014
Sansan, Inc. All rights reserved. > Agenda 1 • 自己紹介 • テスト自動化 • テスト以外の作業の自動化 • デザイナとの連携 • iOS / Android で同じ仕様のアプリを効率良く作るた めの工夫
3.
> 自己紹介 2015/07/09
4.
Copyright © 2014
Sansan, Inc. All rights reserved. > 自己紹介 3 • 辰濱健一( kenichi.tatsuhama) • Sansan 株式会社 Sansan 開発部 • 神山ラボ勤務(徳島現地採用) • Android 版 Sansan アプリ実装担当 &アプリチームリーダ • 通勤電車を避け、3社連続徳島勤務中 • 趣味 • 音楽 • エレクトーン、トランペット、篠笛(阿波踊り) • 旅行 • 黒部立山アルペンルートや伊豆諸島がお気に入りスポット • 次は小笠原諸島に行きたい
5.
Copyright © 2014
Sansan, Inc. All rights reserved. > Sansan株式会社 4 モバイルアプリエンジニアは、2つの事業部で6人のメンバー ・Sansan … 2名 ・Eight … 4名
6.
Copyright © 2014
Sansan, Inc. All rights reserved. > 神山ラボ 5 • 築70年の木造古民家(3棟) • 略歴 • 2010年設置 • 〜2013/11:合宿所 • 2013/11〜:常駐メンバーのいる開発拠点に • 家具家電、畑付き、風呂トイレセパレート • 家賃:数万円 / 月 • インターネット接続:光回線 • 最寄り駅まで徒歩15分 • 改装OK物件
7.
Copyright © 2014
Sansan, Inc. All rights reserved. > 神山での仕事(良いこと) 6 • 通勤が楽、静かで広々していて、高いパフォーマンス の状態で仕事に集中できる • 業務上必要なコミュニケーションは、Github, Skype, Slack 等のツールで意外となんとでもなる
8.
Copyright © 2014
Sansan, Inc. All rights reserved. > 神山での仕事(難点) 7 • ネットワーク状態にコミュニケーションが左右される • 開発チーム外の人に直接話しかけられない • 視察・取材などの業務も伴う • 自然環境との戦い(虫、カビ、寒さ…)
9.
> テストの自動化 2015/07/09
10.
Copyright © 2014
Sansan, Inc. All rights reserved. > テスト自動化との関わり 9 • 前々職時代 • 正確さと性能が求められるプロダクト(25名チーム)に おいて、高速化担当にアサインされる誰の箇所であれ、 とにかく遅い箇所は改修して、高速化することがミッ ション • 但し、品質面でも性能面でもデグレードは許されない • QA チームはあったが、細かい部分まで手は回らない… • なのにテスト環境・パフォーマンス観測環境がない。。。 → UWSC を用いて、UI 自動テストを導入
11.
Copyright © 2014
Sansan, Inc. All rights reserved. > テスト自動化との関わり 10 • Sansan 株式会社にて • iOS 担当:1名、Android 担当:1名 • 法人向け Sansan サービスには Web 版があるものの、 アプリの利用促進がなされている • 海外展開においては、開発のスピード感が求められてい る • 毎年新しい OS 、新しい機種での動作確認が必要 • なのに QA チームはない… → スマホアプリでも UI 自動テストの導入を!
12.
Copyright © 2014
Sansan, Inc. All rights reserved. > スマホアプリの自動テストライブラリ 11 - Android 専用 - Robotium - monkeyrunner - Espresso - など… - iOS 専用 - KIF - Kiwi - など… - ハイブリッド - Appium - Calabash - MonkeyTALK - など…
13.
Copyright © 2014
Sansan, Inc. All rights reserved. > 選定したライブラリ 12 • Android 版 … Robotium • Android 実装と同じ Java 言語で記述 • アプリケーション内部のオブジェクトを参照できる • UI に見えない内部の値のチェックもできる • DB にもアクセスできるのでテストケースを動的生成できる → サーバ DB 状態の変更にも強い • ただし、リリースビルドでは使えない… ※リリースビルドでも使える appium などのライブラリもある • iOS 版 … KIF • 社内他チームでも先行調査をしており、ノウハウ共有の ためにライブラリを合わせた
14.
Copyright © 2014
Sansan, Inc. All rights reserved. > テスト項目 13 • まずは「広く浅く」のリグレッションテストを自動化 • 主要画面の主要機能のみ自動化 • 例) • ログイン画面 • ログインできること ← これだけ • パスワードが空の時にエラーが表示されること ← しない • 未登録ユーザの時エラーが表示されること ← しない • ユーザ一覧画面 • ユーザタップで名刺一覧画面に遷移すること • 名刺一覧画面 • 名刺タップで名刺詳細画面に遷移すること • バックキー押下でユーザ一覧画面に戻ること
15.
Copyright © 2014
Sansan, Inc. All rights reserved. > テストコードの例 14 - ログイン処理 - メールアドレス入力欄を取得 - パスワード入力欄を取得 - メールアドレスを入力 - パスワードを入力 - ログインボタンを押す テストライブラリをラッ プして可読性確保!
16.
Copyright © 2014
Sansan, Inc. All rights reserved. > デモ動画 15 • 2014/11 時点の動画です • http://youtu.be/scY_RPgfxeY • 4分ぐらいありますが、発表時間の都合上ちょっとだ け…
17.
Copyright © 2014
Sansan, Inc. All rights reserved. > 自動テスト導入の効果 16 • デグレードの早期発見・防止につながった • 実際に開発中のミスを検出し、デグレードを未然に防いだ • 開発サーバのデグレードを検出した • 大規模な修正も行いやすくなった • 何度でもテストを簡単に実行できる • 作業効率UP • 離席中・昼食中・ミーティング中にでもテストができる • テストに割く時間を開発に充てることができる • 新しい OS が出てもテスト工数を割かなくて良い
18.
Copyright © 2014
Sansan, Inc. All rights reserved. > アドバイス 17 • UI テストは仕様変更に弱いので、書きすぎない • SLEEP じゃなくて WAIT で • 「通信が終わったら」「ぐるぐるが消えたら」… • 操作の限界はあるので、適度にあきらめること • 届いたメールの URL をクリックしてブラウザに…!? • アプリを終了させて再起動した時に…? • テストの目的で分割する • スモークテスト … 広く浅く、最低限の確認 • 機能テスト … その機能の本格的な確認 • スクリーンショット収集 • パフォーマンス計測
19.
Copyright © 2014
Sansan, Inc. All rights reserved. > さらなるテストに向けて… 18 • 操作中に取っている各種ログの活用 • テスト専用使い捨て環境の用意
20.
Copyright © 2014
Sansan, Inc. All rights reserved. > 推移時間(イメージ) 19 • パフォーマンス改善の結果確認、性能デグレの検出が できる(かも?) • 通信状態やサーバ状態に大きく左右される気がする… 0 2 4 6 8 10 12 2015/2/27 2015/2/28 2015/3/1 2015/3/2 2015/3/3 2015/3/4 2015/3/5 2015/3/6 ログイン処理 初回同期 名刺画像送信 詳細データ取得 高画質画像データ取得 手動同期処理
21.
Copyright © 2014
Sansan, Inc. All rights reserved. > 通信回数の分析 20 - 呼び出し毎に API名と実行時間を csv ファイルに出力 - Excel のピボットテーブルで集計 - iOS / Android で同じ仕組みを入れれば、 同じ操作で API 呼び出しの違いがわかる! そんなに呼び 出す必要ある の…? サーバ負荷削減のためのボトルネック分析が容易になる Excelマクロ
22.
Copyright © 2014
Sansan, Inc. All rights reserved. > 通信回数の分析(推移) 21 - さっきのデータを実行毎に集計する 呼び出し回数削減施策導入
23.
Copyright © 2014
Sansan, Inc. All rights reserved. > テスト用の使い捨て環境 22 • 誰もが触る開発環境で自動テストを行っており、他者 によるデータの追加・削除が行われる • そのデータの存在を前提としているテストコードの データが削除されていて失敗したり、件数が増えて同 じ環境でのパフォーマンス計測が行えない • → Docker を用いて、テスト用に毎回同じ環境を作 れる仕組みを導入 • 特殊なデータや条件による過去の不具合が再現しない テストも確認可能に!
24.
> テスト以外の作業の自動化 2015/07/09
25.
Copyright © 2014
Sansan, Inc. All rights reserved. > テスト以外の作業の自動化 24 • 本番ビルド(は、もちろんなので省略) • スクリーンショット収集ツール • イベントトラッキング仕様書と実装のギャップの洗い 出しツール • iOS の未使用文言洗い出しツール • デザインパーツ向けツール
26.
Copyright © 2014
Sansan, Inc. All rights reserved. > スクリーンショット収集ツール 25 • 自動テストライブラリを使って、各画面に遷移しスク リーンショットを保存するだけのテストを実行 • 言語環境(日本語 / 英語)を切り替えてキャプチャ • 色んな端末で実行して結果を集約
27.
Copyright © 2014
Sansan, Inc. All rights reserved. > スクショ一覧 26 画面名→ 画面名→ 画面名→ Nexus4 Nexus5 デザイン指示画像(期待値) ※元サイズが違うけど、 今は同じサイズで 表示されている 目で比較する! デザイナのチェックや 意図しないレイアウト崩れの 確認が楽になりました
28.
Copyright © 2014
Sansan, Inc. All rights reserved. > イベント仕様が実装されているかのチェック 27 • Google Spread Sheet にイベントトラッキング用の イベント名一覧の仕様書がある • その1つ1つのトラッキングイベント名を、ソースコー ド内全検索してヒットするかチェック • 仕様にあるが実装にないイベントの検出が容易になり、 実装漏れの検出が可能に! • Android / iOS 両方に適用可能 ※ Ruby でツールを自作 Android iOS
29.
Copyright © 2014
Sansan, Inc. All rights reserved. > iOS 未使用文言洗い出しツール 28 • 基本的には、前述と同じ仕組み。 • Localizable.string のキー部分を抜き出して、ソース コード全行検索 (Android の Lint みたいなのがあればいいのに…)
30.
Copyright © 2014
Sansan, Inc. All rights reserved. > デザインパーツ向けツール1 29 「PNG や JPEG 画像を一括最適化するツール」 • 最適化をかけると、 • アプリサイズの削減 • Webページの場合、通信量の削減&高速化 • Git リポジトリの不可削減 などのメリットがある • 一括最適化ツールはあるが、TinyPNG が圧縮率 で勝っているので、TinyPNG の API にフォルダ 以下全部渡すツールを Ruby で作成
31.
Copyright © 2014
Sansan, Inc. All rights reserved. > デザインパーツ向けツール2(製作途中…) 30 「サイズチェックツール」 • Android では、xh, xxh などフォルダに分けて、それ ぞれの画像をデザイナから受け取っている • 「xh フォルダにあるけど、xxh フォルダにない」 • 「xh/icon.png と、xxh/icon.png のサイズに矛盾が ある」 • これらを検出するツールを作成中… (まぁ、Lint がやってくれますけどね…)
32.
> デザイナとの連携 2015/07/09
33.
Copyright © 2014
Sansan, Inc. All rights reserved. > 読み合わせ会 32 • 各種ガイドラインの読み合わせ会を実施 • Android は「マテリアルデザインガイドライン」 • iOS は 「ヒューマンインターフェイスガイドライン」 • 参加者は、開発者&デザイナ • ただ読み合わすだけではなく、実機を持って参加 • 「このアプリのこの動きがそれだ!」 • 「このアプリのこの動きはガイドラインに反してるね」 など開発者&デザイナでライトにに話をしながら進める • デザイナの作業の中で自動化できる箇所はサポート • 前述の一括最適化など…
34.
> iOS /
Android で同じ仕様のア プリを効率良く作るための工夫 2015/07/09
35.
Copyright © 2014
Sansan, Inc. All rights reserved. > 先行実装と移植 34 • 例)iOS で先行実装して、Android は移植する • 効果 • 移植する側の OS 担当者は、試行錯誤の必要がない • 設計が似ることによる、コードレビューや調査のコストダウン • でも、スケジュールによっては難しい… • 規模が大きいけど、同時リリースしたいときとか • 可能なら、機能担当制 • この機能はAさん担当、iOS も Android も作る • iOS & Android 両方のスキルが必要…
36.
Copyright © 2014
Sansan, Inc. All rights reserved. > UI 先行とロジック先行 35 • 対応工数が1ヶ月&同時リリースしたい改修で実施中 • iOS では、UIモックを先行作成 • Android では、API との通信部分やエラーチェックな どのロジックを先行実装 • 後の実装は双方を参考に • 効果 • モックにより、UI/UX の手戻りは最小限に • 仕様考慮漏れの早期洗いだしに
37.
Copyright © 2014
Sansan, Inc. All rights reserved. > ログの活用 36 • iOS / Android とも、開発版のみで共通のログを出力 する • 例) • 通信(パラメータも含む) • イベントトラッキング • これらを突き合わせることで、 相互の動作確認・実装差異 の確認ができる 各種ログ 突き合わせ
38.
Copyright © 2014
Sansan, Inc. All rights reserved. > 同じ操作を iOS / Android で行う 37 • 基本的に同じ仕様なので同じ結果になるはず… 同じ検索文字列で、同じ順番で検索結果が得られているかどうか (左:Android、右:iOS)
39.
> 最後に… 2015/07/09
40.
Copyright © 2014
Sansan, Inc. All rights reserved. 39 人数が少ないので、作業効率化が必要でした。 逆に、人数が少なかったから、効率化について色々と取 り組み、開発作業の効率化について取り組むことができ ました。 さらに開発スピードを上げるためには… > 最後に…
41.
Copyright © 2014
Sansan, Inc. All rights reserved. 40 Sansanは一緒に新しい価値を作っていく 仲間をさがしています。 Ruby, Ruby on Rails (Webアプリケーション) C#,ASP.NET MVC (Webアプリケーション) iOS / Android アプリ - 個人向け名刺管理アプリ「Eight」 - 名刺データ化分散処理システム - 法人向け名刺管理サービス「Sansan」 - 法人向け名刺管理サービス 「Sansan」 - 個人向け名刺管理アプリ「Eight」 エンジニア募集中 Sansan 採用 検索 recruit@sansan.com まで お気軽にご連絡ください。 興味のある方は
42.
Copyright © 2014
Sansan, Inc. All rights reserved. > 関連資料 41 • 「Robotium を使った UI テストとレイアウト確認の 効率化」 http://www.slideshare.net/kenichitatsuhama/robotium-ui もう少しだけ詳しい、自動化の話 • 「Rubyを使ったスマホアプリのUIテスト」 http://www.slideshare.net/kenichitatsuhama/rubyui リリースビルドでも使える自動テストライブラリを調べた話
Jetzt herunterladen