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
さいきんのGebしってますか? #jggug
Search
PoohSunny
May 13, 2016
Technology
0
260
さいきんのGebしってますか? #jggug
#jggug でのLTです。
https://jggug.doorkeeper.jp/events/43554
PoohSunny
May 13, 2016
Tweet
Share
More Decks by PoohSunny
See All by PoohSunny
ドレイファスモデルの紹介 / introduce Dreyfus model
poohsunny
1
1.1k
Make Work Visible in Agile2018 #LINE_DM
poohsunny
1
400
タウンワークをドライブさせるためになんちゃってアジャイルをやめた話 #devsumi #devsumiB / devsumi2018
poohsunny
30
46k
1 test 1 assert ?
poohsunny
0
390
XUTPから学ぶ記述性の高いユニットテスト 〜俺たちを助けるユニットテストへ〜 / xUTP in #xpjug
poohsunny
4
5.2k
XCUITestする時のTIPs 〜あなたを助けるXCUITestへ〜
poohsunny
0
3k
コードに思いが伝わる
poohsunny
0
270
横浜タネマキでGebと握手! #yokohamagroovy
poohsunny
0
390
The "yummy" licenses.
poohsunny
0
170
Other Decks in Technology
See All in Technology
失敗しないAIエージェント開発:階層的タスク分解の実践
kworkdev
PRO
0
490
2025/3/1 公共交通オープンデータデイ2025
morohoshi
0
120
スクラムというコンフォートゾーンから抜け出そう!プロジェクト全体に目を向けるインセプションデッキ / Inception Deck for seeing the whole project
takaking22
3
310
株式会社Awarefy(アウェアファイ)会社説明資料 / Awarefy-Company-Deck
awarefy
3
12k
[OpsJAWS Meetup33 AIOps] Amazon Bedrockガードレールで守る安全なAI運用
akiratameto
1
140
早くて強い「リアルタイム解析基盤」から広げるマルチドメイン&プロダクト開発
plaidtech
PRO
1
120
エンジニア主導の企画立案を可能にする組織とは?
recruitengineers
PRO
1
350
AIエージェント元年@日本生成AIユーザ会
shukob
1
290
Dify触ってみた。
niftycorp
PRO
0
110
リクルートのエンジニア組織を下支えする 新卒の育成の仕組み
recruitengineers
PRO
2
210
【Snowflake九州ユーザー会#2】BigQueryとSnowflakeを比較してそれぞれの良し悪しを掴む / BigQuery vs Snowflake: Pros & Cons
civitaspo
5
1.6k
Amazon Bedrock 2025 年の熱いアップデート (2025/3 時点)
icoxfog417
PRO
3
450
Featured
See All Featured
Making Projects Easy
brettharned
116
6.1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Practical Orchestrator
shlominoach
186
10k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
660
The Cost Of JavaScript in 2023
addyosmani
47
7.5k
Fireside Chat
paigeccino
35
3.2k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Music & Morning Musume
bryan
46
6.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
Building Applications with DynamoDB
mza
93
6.3k
Transcript
͍͖͞ΜͷGeb ͬͯ͠·͔͢ʁ @PoohSunny 2016/05/13 #jggug
͝ແࠫଡͯ͠·͢
@PoohSunny work: [ "WebΤϯδχΞ", "Gebͷਖ਼͍͠ಡΈํΛ͑Δ" ] community: [ "TDDBC", "Agile
Samurai Base Camp", "ຊSeleniumϢʔβʔίϛϡχςΟ" ]
ΑΖ͘͠ ͓Ͷ͕͍͠·͢
None
ϒϥβΦʔτϝʔγϣϯπʔϧ ݱࡏͷ࠷৽όʔδϣϯ0.13.1
؆ܿͳهड़ import geb.Browser Browser.drive { go "http://myapp.com/login" assert $("h1").text() ==
"Please Login" $("form.login").with { username = "admin" password = "password" login().click() } assert $("h1").text() == "Admin Section" }
Gebͱ͍͑
2011 -> 2016 0.9.0 -> 0.13.1
࠷ۙͷGebͷ Ξοϓσʔτ
None
ϩΰ͕Ͱ͖ͨʂ
0.10.0
NavigatorʹcssϝιουΛՃ1 <div style="float: left">text</div> assert $("div").css("float") == "left" 1 http://www.gebish.org/manual/current/#focus
͓ྡ͞Μͷऔಘ͕Մೳʹ1 <div class="a"> <div class="b"> <p class="c"></p> <p class="d"></p> <p
class="e"></p> </div> <div class="f"></div> </div> assert $("p.d").previous() == $("p.c") assert $("p.d").next() == $("p.e") assert $("p.d").parent() == $("div.b") assert $("div.a").children() == $("div.b").add("div.f") 1 http://www.gebish.org/manual/current/#focus
toWait1 ϖʔδભҠ࣌ͷatνΣοΫʹwait͕͔͔Δ class PageWithTemplateUsingToWaitOption extends Page { static content =
{ asyncPageButton(to: AsyncPage, toWait: true) { $("button") } } } class AsyncPage extends Page { static at = { $("#async-content") } } 1 http://www.gebish.org/manual/current/#focus
0.12.0
WebDriverͷByΛαϙʔτ ݁Ռతʹxpathه๏Λαϙʔτ $(By.xpath('//p[@class="xpath"]'))
ϖʔδϨϕϧatCheckWaiting GebConfig্ͰͷઃఆΛϖʔδຖʹ্ֻ͚Δ class PageWithAtCheckWaiting extends Page { static atCheckWaiting =
true }
ϚχϡΞϧ͕Ascii Docʹ αϯϓϧಈ࡞͢ΔΑ͏ʹ
0.13.0
reportOnTestFailureOnly1 ςετ͕མͪͨ࣌ʮ͚ͩʯϨϙʔτΛऔಘ Spock, JUnit4Ͱαϙʔτ reportOnTestFailureOnly = true 1 http://www.gebish.org/manual/current/#focus
isFocused1 ΤϨϝϯτʹϑΥʔΧε͕͍ͨͬͯΔ͔ waitFor { nameInput.isFocused() } 1 http://www.gebish.org/manual/current/#focus
Geb͕·͢·͢ศརʹʂ
࿕ใ
JJUG CCC (5/21)
None
ඞࢮͰ͢ʂʂ
͝ڵຯͷ͋Δํͥͻʂʂ
͓͠·͍