expo:qa16 - am i responsive? test me!
TRANSCRIPT
Am I responsive? Test me!Galen framework
About me• Fernando Martín
• Senior QA Engineer
• Tech lover
• Quasi-blogger http://bit.ly/fer-mg
What am I showing today?
Responsive Web Design
Galen comes to the rescue!
What’s Galen?
What’s Galen?•Human readable• Syntax–Basic –Advanced
• Reports• JS and Java APIs• Selenium integration
Installation1.Download–http://galenframework.com/download/–Last release: 2.2.5
2.Extract
3.Install–Linux/OS X: sudo ./install.sh–Windows: galen.bat
1.Object definitionGalen Spec Language
HTML<body> <div id='search-bar'> <input type='text' name='search' value=''/> <a href='#' class='search-button'>Search</a> </div> <ul id='menu'> <li><a href='#'>Home</a></li>
<li><a href='#'>Blog</a></li> </ul></body>
Galen spec language@objects search-panel id search-bar search-panel-button css #search-bar a menu-item-* css #menu li a
Galen Spec Language2.Object specs
❏ near
❏ below❏ above❏ left-of, right-of❏ inside❏ width❏ height
❏ component❏ Frame
support❏ count❏ color-scheme❏ Image
❏ aligned❏ text❏ visible❏ centered❏ absent❏ contains❏ on
Galen Spec Language3.Advanced object specs
❏ Importing❏ Same spec to multiple objects❏ If statements❏ Loops❏ Warning level❏ Custom rules❏ Custom functions❏ Galen Spec JS API
Galen Spec Language• Ranges
–width 100px –width 50 to 200 px –width > 40 px –width < 40 px –width ~ 100 px–width 30 to 100 % of screen/width
Galen Spec Language
@set headerMargin 10 to 20px
= Header = header-icon: inside header ${headerMargin} top left
• Variables
Galen Spec Language
= Main section = @on *
menu: height 300 px
@on desktop login-button: height 40 px
• Tagging and sections
Galen Spec Language
Running tests• Single page test
→ args:• url• javascript• include/exclude• size• htmlreport• testngreport• jsonreport
$ galen check specFile [args]
Running tests• Example
$ galen check homepage.spec --url “http://example.com” --size “640x480” --include “mobile” --exclude “desktop” --htmlreport “htmlreport-dir”
Running tests• Test suite
→ args:• htmlreport• testngreport• parallel-tests• recursive• filter
$ galen test testSuite [args]
Running tests• Example
$ galen test mytest01.test --testngreport "report/testng.xml" --parallel-tests 2
Reports
Resources• Official website: http://galenframework.com/
• Github: https://github.com/galenframework
• More examples: http://mindengine.net/category/galen/
Let’s code it!
Thank you!Questions?
[email protected]://github.com/fernando-martin
Fernando Martín
http://bit.ly/expoqa-galen