Ministry.WebDriver.Extensions
4.0.0
dotnet add package Ministry.WebDriver.Extensions --version 4.0.0
NuGet\Install-Package Ministry.WebDriver.Extensions -Version 4.0.0
<PackageReference Include="Ministry.WebDriver.Extensions" Version="4.0.0" />
paket add Ministry.WebDriver.Extensions --version 4.0.0
#r "nuget: Ministry.WebDriver.Extensions, 4.0.0"
// Install Ministry.WebDriver.Extensions as a Cake Addin #addin nuget:?package=Ministry.WebDriver.Extensions&version=4.0.0 // Install Ministry.WebDriver.Extensions as a Cake Tool #tool nuget:?package=Ministry.WebDriver.Extensions&version=4.0.0
WebDriver.Extensions
This project is set up to provide a basic styled framework to build a page structured model for writing UI Automation tests against in dotnet core or dotnet classic. The attached Google libraries act as samples to create a simple model to run tests against using the framework code in the main libraries. You can use these as a starting point.
Developers - Getting Started
In order to make use of this solution you must have the following installed...
- Visual Studio 2017
- git
- SDKs and Visual Studio Tools for dotnet Core (While the main library will compile for dotnet classic 4.5 and 4.62 as well, the sample code and tests require dotnet core 1.1)
- IE, Edge (on Windows 10 Creators or above), Firefox and Chrome for all of the tests to pass
I have VS 2015 will that do?
If you have Visual Studio 2015 Installed you will have to upgrade to support the *.csproj format.
Additional recommendations
I recommend Sourcetree to supplement command line and Visual Studio for its visualisation.
Build and Test
Once you have cloned this repo and checked out the branch that has been created for you run the following commands in the solution root to download dependencies...
As yourself...
- dotnet restore
You can run tests in Visual Studio 2017 or by using 'dotnet test' on the command line.
Ensure that 'Enable Protected Mode' is turned off in ALL zones in IE.
You will need to make sure that your UI Tests library includes references to any of the Driver packages that you intend to use from nuget to ensure they are added to the output directories...
- PhantomJS: NO LONGER SUPPORTED
- Chrome: Selenium.WebDriver.ChromeDriver v120.0.6099.10900
- IE: Selenium.WebDriver.IEDriver v4.14.0 (On modern setups this can be tricky - Scaling will set the Browser zoom level above 100% which will cause failures. The IE driver is very flaky.)
- Firefox: Selenium.WebDriver.GeckoDriver v0.33.0
- Edge: Selenium.WebDriver.MicrosoftWebDriver v10.0.17134 (This is an annoying one as it needs to match the build of Windows 10 used to test with or it will just fail)
Useful Links
The following links relate to all of the key elements within the project technology stack...
Upgrading v3.x to v4.x
v4 no longer supports older .net Framework versions, except via .netStandard 2.0. v4 no longer supports Phantom JS, due to lack of support in the underlying Selenium code which has been updated.
Tests & Samples
A lot of the tests in the code repo don't run anymore (The nature of a changing web!) If anyone wants to get these running again that would be appreciated. This is a big project and could do with some collaborators.
The Ministry of Technology Open Source Products
Welcome to The Ministry of Technology open source products. All open source Ministry of Technology products are distributed under the MIT License for maximum re-usability. Our other open source repositories can be found here...
Where can I get it?
You can download the package for this project from any of the following package managers...
Contribution guidelines
If you would like to contribute to the project, please contact me.
Who do I talk to?
- Keith Jackson - temporal-net@live.co.uk
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Selenium.WebDriver (>= 4.16.2)
- Selenium.WebDriver.ChromeDriver (>= 120.0.6099.10900)
- Selenium.WebDriver.GeckoDriver (>= 0.33.0)
- Selenium.WebDriver.IEDriver (>= 4.14.0)
- Selenium.WebDriver.MicrosoftWebDriver (>= 10.0.17134)
- System.Linq.Queryable (>= 4.3.0)
-
net6.0
- Selenium.WebDriver (>= 4.16.2)
- Selenium.WebDriver.ChromeDriver (>= 120.0.6099.10900)
- Selenium.WebDriver.GeckoDriver (>= 0.33.0)
- Selenium.WebDriver.IEDriver (>= 4.14.0)
- Selenium.WebDriver.MicrosoftWebDriver (>= 10.0.17134)
- System.Linq.Queryable (>= 4.3.0)
-
net8.0
- Selenium.WebDriver (>= 4.16.2)
- Selenium.WebDriver.ChromeDriver (>= 120.0.6099.10900)
- Selenium.WebDriver.GeckoDriver (>= 0.33.0)
- Selenium.WebDriver.IEDriver (>= 4.14.0)
- Selenium.WebDriver.MicrosoftWebDriver (>= 10.0.17134)
- System.Linq.Queryable (>= 4.3.0)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Ministry.WebDriver.Extensions:
Package | Downloads |
---|---|
Ministry.WebDriver.Configuration
A basic styled framework to build a structured page or component model for writing UI Automation tests. |
|
Ministry.WebDriver.EntityFramework
A basic styled framework to build a structured page or component model for writing UI Automation tests. |
|
Ministry.WebDriver.Api
A basic styled framework to build a structured page or component model for writing UI Automation tests. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
4.0.0 | 359 | 12/29/2023 |
3.0.0 | 1,942 | 2/1/2018 |
2.2.11 | 1,796 | 9/26/2017 |
2.1.10 | 2,109 | 8/2/2017 |
2.1.9 | 1,982 | 8/2/2017 |
2.0.5 | 1,183 | 7/14/2017 |
1.3.5 | 2,489 | 12/3/2014 |
1.3.4.3 | 1,391 | 12/1/2014 |
1.3.4.2 | 1,374 | 12/1/2014 |
1.3.4.1 | 1,373 | 12/1/2014 |
1.3.4 | 1,383 | 12/1/2014 |
1.3.3 | 1,443 | 12/1/2014 |
1.3.2 | 1,388 | 11/28/2014 |
1.3.0.1 | 1,274 | 11/28/2014 |
1.3.0 | 1,314 | 11/28/2014 |
1.2.4.1 | 1,282 | 11/27/2014 |
1.2.4 | 1,405 | 11/27/2014 |
1.2.3.2 | 1,397 | 11/25/2014 |
1.2.3.1 | 1,453 | 11/24/2014 |
1.2.3 | 1,411 | 11/24/2014 |
1.2.2 | 1,438 | 11/24/2014 |
1.2.1 | 1,441 | 11/21/2014 |
1.2.0 | 1,434 | 11/21/2014 |
1.1.0 | 1,540 | 11/18/2014 |
1.0.3 | 1,511 | 11/18/2014 |
1.0.2 | 1,870 | 11/3/2014 |