Category: Testing

Appium cross platform

Useful if simplistic info in below link however still using page model… https://blog.jayway.com/2016/06/30/cross-platform-testing-example-android-ios-using-appium/ Snippet: Another solution is to use the annotations @AndroidFindBy and @iOSFindBy. With this you can have the same element in the page object class with both annotations and thereby different locators for the different platforms. Example: 1 2 3 @AndroidFindBy(id = “btn_signIn”) […]

Automated testing -> Useful short version

http://selendroid.io/ http://ios-driver.github.io/ios-driver/#real Hamcrest matchers replace asserts high degree of complexity easy to understand plain (useful) logging? Examples: allOf – matches if all matchers match (short circuits) anyOf – matches if any matchers match (short circuits) not – matches if the wrapped matcher doesn’t match and vice equalTo – test object equality using the equals method […]

Serenity Test Automation

Focus on screenplay pattern: ( Reminder on ‘SOLID’: http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod https://scotch.io/bar-talk/s-o-l-i-d-the-first-five-principles-of-object-oriented-design The first five principles are principles of class design. They are: SRP The Single Responsibility Principle A class should have one, and only one, reason to change. OCP The Open Closed Principle You should be able to extend a classes behavior, without modifying it. LSP […]

Thoughts on Page Model

Page model alternatives: “Journey” or “Screenplay’ pattern https://www.infoq.com/articles/Beyond-Page-Objects-Test-Automation-Serenity-Screenplay A weak Journey example: http://javing.blogspot.co.nz/2015/12/selenium-automation-design-pattern.html SOLID: https://ideas.riverglide.com/page-objects-refactored-12ec3541990#.ac0o42osj     Perils of Page-Object Pattern from Anand Bagmar   http://michaelpavlakcoding.blogspot.co.nz/2016/06/decomposing-page-objects.html   https://confengine.com/selenium-conf-2014/proposal/348/design-patterns-beyond-the-page-object-an-investigation-into-the-design-patterns-used-while-building-page-objects   State modeling: http://queue.acm.org/detail.cfm?id=2793039        

Snapshot -> mestachs.wordpress.com -> Selenium Best Practices

Useful per: mestachs.wordpress.com/2012/08/13/selenium-best-practices/ Still mostly applies. Snapshotting here for my own benefit as that site is stale. Selenium Best Practices It’s a summary (and few extras) of test_design_considerations Use PageObjects pattern Be fluent with – return this, varargs, generics, – reuse your model and jodatime Be robust and portable – Prefered selector order : id […]