SlideShare a Scribd company logo
React Selenium
Happy life with React and Selenium!
CI / CD NIGHT (2017/2/9)
TeamSpirit Inc.
@a_kuratani
Akira Kuratani /
@a_kuratani
kuratani
TeamSpirit Inc.
QA
Podcast(migration.fm)
• SPA E2E
• Selenium
• React.js
• React.js
• Selenium
• CI/CD
http://www.slideshare.net/teamspiritjp/240050000idteamspirit-55886980
Selenium WebDriver
E2E
Selenium WebDriver
ReactとSeleniumの幸せな関係
DOM
React.js
React.js
• JUST THE UI
• VIRTUAL DOM
• DATA FLOW
React.js
jQuery
React.js
jQuery React.js
jQuery React.js
ID
DOM
Selenium
DOM
React.js
DOM
ReactとSeleniumの幸せな関係
ReactとSeleniumの幸せな関係
ReactとSeleniumの幸せな関係
1. ID
2. ID
3. ID
4. ID
5. ID
6.
1. ID
🔎
🔎
🔎
2. ID
🔎
🔎
🔎
🔎
🔎
🔎
3. ID
🔎
🔎
🔎
4. ID
5. ID
🔎
🔎
🔎
🔎
🔎
🔎
6.
1. ID
2. ID
3. ID
4. ID
5. ID
6.
•
• Selenium WebDriver DOM
• React.js DOM
•
• 6
•
•
• Page Object 

https://www.oreilly.co.jp/books/9784873117423/
Thank you
Happy life with React and Selenium!
Ad

More Related Content

What's hot (20)

怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション
土岐 孝平
 
Azure API Management 俺的マニュアル
Azure API Management 俺的マニュアルAzure API Management 俺的マニュアル
Azure API Management 俺的マニュアル
貴志 上坂
 
MySQLで論理削除と正しく付き合う方法
MySQLで論理削除と正しく付き合う方法MySQLで論理削除と正しく付き合う方法
MySQLで論理削除と正しく付き合う方法
yoku0825
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
 
SPAのルーティングの話
SPAのルーティングの話SPAのルーティングの話
SPAのルーティングの話
ushiboy
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
Atsushi Nakamura
 
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
Yoshitaka Kawashima
 
オブジェクト指向できていますか?
オブジェクト指向できていますか?オブジェクト指向できていますか?
オブジェクト指向できていますか?
Moriharu Ohzu
 
Where狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキーWhere狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキー
yoku0825
 
RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話
Takuto Wada
 
インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方
Shohei Koyama
 
ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開
Yahoo!デベロッパーネットワーク
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?
Yoshitaka Kawashima
 
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Yoshitaka Kawashima
 
SQLアンチパターン(インデックスショットガン)
SQLアンチパターン(インデックスショットガン)SQLアンチパターン(インデックスショットガン)
SQLアンチパターン(インデックスショットガン)
Tomoaki Uchida
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
 
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうPython 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそう
Ryuji Tsutsui
 
Amazon Cognito使って認証したい?それならSpring Security使いましょう!
Amazon Cognito使って認証したい?それならSpring Security使いましょう!Amazon Cognito使って認証したい?それならSpring Security使いましょう!
Amazon Cognito使って認証したい?それならSpring Security使いましょう!
Ryosuke Uchitate
 
怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション
土岐 孝平
 
Azure API Management 俺的マニュアル
Azure API Management 俺的マニュアルAzure API Management 俺的マニュアル
Azure API Management 俺的マニュアル
貴志 上坂
 
MySQLで論理削除と正しく付き合う方法
MySQLで論理削除と正しく付き合う方法MySQLで論理削除と正しく付き合う方法
MySQLで論理削除と正しく付き合う方法
yoku0825
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
 
SPAのルーティングの話
SPAのルーティングの話SPAのルーティングの話
SPAのルーティングの話
ushiboy
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
Atsushi Nakamura
 
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
Yoshitaka Kawashima
 
