Width: Keyboard is less than 335mm wide, with feet out sits < 50mm up Height at front From keyboard above, 50mm under Height: My screen height from desk to screen (24″) is 190mm (assuming top of screen should be at my eyeline, that screen is about 20mm too low for me) Edwards is 160mm on […]
Category: Testing
FFox, just: Selenium IDE Selenium IDE implicit wait Also: Firepath Firebug
To see what Xpath text() will see, in Chrome dev tools: Inspect element, and with it selected in Dev-tools->Elements Dev-tools->Console: enter ‘$0.textContent’ This will then display the text content
Some commercial cloud based solutions popping up e.g. https://applitools.com/resources/ Open source: https://www.npmjs.com/package/protractor-image-comparison Image comparison in Automated Testing
Useful if simplistic info in below link however still using page model… Cross platform testing example for Android and 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 […]
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 […]
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 […]
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
https://www.npmjs.com/package/selenium-page-object-generator https://confengine.com/selenium-conf-2016/proposal/2513/selenium-page-object-code-generator https://github.com/naukri-engineering/SeleniumCodeGenerator https://github.com/rickypc/selenium-page-object-generator New as at 2016
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 […]