Browsed by
Series: Building a .Net Core PageFactory Framework

C# and the disappearing PageFactory – My next steps in Selenium testing

C# and the disappearing PageFactory – My next steps in Selenium testing

This entry is part 1 of 5 in the series Building a .Net Core PageFactory Framework

Being an Open Source project maintainer is a thankless task Ask Jim Evans, the maintainer of the C# (aka dotnet) language bindings for Selenium Webdriver as well as as the Internet Explorer driver that I am sure just about everyone who has ever written a Selenium test has used. Until I started my new job at Altitude Angel 16 days ago I had spent very little time worrying about the C# language bindings as I have been working in Java. As…

Read More Read More

C# PageFactory – Why I don’t use properties.

C# PageFactory – Why I don’t use properties.

This entry is part 2 of 5 in the series Building a .Net Core PageFactory Framework

In my most popular post ‘C# and the disappearing PageFactory – My next steps in Selenium testing’ I gave Jim Evans suggested approach of using properties to return the response from your page controllers. I have never used this approach however, and before start discussing how I do build them, I thought I should explain why.

C# PageFactory – Starting with Controllers

C# PageFactory – Starting with Controllers

This entry is part 3 of 5 in the series Building a .Net Core PageFactory Framework

Last time I explained why I use methods rather than properties in making calls to a Selenium WebDriver. This time I am going to start explaining how I go about writing maintainable code in PageController classes to interact with an HTML page through the WebDriver, and try to ground my decisions in the SOLID design prinicples. Note I am calling them controllers rather than Page Objects. I feel that the classic PageObject violates the first of the SOLID design principles,…

Read More Read More

C# PageFactory – Wrap your WebDriver calls

C# PageFactory – Wrap your WebDriver calls

This entry is part 4 of 5 in the series Building a .Net Core PageFactory Framework

In my attempts to keep things simple I am going to explain my approach one thing at a time. To start with I will show a simple approach to making WebDriver calls. Starting point Last time I defined a PageController class that handled basics like Url and PageTitle. I’m not really concerned with those here, but lets merge them with my code from the previous post avoiding using properties. Refactoring As my goal is not to change behaviour, the best…

Read More Read More