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
220
さいきんの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
770
Make Work Visible in Agile2018 #LINE_DM
poohsunny
1
350
タウンワークをドライブさせるためになんちゃってアジャイルをやめた話 #devsumi #devsumiB / devsumi2018
poohsunny
30
44k
1 test 1 assert ?
poohsunny
0
310
XUTPから学ぶ記述性の高いユニットテスト 〜俺たちを助けるユニットテストへ〜 / xUTP in #xpjug
poohsunny
4
4.9k
XCUITestする時のTIPs 〜あなたを助けるXCUITestへ〜
poohsunny
0
2.9k
コードに思いが伝わる
poohsunny
0
210
横浜タネマキでGebと握手! #yokohamagroovy
poohsunny
0
370
The "yummy" licenses.
poohsunny
0
140
Other Decks in Technology
See All in Technology
Babylon.jsと色々なものを組み合わせる:ブラウザのAPIやガジェットや2D描画ライブラリなど / Babylon.js 勉強会 vol.3
you
PRO
0
160
DMM.com アルファ室採用案内資料
hsugita
1
220
成長をサポートするピープルマネジメントのやり方
sioncojp
8
1.1k
MapLibreとAmazon Location Service
dayjournal
1
190
エンジニア候補者向け資料2024.04.24.pdf
macloud
0
3.3k
BPStudyの200回を中心にIT業界を振り返る。そしてこれから
haru860
3
400
非同期推論システムによるコスト削減と信頼性向上
koki_nishihara
1
360
「スニダン」開発組織の構造に込めた意図 ~組織作りはパッションや政治ではない!~
rinchsan
4
610
Max out Local LLM in Challenging Environments
sashimimochi
1
110
R3のコードから見る実践LINQ実装最適化・コンカレントプログラミング実例
neuecc
3
2.4k
止まらないLinuxシステムを構築する_高信頼性クラスタ入門
koedoyoshida
1
200
On Your Data を超えていく!
hirotomotaguchi
2
750
Featured
See All Featured
WebSockets: Embracing the real-time Web
robhawkes
59
7k
A Philosophy of Restraint
colly
197
16k
Gamification - CAS2011
davidbonilla
77
4.6k
RailsConf 2023
tenderlove
8
550
Designing for humans not robots
tammielis
248
25k
10 Git Anti Patterns You Should be Aware of
lemiorhan
649
58k
KATA
mclloyd
16
12k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
20
1.6k
Rails Girls Zürich Keynote
gr2m
91
13k
Building Adaptive Systems
keathley
32
1.9k
Product Roadmaps are Hard
iamctodd
45
9.7k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
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
ඞࢮͰ͢ʂʂ
͝ڵຯͷ͋Δํͥͻʂʂ
͓͠·͍