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
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
civicpg
PPTX, PDF
2,134 views
#nds47 WebのテストをPythonでやってエビデンス取得作業から開放?
PythonでSeleniumを使ったテストを紹介 saucelabsのデモ
Engineering
◦
Read more
0
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 33
2
/ 33
3
/ 33
4
/ 33
5
/ 33
6
/ 33
7
/ 33
8
/ 33
9
/ 33
10
/ 33
11
/ 33
12
/ 33
13
/ 33
14
/ 33
15
/ 33
16
/ 33
17
/ 33
18
/ 33
19
/ 33
20
/ 33
21
/ 33
22
/ 33
23
/ 33
24
/ 33
25
/ 33
26
/ 33
27
/ 33
28
/ 33
29
/ 33
30
/ 33
31
/ 33
32
/ 33
33
/ 33
More Related Content
PDF
Seleniumの薄っすい話 百八式 @ 第3回 日本Seleniumユーザーコミュニティ勉強会
by
Hiroshi Toda
PDF
Seleniumをもっと知るための本の話
by
Ryuji Tamagawa
PDF
ApiとE2Eテスト #entapihack
by
nihon buson
PPTX
Selenium WebDriver + python で E2Eテスト自動化
by
JustSystems Corporation
PDF
end to end testing(jscafe15)
by
Ryuma Tsukano
PDF
Selenium with pixiv
by
Kohki Yamagiwa
PPT
PHP agile test tips
by
Tsutomu Chikuba
PPT
ビジネス的に高価値なアジャイルテスト
by
Tsutomu Chikuba
Seleniumの薄っすい話 百八式 @ 第3回 日本Seleniumユーザーコミュニティ勉強会
by
Hiroshi Toda
Seleniumをもっと知るための本の話
by
Ryuji Tamagawa
ApiとE2Eテスト #entapihack
by
nihon buson
Selenium WebDriver + python で E2Eテスト自動化
by
JustSystems Corporation
end to end testing(jscafe15)
by
Ryuma Tsukano
Selenium with pixiv
by
Kohki Yamagiwa
PHP agile test tips
by
Tsutomu Chikuba
ビジネス的に高価値なアジャイルテスト
by
Tsutomu Chikuba
Similar to #nds47 WebのテストをPythonでやってエビデンス取得作業から開放?
PDF
「Selenium実践入門」で学ぶテスト自動化の世界
by
Nozomi Ito
PPTX
Selenium IDE for primer
by
yasukoS
PDF
2015年に「画面テストの動画録画」を作って「流行れ!」 と願ったが、流行らんかった上ロストした話 #seleniumjp
by
Kazuhito Miura
PPTX
Selenium WebDriver,Cypress,TestCafeの違いを調べてみました
by
MaiKaneko4
PDF
JenkinsとSeleniumの活用事例
by
Takeshi Kondo
PDF
【Pycon2012】unittest嫌いがunitestをtesting
by
ido_ojos_jp
KEY
capybara で快適なテスト生活を
by
Ryunosuke SATO
PDF
海外のSeleniumカンファレンスではどんな発表がされているのか2014
by
Nozomi Ito
PDF
PHP Application E2E with Capybara
by
Yoshiaki Yoshida
PPTX
エンドツーエンドテストを自動化したらチームがすごく良くなった@XPまつり2015LT
by
Taichi Watanabe
PDF
PHP Codeception テスト -- 日本語
by
Florent Batard
PPTX
Selenium
by
takeuchi-tk
PPTX
Selenium2でつくるテストケースの構成について
by
yufu yufu
PDF
E2E Test Tools
by
KeepAlive1
PDF
ブラウザのUIテストをしてみた話
by
Mitsushige Ishiguro
「Selenium実践入門」で学ぶテスト自動化の世界
by
Nozomi Ito
Selenium IDE for primer
by
yasukoS
2015年に「画面テストの動画録画」を作って「流行れ!」 と願ったが、流行らんかった上ロストした話 #seleniumjp
by
Kazuhito Miura
Selenium WebDriver,Cypress,TestCafeの違いを調べてみました
by
MaiKaneko4
JenkinsとSeleniumの活用事例
by
Takeshi Kondo
【Pycon2012】unittest嫌いがunitestをtesting
by
ido_ojos_jp
capybara で快適なテスト生活を
by
Ryunosuke SATO
海外のSeleniumカンファレンスではどんな発表がされているのか2014
by
Nozomi Ito
PHP Application E2E with Capybara
by
Yoshiaki Yoshida
エンドツーエンドテストを自動化したらチームがすごく良くなった@XPまつり2015LT
by
Taichi Watanabe
PHP Codeception テスト -- 日本語
by
Florent Batard
Selenium
by
takeuchi-tk
Selenium2でつくるテストケースの構成について
by
yufu yufu
E2E Test Tools
by
KeepAlive1
ブラウザのUIテストをしてみた話
by
Mitsushige Ishiguro
More from civicpg
PDF
オンライン英会話のモチベーション維持!
by
civicpg
PPTX
#nds54 ルーチンワーク自動化の話
by
civicpg
PPTX
#nds53 IoTプラットフォーム・工作でスーヴィード(低温調理)
by
civicpg
PPTX
第52回なんてかんたんなJavaEE
by
civicpg
PPTX
第51回NDS PostgreSQLのデータ型 #nds51
by
civicpg
PPTX
第49回emailを安全んにつかうための心がけ
by
civicpg
PPTX
jupyterの紹介 #nds48
by
civicpg
PPTX
私の好きなPython構文 vol.2 #nds46
by
civicpg
PDF
Amazon SESのメール受信対応でサーバー減らせた話 #nds44
by
civicpg
オンライン英会話のモチベーション維持!
by
civicpg
#nds54 ルーチンワーク自動化の話
by
civicpg
#nds53 IoTプラットフォーム・工作でスーヴィード(低温調理)
by
civicpg
第52回なんてかんたんなJavaEE
by
civicpg
第51回NDS PostgreSQLのデータ型 #nds51
by
civicpg
第49回emailを安全んにつかうための心がけ
by
civicpg
jupyterの紹介 #nds48
by
civicpg
私の好きなPython構文 vol.2 #nds46
by
civicpg
Amazon SESのメール受信対応でサーバー減らせた話 #nds44
by
civicpg
#nds47 WebのテストをPythonでやってエビデンス取得作業から開放?
1.
WebのテストをPythonでやって エビデンス取得作業から開放? 〜Selenium風味〜 #nds47 @civic
2.
お前だれよ • @civic • NDS管理者 •
Python, Java
3.
今日話す内容
4.
今日話す内容 • Pythonがメインではありません • E2Eテストについて •
Seleniumについて • デモ
5.
突然ですが
6.
NDSの発表者は講師ではない
7.
発表者である私自身も使い始めようと調べて いる段階ですので、今わかっている内容につ いて報告するという体で
8.
講師じゃなくても学習中の身で 発表できるのがNDS
9.
講師じゃなくても 学習中の身で 発表できるのが NDS
10.
E2E (End to
End) テスト
11.
E2Eテスト • End to
Endテスト • テスト対象となるシステムを使ってテスト • Webシステムの場合・ブラウザを使って... • UI • Webのネットワーク接続 • サーバーサイドの処理 • データベース
12.
E2Eテスト • 単体テストで確認した項目を再び全部テストするわけ ではない • 詳細な点は単体テストで確認しているので、全体的 なシナリオにそって動作するかを確認する •
テストが大変で、時間もかかるためできるかぎり量 を減らしたい →詳細な内容は単体テスト・結合テストで網羅する
13.
エビデンス • テストがちゃんと実施されたという証拠(エビデンス) • 例 •
画面のスクリーンショット(ちゃんと正常に出力さ れてます) • データベースのダンプ(処理前・処理後) • 操作してスクリーンショットをとってExcelに貼り付け るだけの仕事...
14.
エビデンス 「Xのテスト実施しました!」 「わかった。よくやった」 ・・・ 「不具合だ!Xが怪しい!テストしたのか!」 「しました!」 「ほんとか!」 「ホントです!」つエビデンス 「よし!通れ!」 不具合はあったが、Xについてテストは きちんとおこなわれていた証明になった
15.
Seleniumについて
16.
Selenium • E2Eテストを自動化するツール • 結構古い歴史(2004〜) •
Selenium 2.0で大きく変わった • WebDriver • 昔:ページ内JavaScriptでブラウザを操作 Java他→JSコードに変換→ページに埋め込み • 今:ブラウザの機能でブラウザを操作 各種言語でブラウザの拡張機能を操作
17.
WebDriver Selenium WebDriverでWebアプリのテストが変わる(前編) http://www.atmarkit.co.jp/ait/articles/1210/05/news104.html
18.
WebDriverによって • WebDriverによって • ブラウザを操作するのは各ブラウザごとに用意され た拡張機能で行う(Chromeはブラウザ本体) •
WebDriverへの指示をクライアントライブラリから送 る(HTTP) • クライアントライブラリとしては、HTTPを送るだけ だから様々な言語で用意可能 • Selenium Serverを経由することで離れた場所でも操 作できる→SauceLabsなどのサービス
19.
デモ REPLでブラウザを操作
20.
環境構築 • クライアントライブラリにPythonを使用 • Seleniumモジュールのインストール $
pip install selenium •ipython というREPL環境で試してみます
21.
REPLで確認 from selenium import
webdriver driver = webdriver.Firefox() driver.get("http://www.google.com") q = driver.find_element_by_name('q') q.send_keys("長岡IT開発者勉強会") q.submit() driver.screenshot() driver.quit()
22.
デモ pythonのunittestでテストコード記述
23.
テストプログラム化 • Pythonのテストコードとして記述 • 標準テストライブラリunittestを使用する例 (特にSelenium用に特化しなくてよい) class
MyTest(unittest.TestCase): def test_mytest(self): driver = webdriver.Firefox() driver.get("www.google.com") ....
24.
テストメソッド-前半
25.
テストメソッド-後半
26.
要点をかいつまんで • エレメントの取得 find_element〜 driver.find_element_by_name('q') •
キー入力 element.send_keys('cheese!') • スクリーンショット取得 driver.get_screenshot_as_file("filename") • 待機 ui.WebDriverWait(driver, 10).until(...)
27.
テストコードの記述の仕方については、 ダラダラと書いてしまったが、メンテしやす く読みやすいコードにすべき → ページオブジェクトパターン http://www.seleniumhq.org/docs/06_test_design_considerations.jsp#page-object-design-pattern
28.
SauceLabsを使った クロスブラウザでのテスト
29.
SauceLabs • ブラウザの実行環境を提供してくれるサービス • Selenium対応
Remote WebDriver
30.
デモ SauceLabsでリモートのブラウザでテスト
31.
Remote WebDriver • Remote
WebDriverを使うだけでテストコードは同じ
32.
まとめ
33.
まとめ • Seleniumを使えばブラウザの操作を自動化できる • 各種言語(Pythonふくむ)でテストコードを書ける •
E2Eのテストの書き方は工夫が必要 • すべてを網羅するテストはユニットテストの方で • テストをがんばりすぎない
Download