オブジェクト指向できていますか?
オブジェクト指向できていますか?オブジェクト指向できていますか?
オブジェクト指向できていますか?
Moriharu Ohzu
 
Where狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキーWhere狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキー
yoku0825
 
RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話
Takuto Wada
 
インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方
Shohei Koyama
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?
Yoshitaka Kawashima
 
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Yoshitaka Kawashima
 
SQLアンチパターン(インデックスショットガン)
SQLアンチパターン(インデックスショットガン)SQLアンチパターン(インデックスショットガン)
SQLアンチパターン(インデックスショットガン)
Tomoaki Uchida
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
 
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうPython 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそう
Ryuji Tsutsui
 
Amazon Cognito使って認証したい?それならSpring Security使いましょう!
Amazon Cognito使って認証したい?それならSpring Security使いましょう!Amazon Cognito使って認証したい?それならSpring Security使いましょう!
Amazon Cognito使って認証したい?それならSpring Security使いましょう!
Ryosuke Uchitate
 

More from Akira Kuratani (20)

[Japan Dreamin' 2022] エンジニアが学ぶカスタマーサクセス
[Japan Dreamin' 2022] エンジニアが学ぶカスタマーサクセス[Japan Dreamin' 2022] エンジニアが学ぶカスタマーサクセス
[Japan Dreamin' 2022] エンジニアが学ぶカスタマーサクセス
Akira Kuratani
 
愛される管理画面の作り方
愛される管理画面の作り方愛される管理画面の作り方
愛される管理画面の作り方
Akira Kuratani
 
Japan dreamin' 2020 - AppExchangeプロダクト開発を続けて見えてきたプラクティス
Japan dreamin' 2020 - AppExchangeプロダクト開発を続けて見えてきたプラクティスJapan dreamin' 2020 - AppExchangeプロダクト開発を続けて見えてきたプラクティス
Japan dreamin' 2020 - AppExchangeプロダクト開発を続けて見えてきたプラクティス
Akira Kuratani
 
Salesforce World Tour Tokyo 2018 愛される AppExchangeアプリを創るべき「3つの理由」
Salesforce World Tour Tokyo 2018 愛される AppExchangeアプリを創るべき「3つの理由」Salesforce World Tour Tokyo 2018 愛される AppExchangeアプリを創るべき「3つの理由」
Salesforce World Tour Tokyo 2018 愛される AppExchangeアプリを創るべき「3つの理由」
Akira Kuratani
 
Salesforce World Tour Tokyo 2017 (SalesforceDX〜Salesforceにも継続的デリバリーを〜)
Salesforce World Tour Tokyo 2017 (SalesforceDX〜Salesforceにも継続的デリバリーを〜)Salesforce World Tour Tokyo 2017 (SalesforceDX〜Salesforceにも継続的デリバリーを〜)
Salesforce World Tour Tokyo 2017 (SalesforceDX〜Salesforceにも継続的デリバリーを〜)
Akira Kuratani
 
静的解析、はじまったな
静的解析、はじまったな静的解析、はじまったな
静的解析、はじまったな
Akira Kuratani
 
AppExchange Growth Hacks - Aiming for the world -
AppExchange Growth Hacks - Aiming for the world -AppExchange Growth Hacks - Aiming for the world -
AppExchange Growth Hacks - Aiming for the world -
Akira Kuratani
 
Tokyo Salesforce DG Meetup 2017新年会〜Advent Calendarふりかえり〜
Tokyo Salesforce DG Meetup 2017新年会〜Advent Calendarふりかえり〜Tokyo Salesforce DG Meetup 2017新年会〜Advent Calendarふりかえり〜
Tokyo Salesforce DG Meetup 2017新年会〜Advent Calendarふりかえり〜
Akira Kuratani
 
Salesforce dug [tokyo] meetup 2016 新年会
Salesforce dug [tokyo] meetup 2016 新年会Salesforce dug [tokyo] meetup 2016 新年会
Salesforce dug [tokyo] meetup 2016 新年会
Akira Kuratani
 
Salesforce DUG meetup #10 MiniHack完全制覇の旅
Salesforce DUG meetup #10 MiniHack完全制覇の旅Salesforce DUG meetup #10 MiniHack完全制覇の旅
Salesforce DUG meetup #10 MiniHack完全制覇の旅
Akira Kuratani
 
Salesforce DUG TOKYO Meetup #9
Salesforce DUG TOKYO Meetup #9Salesforce DUG TOKYO Meetup #9
Salesforce DUG TOKYO Meetup #9
Akira Kuratani
 
Lightning componentの研究ポイントあるいは…
Lightning componentの研究ポイントあるいは…Lightning componentの研究ポイントあるいは…
Lightning componentの研究ポイントあるいは…
Akira Kuratani
 
Salesforce DUG Meetup 2015 新年会
Salesforce DUG Meetup 2015 新年会Salesforce DUG Meetup 2015 新年会
Salesforce DUG Meetup 2015 新年会
Akira Kuratani
 
Salesforce dugもくもく会 #1
Salesforce dugもくもく会 #1Salesforce dugもくもく会 #1
Salesforce dugもくもく会 #1
Akira Kuratani
 
Salesforce dug meetup #6
Salesforce dug meetup #6Salesforce dug meetup #6
Salesforce dug meetup #6
Akira Kuratani
 
Crowd hackchallenge2014 LT
Crowd hackchallenge2014 LTCrowd hackchallenge2014 LT
Crowd hackchallenge2014 LT
Akira Kuratani
 
Salesforce dug meetup #5
Salesforce dug meetup #5Salesforce dug meetup #5
Salesforce dug meetup #5
Akira Kuratani
 
Salesforce DUG meetup #4 LT
Salesforce DUG meetup #4 LTSalesforce DUG meetup #4 LT
Salesforce DUG meetup #4 LT
Akira Kuratani
 
Force.com lightning talks cfj2012 by A.Kuratani
Force.com lightning talks cfj2012 by A.KurataniForce.com lightning talks cfj2012 by A.Kuratani
Force.com lightning talks cfj2012 by A.Kuratani
Akira Kuratani
 
Force.com developers meetup #2 夏サミ、そしてソーシャル・エンタープライズを考える
Force.com developers meetup #2 夏サミ、そしてソーシャル・エンタープライズを考えるForce.com developers meetup #2 夏サミ、そしてソーシャル・エンタープライズを考える
Force.com developers meetup #2 夏サミ、そしてソーシャル・エンタープライズを考える
Akira Kuratani
 
[Japan Dreamin' 2022] エンジニアが学ぶカスタマーサクセス
[Japan Dreamin' 2022] エンジニアが学ぶカスタマーサクセス[Japan Dreamin' 2022] エンジニアが学ぶカスタマーサクセス
[Japan Dreamin' 2022] エンジニアが学ぶカスタマーサクセス
Akira Kuratani
 
愛される管理画面の作り方
愛される管理画面の作り方愛される管理画面の作り方
愛される管理画面の作り方
Akira Kuratani
 
Japan dreamin' 2020 - AppExchangeプロダクト開発を続けて見えてきたプラクティス
Japan dreamin' 2020 - AppExchangeプロダクト開発を続けて見えてきたプラクティスJapan dreamin' 2020 - AppExchangeプロダクト開発を続けて見えてきたプラクティス
Japan dreamin' 2020 - AppExchangeプロダクト開発を続けて見えてきたプラクティス
Akira Kuratani
 
Salesforce World Tour Tokyo 2018 愛される AppExchangeアプリを創るべき「3つの理由」
Salesforce World Tour Tokyo 2018 愛される AppExchangeアプリを創るべき「3つの理由」Salesforce World Tour Tokyo 2018 愛される AppExchangeアプリを創るべき「3つの理由」
Salesforce World Tour Tokyo 2018 愛される AppExchangeアプリを創るべき「3つの理由」
Akira Kuratani
 
Salesforce World Tour Tokyo 2017 (SalesforceDX〜Salesforceにも継続的デリバリーを〜)
Salesforce World Tour Tokyo 2017 (SalesforceDX〜Salesforceにも継続的デリバリーを〜)Salesforce World Tour Tokyo 2017 (SalesforceDX〜Salesforceにも継続的デリバリーを〜)
Salesforce World Tour Tokyo 2017 (SalesforceDX〜Salesforceにも継続的デリバリーを〜)
Akira Kuratani
 
静的解析、はじまったな
静的解析、はじまったな静的解析、はじまったな
静的解析、はじまったな
Akira Kuratani
 
AppExchange Growth Hacks - Aiming for the world -
AppExchange Growth Hacks - Aiming for the world -AppExchange Growth Hacks - Aiming for the world -
AppExchange Growth Hacks - Aiming for the world -
Akira Kuratani
 
Tokyo Salesforce DG Meetup 2017新年会〜Advent Calendarふりかえり〜
Tokyo Salesforce DG Meetup 2017新年会〜Advent Calendarふりかえり〜Tokyo Salesforce DG Meetup 2017新年会〜Advent Calendarふりかえり〜
Tokyo Salesforce DG Meetup 2017新年会〜Advent Calendarふりかえり〜
Akira Kuratani
 
Salesforce dug [tokyo] meetup 2016 新年会
Salesforce dug [tokyo] meetup 2016 新年会Salesforce dug [tokyo] meetup 2016 新年会
Salesforce dug [tokyo] meetup 2016 新年会
Akira Kuratani
 
Salesforce DUG meetup #10 MiniHack完全制覇の旅
Salesforce DUG meetup #10 MiniHack完全制覇の旅Salesforce DUG meetup #10 MiniHack完全制覇の旅
Salesforce DUG meetup #10 MiniHack完全制覇の旅
Akira Kuratani
 
Salesforce DUG TOKYO Meetup #9
Salesforce DUG TOKYO Meetup #9Salesforce DUG TOKYO Meetup #9
Salesforce DUG TOKYO Meetup #9
Akira Kuratani
 
Lightning componentの研究ポイントあるいは…
Lightning componentの研究ポイントあるいは…Lightning componentの研究ポイントあるいは…
Lightning componentの研究ポイントあるいは…
Akira Kuratani
 
Salesforce DUG Meetup 2015 新年会
Salesforce DUG Meetup 2015 新年会Salesforce DUG Meetup 2015 新年会
Salesforce DUG Meetup 2015 新年会
Akira Kuratani
 
Salesforce dugもくもく会 #1
Salesforce dugもくもく会 #1Salesforce dugもくもく会 #1
Salesforce dugもくもく会 #1
Akira Kuratani
 
Salesforce dug meetup #6
Salesforce dug meetup #6Salesforce dug meetup #6
Salesforce dug meetup #6
Akira Kuratani
 
Crowd hackchallenge2014 LT
Crowd hackchallenge2014 LTCrowd hackchallenge2014 LT
Crowd hackchallenge2014 LT
Akira Kuratani
 
Salesforce dug meetup #5
Salesforce dug meetup #5Salesforce dug meetup #5
Salesforce dug meetup #5
Akira Kuratani
 
Salesforce DUG meetup #4 LT
Salesforce DUG meetup #4 LTSalesforce DUG meetup #4 LT
Salesforce DUG meetup #4 LT
Akira Kuratani
 
Force.com lightning talks cfj2012 by A.Kuratani
Force.com lightning talks cfj2012 by A.KurataniForce.com lightning talks cfj2012 by A.Kuratani
Force.com lightning talks cfj2012 by A.Kuratani
Akira Kuratani
 
Force.com developers meetup #2 夏サミ、そしてソーシャル・エンタープライズを考える
Force.com developers meetup #2 夏サミ、そしてソーシャル・エンタープライズを考えるForce.com developers meetup #2 夏サミ、そしてソーシャル・エンタープライズを考える
Force.com developers meetup #2 夏サミ、そしてソーシャル・エンタープライズを考える
Akira Kuratani
 
Ad

ReactとSeleniumの幸せな関係