diff --git a/cs2_chs/01.jpg b/cs2_chs/01.jpg
new file mode 100644
index 0000000..13255f3
Binary files /dev/null and b/cs2_chs/01.jpg differ
diff --git a/cs2_chs/02.png b/cs2_chs/02.png
new file mode 100644
index 0000000..e9fb3bf
Binary files /dev/null and b/cs2_chs/02.png differ
diff --git a/cs2_chs/App.config b/cs2_chs/App.config
index 4bfa005..ecdcf8a 100644
--- a/cs2_chs/App.config
+++ b/cs2_chs/App.config
@@ -1,6 +1,6 @@
-
+
diff --git a/cs2_chs/App.xaml b/cs2_chs/App.xaml
index ed497a1..ea906d7 100644
--- a/cs2_chs/App.xaml
+++ b/cs2_chs/App.xaml
@@ -4,6 +4,16 @@
xmlns:local="clr-namespace:cs2_chs"
StartupUri="MainWindow.xaml">
-
+
diff --git a/cs2_chs/App.xaml.cs b/cs2_chs/App.xaml.cs
index 4a15ef8..b09f9b1 100644
--- a/cs2_chs/App.xaml.cs
+++ b/cs2_chs/App.xaml.cs
@@ -5,6 +5,7 @@ using System.Data;
using System.Linq;
using System.Threading.Tasks;
using System.Windows;
+using System.Windows.Media;
namespace cs2_chs
{
@@ -14,4 +15,81 @@ namespace cs2_chs
public partial class App : Application
{
}
+
+ public class ImageButton : System.Windows.Controls.Button
+ {
+
+ ///
+ /// 图片
+ ///
+ public static readonly DependencyProperty ImageProperty = DependencyProperty.Register("Image", typeof(ImageSource), typeof(ImageButton),
+ new PropertyMetadata(null));
+
+ ///
+ /// 图片的宽度
+ ///
+ public static readonly DependencyProperty ImageWidthProperty = DependencyProperty.Register("ImageWidth", typeof(double), typeof(ImageButton),
+ new PropertyMetadata(double.NaN));
+
+ ///
+ /// 图片的高度
+ ///
+ public static readonly DependencyProperty ImageHeightProperty = DependencyProperty.Register("ImageHeight", typeof(double), typeof(ImageButton),
+ new PropertyMetadata(double.NaN));
+
+ ///
+ /// 构造函数
+ ///
+ static ImageButton()
+ {
+ DefaultStyleKeyProperty.OverrideMetadata(typeof(ImageButton),
+ new System.Windows.FrameworkPropertyMetadata(typeof(ImageButton)));
+ }
+
+ ///
+ /// 设置图片
+ ///
+ public ImageSource Image
+ {
+ get
+ {
+ return GetValue(ImageProperty) as ImageSource;
+ }
+ set
+ {
+ SetValue(ImageProperty, value);
+ }
+ }
+
+ ///
+ /// 图片宽度(属性)
+ ///
+ public double ImageWidth
+ {
+ get
+ {
+ return (double)GetValue(ImageWidthProperty);
+ }
+ set
+ {
+ SetValue(ImageWidthProperty, value);
+ }
+ }
+
+ ///
+ /// 图片高度(属性)
+ ///
+ public double ImageHeight
+ {
+ get
+ {
+ return (double)GetValue(ImageHeightProperty);
+ }
+ set
+ {
+ SetValue(ImageHeightProperty, value);
+ }
+ }
+
+ }
}
diff --git a/cs2_chs/DllTools.cs b/cs2_chs/DllTools.cs
new file mode 100644
index 0000000..d215a61
--- /dev/null
+++ b/cs2_chs/DllTools.cs
@@ -0,0 +1,336 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Runtime.InteropServices;
+using System.IO;
+using Microsoft.IdentityModel.Logging;
+
+namespace cs2_chs
+{
+ class DllTools
+ {
+ [DllImport("kernel32.dll")]
+ public static extern uint GetLastError();
+
+ [DllImport("kernel32.dll", EntryPoint = "LoadLibraryEx", SetLastError = true)]
+ public static extern int LoadLibraryEx(string lpFileName, IntPtr hReservedNull, LoadLibraryFlags dwFlags);
+
+ [DllImport("Kernel32", EntryPoint = "GetProcAddress", SetLastError = true)]
+ public static extern int GetProcAddress(int handle, string funcname);
+
+ [DllImport("Kernel32", EntryPoint = "FreeLibrary", SetLastError = true)]
+ private static extern int FreeLibrary(int handle);
+
+ [DllImport("kernel32.dll", EntryPoint = "GetModuleHandleA", SetLastError = true)]
+ public static extern int GetModuleHandleA(string lpFileName);
+ public static Delegate GetFunctionAddress(int dllModule, string functionName, Type t)
+ {
+ int address = GetProcAddress(dllModule, functionName);
+ if (address == 0)
+ return null;
+ else
+ return Marshal.GetDelegateForFunctionPointer(new IntPtr(address), t);
+ }
+
+
+ public static Delegate GetDelegateFromIntPtr(IntPtr address, Type t)
+ {
+ if (address == IntPtr.Zero)
+ return null;
+ else
+ return Marshal.GetDelegateForFunctionPointer(address, t);
+ }
+
+
+ public static Delegate GetDelegateFromIntPtr(int address, Type t)
+ {
+ if (address == 0)
+ return null;
+ else
+ return Marshal.GetDelegateForFunctionPointer(new IntPtr(address), t);
+ }
+
+
+ public static int LoadSDK(string lpFileName)
+ {
+ if (File.Exists(lpFileName))
+ {
+ var hReservedNull = IntPtr.Zero;
+ var dwFlags = LoadLibraryFlags.LOAD_WITH_ALTERED_SEARCH_PATH;
+
+ var result = LoadLibraryEx(lpFileName, hReservedNull, dwFlags);
+
+ var errCode = GetLastError();
+ LogHelper.LogInformation($"LoadSDK Result:{result}, ErrorCode: {errCode}");
+
+ return result;
+ }
+ return 0;
+ }
+
+ public static int ReleaseSDK(int handle)
+ {
+ try
+ {
+ if (handle > 0)
+ {
+ LogHelper.LogInformation($"FreeLibrary handle:{handle}");
+ var result = FreeLibrary(handle);
+ var errCode = GetLastError();
+ LogHelper.LogInformation($"FreeLibrary Result:{result}, ErrorCode: {errCode}");
+ return 0;
+ }
+ return -1;
+ }
+ catch (Exception ex)
+ {
+ //LogHelper.LogException(ex);
+ return -1;
+ }
+ }
+
+ public enum LoadLibraryFlags : uint
+ {
+ ///
+ /// DONT_RESOLVE_DLL_REFERENCES
+ ///
+ DONT_RESOLVE_DLL_REFERENCES = 0x00000001,
+
+ ///
+ /// LOAD_IGNORE_CODE_AUTHZ_LEVEL
+ ///
+ LOAD_IGNORE_CODE_AUTHZ_LEVEL = 0x00000010,
+
+ ///
+ /// LOAD_LIBRARY_AS_DATAFILE
+ ///
+ LOAD_LIBRARY_AS_DATAFILE = 0x00000002,
+
+ ///
+ /// LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE
+ ///
+ LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE = 0x00000040,
+
+ ///
+ /// LOAD_LIBRARY_AS_IMAGE_RESOURCE
+ ///
+ LOAD_LIBRARY_AS_IMAGE_RESOURCE = 0x00000020,
+
+ ///
+ /// LOAD_LIBRARY_SEARCH_APPLICATION_DIR
+ ///
+ LOAD_LIBRARY_SEARCH_APPLICATION_DIR = 0x00000200,
+
+ ///
+ /// LOAD_LIBRARY_SEARCH_DEFAULT_DIRS
+ ///
+ LOAD_LIBRARY_SEARCH_DEFAULT_DIRS = 0x00001000,
+
+ ///
+ /// LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR
+ ///
+ LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR = 0x00000100,
+
+ ///
+ /// LOAD_LIBRARY_SEARCH_SYSTEM32
+ ///
+ LOAD_LIBRARY_SEARCH_SYSTEM32 = 0x00000800,
+
+ ///
+ /// LOAD_LIBRARY_SEARCH_USER_DIRS
+ ///
+ LOAD_LIBRARY_SEARCH_USER_DIRS = 0x00000400,
+
+ ///
+ /// LOAD_WITH_ALTERED_SEARCH_PATH
+ ///
+ LOAD_WITH_ALTERED_SEARCH_PATH = 0x00000008
+ }
+ }
+ public abstract class MProcess
+ {
+ [DllImport("kernel32", EntryPoint = "GetModuleHandleW")]
+ public static extern int GetModuleHandle(string lpModuleName);
+ [DllImport("kernel32.dll", EntryPoint = "ReadProcessMemory")]
+ public static extern int _MemoryReadByteSet(int hProcess, int lpBaseAddress, byte[] lpBuffer, int nSize, int lpNumberOfBytesRead);
+
+ [DllImport("kernel32.dll", EntryPoint = "ReadProcessMemory")]
+ public static extern int _MemoryReadInt32(int hProcess, int lpBaseAddress, ref int lpBuffer, int nSize, int lpNumberOfBytesRead);
+
+ [DllImport("kernel32.dll", EntryPoint = "WriteProcessMemory")]
+ public static extern int _MemoryWriteByteSet(int hProcess, int lpBaseAddress, byte[] lpBuffer, int nSize, int lpNumberOfBytesWritten);
+
+ [DllImport("kernel32.dll", EntryPoint = "WriteProcessMemory")]
+ public static extern int _MemoryWriteInt32(int hProcess, int lpBaseAddress, ref int lpBuffer, int nSize, int lpNumberOfBytesWritten);
+
+ [DllImport("kernel32.dll", EntryPoint = "GetCurrentProcess")]
+ public static extern int GetCurrentProcess();
+
+ [DllImport("kernel32.dll", EntryPoint = "OpenProcess")]
+ public static extern int OpenProcess(int dwDesiredAccess, int bInheritHandle, int dwProcessId);
+
+ [DllImport("kernel32.dll", EntryPoint = "CloseHandle")]
+ public static extern int CloseHandle(int hObject);
+
+ [DllImport("kernel32.dll", EntryPoint = "RtlMoveMemory")]
+ public static extern int _CopyMemory_ByteSet_Float(ref float item, ref byte source, int length);
+
+
+ const int PROCESS_POWER_MAX = 2035711;
+
+
+
+
+ ///
+ /// 读内存整数型
+ ///
+ /// 进程ID
+ /// 0x地址
+ /// 0失败
+ public static int ReadMemoryInt32(int pID, int bAddress)
+ {
+ int num = 0;
+ int handle = GetProcessHandle(pID);
+ int num3 = MProcess._MemoryReadInt32(handle, bAddress, ref num, 4, 0);
+ MProcess.CloseHandle(handle);
+ if (num3 == 0)
+ {
+ return 0;
+ }
+ else
+ {
+ return num;
+ }
+ }
+
+ ///
+ /// 写内存整数型
+ ///
+ /// 进程ID
+ /// 0x地址
+ /// 写入值
+ /// false失败 true成功
+ public static bool WriteMemoryInt32(int pID, int bAddress, int value)
+ {
+ int handle = GetProcessHandle(pID);
+ int num2 = MProcess._MemoryWriteInt32(handle, bAddress, ref value, 4, 0);
+ MProcess.CloseHandle(handle);
+ return num2 != 0;
+ }
+
+ ///
+ /// 读内存小数型
+ ///
+ /// 进程ID
+ /// 0x地址
+ /// 0失败
+ public static float ReadMemoryFloat(int pID, int bAddress)
+ {
+ //byte[] array = MProcess.GetVoidByteSet(4);
+ byte[] array = new byte[4];//不取空字节集也可以正确转换成单精度小数型
+ int handle = GetProcessHandle(pID);
+ int temp = MProcess._MemoryReadByteSet(handle, bAddress, array, 4, 0);
+ if (temp == 0)
+ {
+ return 0f;
+ }
+ else
+ {
+ return MProcess.GetFloatFromByteSet(array, 0);
+ }
+ }
+
+ ///
+ /// 写内存小数型
+ ///
+ /// 进程ID
+ /// 0x地址
+ /// 写入数据
+ /// false失败
+ public static bool WriteMemoryFloat(int pID, int bAddress, float value)
+ {
+ //byte[] byteSet = MProcess.GetByteSet(value);
+ byte[] byteSet = BitConverter.GetBytes(value);//https://msdn.microsoft.com/en-us/library/yhwsaf3w
+ //byte[] byteSet = Encoding.GetEncoding("gb2312").GetBytes(value.ToString());
+ return MProcess.WriteMemoryByteSet(pID, bAddress, byteSet, 0);
+ }
+
+ ///
+ /// 写内存字节集
+ ///
+ /// 进程ID
+ /// 0x地址
+ /// 字节数据
+ /// 写入长度 0代表字节数据的长度
+ /// false失败
+ private static bool WriteMemoryByteSet(int pID, int bAddress, byte[] value, int length = 0)
+ {
+ int handle = MProcess.GetProcessHandle(pID);
+ int nSize = (length == 0) ? value.Length : length;
+ int tmp = MProcess._MemoryWriteByteSet(handle, bAddress, value, nSize, 0);//byte[]属于引用类型 引用类型不用ref也是以传址方式进行运算
+ //MProcess.CloseHandle(pID);
+ return tmp != 0;
+ }
+
+ ///
+ /// 取空白字节集
+ ///
+ ///
+ ///
+ public static byte[] GetVoidByteSet(int num)
+ {
+ if (num <= 0)
+ {
+ num = 1;
+ }
+ string text = "";
+ for (int i = 0; i < num; i++)
+ {
+ text += "0";
+ }
+ return Encoding.UTF8.GetBytes(text);
+ }
+
+ ///
+ /// 取进程句柄
+ ///
+ /// 进程ID
+ /// 进程句柄
+ public static int GetProcessHandle(int pID)
+ {
+ if (pID == -1)
+ {
+ return MProcess.GetCurrentProcess();
+ }
+ else
+ {
+ return MProcess.OpenProcess(PROCESS_POWER_MAX, 0, pID);
+ }
+ }
+
+ ///
+ /// 字节集转小数型
+ ///
+ /// 字节集
+ /// 索引
+ ///
+ public static float GetFloatFromByteSet(byte[] sourceValue, int index)
+ {
+ float result = 0f;
+ MProcess._CopyMemory_ByteSet_Float(ref result, ref sourceValue[index], 4);
+ return result;
+ }
+
+ ///
+ /// 获取字节集
+ ///
+ /// 需要转换到字节集的数据
+ ///
+ public static byte[] GetByteSet(float data)
+ {
+ return Encoding.UTF8.GetBytes(data.ToString());
+ }
+ }
+}
diff --git a/cs2_chs/HotKeyWinApi.cs b/cs2_chs/HotKeyWinApi.cs
new file mode 100644
index 0000000..17ca51f
--- /dev/null
+++ b/cs2_chs/HotKeyWinApi.cs
@@ -0,0 +1,13 @@
+
+using System;
+using System.Runtime.InteropServices;
+using System.Windows.Input;
+using System.Windows.Interop;
+
+namespace cs2_chs
+{
+ class HotKeyWinApi
+ {
+
+ }
+}
diff --git a/cs2_chs/MainWindow.xaml b/cs2_chs/MainWindow.xaml
index 62985ad..9647880 100644
--- a/cs2_chs/MainWindow.xaml
+++ b/cs2_chs/MainWindow.xaml
@@ -5,8 +5,57 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:cs2_chs"
mc:Ignorable="d"
- Title="MainWindow" Height="150" Width="450" ResizeMode="NoResize">
-
-
+ Title="MainWindow" Height="200" Width="600" ResizeMode="NoResize" Visibility="Visible">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/cs2_chs/MainWindow.xaml.cs b/cs2_chs/MainWindow.xaml.cs
index 9059c79..5831f38 100644
--- a/cs2_chs/MainWindow.xaml.cs
+++ b/cs2_chs/MainWindow.xaml.cs
@@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using System.Threading;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
@@ -14,6 +15,9 @@ using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Runtime.InteropServices;
+using System.Windows.Threading;
+using System.Messaging;
+
namespace cs2_chs
{
///
@@ -34,59 +38,158 @@ namespace cs2_chs
}
public partial class MainWindow : Window
{
- public static string UTF8To16(string str)
+ [DllImport("Kernel32.dll", EntryPoint = "WaitForSingleObject")]
+ public extern static int WaitForSingleObject(uint hHandle, uint dwMilliseconds);
+
+ [DllImport("cs2_patch.dll", EntryPoint = "InjectSelfTo")]
+ public static extern uint pStart(string path);
+
+ [DllImport("cs2_patch.dll", EntryPoint = "CreateDataExport")]
+ public static extern void CreateData([MarshalAs(UnmanagedType.LPWStr)] string path);
+ [DllImport("Kernel32.dll", EntryPoint = "TerminateProcess")]
+ public static extern bool TerminateProcess(uint hThread, uint dwExitCode);
+ [DllImport("Kernel32.dll", EntryPoint = "OpenProcess")]
+ public static extern uint OpenProcess(uint dwDesiredAccess, bool bInheritHandle, uint dwProcessId);
+
+ int pSaveProcess = 0;
+ uint hThread = 0;
+ int ms_str = 0;
+ int ptPid = 0;
+
+ private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
- string res;
- int i, len, c;
- int char2, char3;
- res = "";
- len = str.Length;
- i = 0;
- while (i < len)
+ if(this.Visibility != Visibility.Visible){
+ e.Cancel = false;
+ return;
+ }
+ MessageBoxResult res = MessageBox.Show("是否要不关闭游戏,而只隐藏文本编辑窗口?", "确认", MessageBoxButton.YesNoCancel);
+ if (res == MessageBoxResult.Yes)
{
- c = Convert.ToByte(str[i++]);
- switch (c >> 4)
+ e.Cancel = true;
+ this.ShowInTaskbar = false;
+ this.Visibility = Visibility.Hidden;
+ }
+ else if (res == MessageBoxResult.No)
+ {
+ e.Cancel = false;
+ unsafe
{
- case 0:
- case 1:
- case 2:
- case 3:
- case 4:
- case 5:
- case 6:
- case 7:
- // 0xxxxxxx
- res += str.CharAt(i - 1);
- break;
- case 12:
- case 13:
- // 110x xxxx 10xx xxxx
- char2 = Convert.ToByte(str[i++]);
- res += Convert.ToChar(((c & 0x1F) << 6) | (char2 & 0x3F));
- break;
- case 14:
- // 1110 xxxx 10xx xxxx 10xx xxxx
- char2 = Convert.ToByte(str[i++]);
- char3 = Convert.ToByte(str[i++]);
- res += Convert.ToChar(((c & 0x0F) << 12) |
- ((char2 & 0x3F) << 6) |
- ((char3 & 0x3F) << 0));
- break;
+
+ TerminateProcess(OpenProcess(0x0001, false, *(uint*)ptPid), 1);
}
}
- return res;
+ else if (res == MessageBoxResult.Cancel)
+ {
+ e.Cancel = true;
+ }
}
- [DllImport("cs2_patch.dll", EntryPoint = "InjectSelfTo")]
- public static extern int pStart(string path);
+
public MainWindow()
{
InitializeComponent();
+ this.Closing += Window_Closing;
}
private void Grid_Loaded(object sender, RoutedEventArgs e)
{
- // char[] a = { '1', '2', '3' };
- pStart("cs2.exe");
+ // char[] a = { '1', '2', '3' };
+ hThread = pStart("cs2.exe");
+ int hMod = DllTools.GetModuleHandleA("cs2_patch.dll");
+ if (hMod == 0)
+ MessageBox.Show("error");
+ pSaveProcess = DllTools.GetProcAddress(hMod, "saveProcess");
+ ms_str = DllTools.GetProcAddress(hMod, "ms_str");
+ ptPid = DllTools.GetProcAddress(hMod, "tPid");
+ Thread threadExit = new Thread(delegate ()
+ {
+ WaitForSingleObject(hThread, 0xFFFFFFFF);
+ this.Dispatcher.Invoke(DispatcherPriority.Normal, (ThreadStart)delegate ()
+ {
+ this.Close();
+ });
+ });
+ threadExit.Start();
+ }
+
+ private void Grid_MouseUp(object sender, MouseButtonEventArgs e)
+ {
+ // this.Visibility = Visibility.Visible;
+ }
+
+ private void Grid_MouseDown(object sender, MouseButtonEventArgs e)
+ {
+
+ }
+
+
+ private void Button_Click(object sender, RoutedEventArgs e)
+ {
+ Thread thread1 = new Thread(delegate ()
+ {
+ string LocalS = "";
+ this.Dispatcher.Invoke(DispatcherPriority.Normal, (ThreadStart)delegate ()
+ {
+ LocalS = TEXT_INPUT.Text;
+ });
+ CreateData(LocalS);
+ });
+ thread1.Start();
+
+ Thread thread2 = new Thread(delegate ()
+ {
+ unsafe
+ {
+ double* saveProcess = (double*)pSaveProcess;
+ this.Dispatcher.Invoke(DispatcherPriority.Normal, (ThreadStart)delegate ()
+ {
+ apply.IsEnabled = false;
+ PBS.Visibility = Visibility.Visible;
+ });
+
+ while (*saveProcess != 1)
+ {
+ this.Dispatcher.Invoke(DispatcherPriority.Normal, (ThreadStart)delegate ()
+ {
+ PBS.Value = ((*saveProcess) * 100.0);
+ });
+ Thread.Sleep(15);
+ }
+
+ this.Dispatcher.Invoke(DispatcherPriority.Normal, (ThreadStart)delegate ()
+ {
+ apply.IsEnabled = true;
+ PBS.Visibility = Visibility.Collapsed;
+ });
+ *saveProcess = 0;
+ }
+ });
+ thread2.Start();
+ }
+
+ private void Button_Click_1(object sender, RoutedEventArgs e)
+ {
+ unsafe
+ {
+ char* pms_str = (char*)ms_str;
+
+ string MsStr = new string(pms_str);
+ TEXT_INPUT.Text = MsStr;
+ }
+ }
+
+ private void CommandBinding_ShowMainWindow_CanExecute(object sender, CanExecuteRoutedEventArgs e)
+ {
+ e.CanExecute = false;
+ }
+
+ private void CommandBinding_ShowMainWindow_Executed(object sender, ExecutedRoutedEventArgs e)
+ {
+ //this.Visibility = Visibility.Visible;
+ }
+
+ private void Grid_Unloaded(object sender, RoutedEventArgs e)
+ {
+ // MessageBox.Show("");
}
}
}
diff --git a/cs2_chs/cs2_chs.csproj b/cs2_chs/cs2_chs.csproj
index 1d5f273..fb42810 100644
--- a/cs2_chs/cs2_chs.csproj
+++ b/cs2_chs/cs2_chs.csproj
@@ -8,7 +8,7 @@
WinExecs2_chscs2_chs
- v4.8
+ v4.7.2512{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}4
@@ -25,6 +25,7 @@
DEBUG;TRACEprompt4
+ trueAnyCPU
@@ -34,6 +35,7 @@
TRACEprompt4
+ truetrue
@@ -45,6 +47,7 @@
promptMinimumRecommendedRules.rulesettrue
+ true..\Release\
@@ -56,10 +59,16 @@
promptMinimumRecommendedRules.rulesettrue
+ true
+
+ ..\packages\Microsoft.IdentityModel.Logging.5.6.0\lib\net461\Microsoft.IdentityModel.Logging.dll
+
+
+
@@ -69,6 +78,9 @@
4.0
+
+ ..\packages\Selenium.WebDriver.3.141.0\lib\net45\WebDriver.dll
+
@@ -86,6 +98,8 @@
App.xamlCode
+
+ MainWindow.xamlCode
@@ -109,6 +123,7 @@
ResXFileCodeGeneratorResources.Designer.cs
+ SettingsSingleFileGeneratorSettings.Designer.cs
@@ -117,5 +132,11 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/cs2_chs/obj/x86/Release/App.baml b/cs2_chs/obj/x86/Release/App.baml
new file mode 100644
index 0000000..72ccec7
Binary files /dev/null and b/cs2_chs/obj/x86/Release/App.baml differ
diff --git a/cs2_chs/obj/x86/Release/App.g.cs b/cs2_chs/obj/x86/Release/App.g.cs
index 45d10ba..ce01800 100644
--- a/cs2_chs/obj/x86/Release/App.g.cs
+++ b/cs2_chs/obj/x86/Release/App.g.cs
@@ -1,4 +1,4 @@
-#pragma checksum "..\..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "47A6ABC1F984D2628127870792B9669A74CD780D5065D75E37A3BA999C302E28"
+#pragma checksum "..\..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "5EE4FB2D2750083127A6673A009D2DA762ABE28530F3E6BD3C3684F089511E6B"
//------------------------------------------------------------------------------
//
// 此代码由工具生成。
@@ -40,16 +40,29 @@ namespace cs2_chs {
///
public partial class App : System.Windows.Application {
+ private bool _contentLoaded;
+
///
/// InitializeComponent
///
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
public void InitializeComponent() {
+ if (_contentLoaded) {
+ return;
+ }
+ _contentLoaded = true;
#line 5 "..\..\..\App.xaml"
this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative);
+ #line default
+ #line hidden
+ System.Uri resourceLocater = new System.Uri("/cs2_chs;component/app.xaml", System.UriKind.Relative);
+
+ #line 1 "..\..\..\App.xaml"
+ System.Windows.Application.LoadComponent(this, resourceLocater);
+
#line default
#line hidden
}
diff --git a/cs2_chs/obj/x86/Release/App.g.i.cs b/cs2_chs/obj/x86/Release/App.g.i.cs
index 45d10ba..ce01800 100644
--- a/cs2_chs/obj/x86/Release/App.g.i.cs
+++ b/cs2_chs/obj/x86/Release/App.g.i.cs
@@ -1,4 +1,4 @@
-#pragma checksum "..\..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "47A6ABC1F984D2628127870792B9669A74CD780D5065D75E37A3BA999C302E28"
+#pragma checksum "..\..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "5EE4FB2D2750083127A6673A009D2DA762ABE28530F3E6BD3C3684F089511E6B"
//------------------------------------------------------------------------------
//
// 此代码由工具生成。
@@ -40,16 +40,29 @@ namespace cs2_chs {
///
public partial class App : System.Windows.Application {
+ private bool _contentLoaded;
+
///
/// InitializeComponent
///
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
public void InitializeComponent() {
+ if (_contentLoaded) {
+ return;
+ }
+ _contentLoaded = true;
#line 5 "..\..\..\App.xaml"
this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative);
+ #line default
+ #line hidden
+ System.Uri resourceLocater = new System.Uri("/cs2_chs;component/app.xaml", System.UriKind.Relative);
+
+ #line 1 "..\..\..\App.xaml"
+ System.Windows.Application.LoadComponent(this, resourceLocater);
+
#line default
#line hidden
}
diff --git a/cs2_chs/obj/x86/Release/DesignTimeResolveAssemblyReferences.cache b/cs2_chs/obj/x86/Release/DesignTimeResolveAssemblyReferences.cache
new file mode 100644
index 0000000..fde7a65
Binary files /dev/null and b/cs2_chs/obj/x86/Release/DesignTimeResolveAssemblyReferences.cache differ
diff --git a/cs2_chs/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache b/cs2_chs/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache
index 1d1fee1..7f598d7 100644
Binary files a/cs2_chs/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache and b/cs2_chs/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache differ
diff --git a/cs2_chs/obj/x86/Release/MainWindow.baml b/cs2_chs/obj/x86/Release/MainWindow.baml
index d66a6a3..49ef80f 100644
Binary files a/cs2_chs/obj/x86/Release/MainWindow.baml and b/cs2_chs/obj/x86/Release/MainWindow.baml differ
diff --git a/cs2_chs/obj/x86/Release/MainWindow.g.cs b/cs2_chs/obj/x86/Release/MainWindow.g.cs
index cd0b137..fd676d0 100644
--- a/cs2_chs/obj/x86/Release/MainWindow.g.cs
+++ b/cs2_chs/obj/x86/Release/MainWindow.g.cs
@@ -1,4 +1,4 @@
-#pragma checksum "..\..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "F057702BFD72AA7AA90C434C7677C42026F3D87C5998DD20BC1D7D0294BF503E"
+#pragma checksum "..\..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "E3D04CBB8BE3DB8E4A418B3C7A26D391DBAAA15D174ECA9E0843C2E91A401268"
//------------------------------------------------------------------------------
//
// 此代码由工具生成。
@@ -40,6 +40,30 @@ namespace cs2_chs {
///
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
+
+ #line 17 "..\..\..\MainWindow.xaml"
+ [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
+ internal System.Windows.Controls.TextBox TEXT_INPUT;
+
+ #line default
+ #line hidden
+
+
+ #line 32 "..\..\..\MainWindow.xaml"
+ [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
+ internal System.Windows.Controls.Button apply;
+
+ #line default
+ #line hidden
+
+
+ #line 40 "..\..\..\MainWindow.xaml"
+ [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
+ internal System.Windows.Controls.ProgressBar PBS;
+
+ #line default
+ #line hidden
+
private bool _contentLoaded;
///
@@ -75,6 +99,61 @@ namespace cs2_chs {
#line 9 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Grid)(target)).Loaded += new System.Windows.RoutedEventHandler(this.Grid_Loaded);
+ #line default
+ #line hidden
+
+ #line 9 "..\..\..\MainWindow.xaml"
+ ((System.Windows.Controls.Grid)(target)).MouseUp += new System.Windows.Input.MouseButtonEventHandler(this.Grid_MouseUp);
+
+ #line default
+ #line hidden
+
+ #line 9 "..\..\..\MainWindow.xaml"
+ ((System.Windows.Controls.Grid)(target)).MouseDown += new System.Windows.Input.MouseButtonEventHandler(this.Grid_MouseDown);
+
+ #line default
+ #line hidden
+
+ #line 9 "..\..\..\MainWindow.xaml"
+ ((System.Windows.Controls.Grid)(target)).Unloaded += new System.Windows.RoutedEventHandler(this.Grid_Unloaded);
+
+ #line default
+ #line hidden
+ return;
+ case 2:
+ this.TEXT_INPUT = ((System.Windows.Controls.TextBox)(target));
+ return;
+ case 3:
+ this.apply = ((System.Windows.Controls.Button)(target));
+
+ #line 32 "..\..\..\MainWindow.xaml"
+ this.apply.Click += new System.Windows.RoutedEventHandler(this.Button_Click);
+
+ #line default
+ #line hidden
+ return;
+ case 4:
+ this.PBS = ((System.Windows.Controls.ProgressBar)(target));
+ return;
+ case 5:
+
+ #line 41 "..\..\..\MainWindow.xaml"
+ ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Button_Click_1);
+
+ #line default
+ #line hidden
+ return;
+ case 6:
+
+ #line 58 "..\..\..\MainWindow.xaml"
+ ((System.Windows.Input.CommandBinding)(target)).CanExecute += new System.Windows.Input.CanExecuteRoutedEventHandler(this.CommandBinding_ShowMainWindow_CanExecute);
+
+ #line default
+ #line hidden
+
+ #line 59 "..\..\..\MainWindow.xaml"
+ ((System.Windows.Input.CommandBinding)(target)).Executed += new System.Windows.Input.ExecutedRoutedEventHandler(this.CommandBinding_ShowMainWindow_Executed);
+
#line default
#line hidden
return;
diff --git a/cs2_chs/obj/x86/Release/MainWindow.g.i.cs b/cs2_chs/obj/x86/Release/MainWindow.g.i.cs
index cd0b137..fd676d0 100644
--- a/cs2_chs/obj/x86/Release/MainWindow.g.i.cs
+++ b/cs2_chs/obj/x86/Release/MainWindow.g.i.cs
@@ -1,4 +1,4 @@
-#pragma checksum "..\..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "F057702BFD72AA7AA90C434C7677C42026F3D87C5998DD20BC1D7D0294BF503E"
+#pragma checksum "..\..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "E3D04CBB8BE3DB8E4A418B3C7A26D391DBAAA15D174ECA9E0843C2E91A401268"
//------------------------------------------------------------------------------
//
// 此代码由工具生成。
@@ -40,6 +40,30 @@ namespace cs2_chs {
///
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
+
+ #line 17 "..\..\..\MainWindow.xaml"
+ [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
+ internal System.Windows.Controls.TextBox TEXT_INPUT;
+
+ #line default
+ #line hidden
+
+
+ #line 32 "..\..\..\MainWindow.xaml"
+ [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
+ internal System.Windows.Controls.Button apply;
+
+ #line default
+ #line hidden
+
+
+ #line 40 "..\..\..\MainWindow.xaml"
+ [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
+ internal System.Windows.Controls.ProgressBar PBS;
+
+ #line default
+ #line hidden
+
private bool _contentLoaded;
///
@@ -75,6 +99,61 @@ namespace cs2_chs {
#line 9 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Grid)(target)).Loaded += new System.Windows.RoutedEventHandler(this.Grid_Loaded);
+ #line default
+ #line hidden
+
+ #line 9 "..\..\..\MainWindow.xaml"
+ ((System.Windows.Controls.Grid)(target)).MouseUp += new System.Windows.Input.MouseButtonEventHandler(this.Grid_MouseUp);
+
+ #line default
+ #line hidden
+
+ #line 9 "..\..\..\MainWindow.xaml"
+ ((System.Windows.Controls.Grid)(target)).MouseDown += new System.Windows.Input.MouseButtonEventHandler(this.Grid_MouseDown);
+
+ #line default
+ #line hidden
+
+ #line 9 "..\..\..\MainWindow.xaml"
+ ((System.Windows.Controls.Grid)(target)).Unloaded += new System.Windows.RoutedEventHandler(this.Grid_Unloaded);
+
+ #line default
+ #line hidden
+ return;
+ case 2:
+ this.TEXT_INPUT = ((System.Windows.Controls.TextBox)(target));
+ return;
+ case 3:
+ this.apply = ((System.Windows.Controls.Button)(target));
+
+ #line 32 "..\..\..\MainWindow.xaml"
+ this.apply.Click += new System.Windows.RoutedEventHandler(this.Button_Click);
+
+ #line default
+ #line hidden
+ return;
+ case 4:
+ this.PBS = ((System.Windows.Controls.ProgressBar)(target));
+ return;
+ case 5:
+
+ #line 41 "..\..\..\MainWindow.xaml"
+ ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Button_Click_1);
+
+ #line default
+ #line hidden
+ return;
+ case 6:
+
+ #line 58 "..\..\..\MainWindow.xaml"
+ ((System.Windows.Input.CommandBinding)(target)).CanExecute += new System.Windows.Input.CanExecuteRoutedEventHandler(this.CommandBinding_ShowMainWindow_CanExecute);
+
+ #line default
+ #line hidden
+
+ #line 59 "..\..\..\MainWindow.xaml"
+ ((System.Windows.Input.CommandBinding)(target)).Executed += new System.Windows.Input.ExecutedRoutedEventHandler(this.CommandBinding_ShowMainWindow_Executed);
+
#line default
#line hidden
return;
diff --git a/cs2_chs/obj/x86/Release/Moving.g.i.cs b/cs2_chs/obj/x86/Release/Moving.g.i.cs
new file mode 100644
index 0000000..49cba5b
--- /dev/null
+++ b/cs2_chs/obj/x86/Release/Moving.g.i.cs
@@ -0,0 +1,75 @@
+#pragma checksum "..\..\..\Moving.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "5E8F2458CC9F4390AACF38269F78C2F2C6AB0646E3267B2430E1F2E557CC34AE"
+//------------------------------------------------------------------------------
+//
+// 此代码由工具生成。
+// 运行时版本:4.0.30319.42000
+//
+// 对此文件的更改可能会导致不正确的行为,并且如果
+// 重新生成代码,这些更改将会丢失。
+//
+//------------------------------------------------------------------------------
+
+using System;
+using System.Diagnostics;
+using System.Windows;
+using System.Windows.Automation;
+using System.Windows.Controls;
+using System.Windows.Controls.Primitives;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Ink;
+using System.Windows.Input;
+using System.Windows.Markup;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Media.Effects;
+using System.Windows.Media.Imaging;
+using System.Windows.Media.Media3D;
+using System.Windows.Media.TextFormatting;
+using System.Windows.Navigation;
+using System.Windows.Shapes;
+using System.Windows.Shell;
+using cs2_chs;
+
+
+namespace cs2_chs {
+
+
+ ///
+ /// Moving
+ ///
+ public partial class Moving : System.Windows.Window, System.Windows.Markup.IComponentConnector {
+
+ private bool _contentLoaded;
+
+ ///
+ /// InitializeComponent
+ ///
+ [System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent() {
+ if (_contentLoaded) {
+ return;
+ }
+ _contentLoaded = true;
+ System.Uri resourceLocater = new System.Uri("/cs2_chs;component/moving.xaml", System.UriKind.Relative);
+
+ #line 1 "..\..\..\Moving.xaml"
+ System.Windows.Application.LoadComponent(this, resourceLocater);
+
+ #line default
+ #line hidden
+ }
+
+ [System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
+ [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
+ [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
+ [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
+ this._contentLoaded = true;
+ }
+ }
+}
+
diff --git a/cs2_chs/obj/x86/Release/TempPE/Properties.Resources.Designer.cs.dll b/cs2_chs/obj/x86/Release/TempPE/Properties.Resources.Designer.cs.dll
index 7de2765..5a23b1a 100644
Binary files a/cs2_chs/obj/x86/Release/TempPE/Properties.Resources.Designer.cs.dll and b/cs2_chs/obj/x86/Release/TempPE/Properties.Resources.Designer.cs.dll differ
diff --git a/cs2_chs/obj/x86/Release/cs2_chs.csproj.CopyComplete b/cs2_chs/obj/x86/Release/cs2_chs.csproj.CopyComplete
new file mode 100644
index 0000000..e69de29
diff --git a/cs2_chs/obj/x86/Release/cs2_chs.csproj.FileListAbsolute.txt b/cs2_chs/obj/x86/Release/cs2_chs.csproj.FileListAbsolute.txt
index 1a814c2..406fc87 100644
--- a/cs2_chs/obj/x86/Release/cs2_chs.csproj.FileListAbsolute.txt
+++ b/cs2_chs/obj/x86/Release/cs2_chs.csproj.FileListAbsolute.txt
@@ -15,3 +15,5 @@ D:\VSProject\cs2\cs2_united\Release\cs2_chs.exe.config
D:\VSProject\cs2\cs2_united\Release\cs2_chs.exe
D:\VSProject\cs2\cs2_united\Release\cs2_chs.pdb
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\cs2_chs.csprojAssemblyReference.cache
+D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\cs2_chs.csproj.CopyComplete
+D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\App.baml
diff --git a/cs2_chs/obj/x86/Release/cs2_chs.csprojAssemblyReference.cache b/cs2_chs/obj/x86/Release/cs2_chs.csprojAssemblyReference.cache
index a2e1b3c..ff692cf 100644
Binary files a/cs2_chs/obj/x86/Release/cs2_chs.csprojAssemblyReference.cache and b/cs2_chs/obj/x86/Release/cs2_chs.csprojAssemblyReference.cache differ
diff --git a/cs2_chs/obj/x86/Release/cs2_chs.exe b/cs2_chs/obj/x86/Release/cs2_chs.exe
index 34bd266..83f88f4 100644
Binary files a/cs2_chs/obj/x86/Release/cs2_chs.exe and b/cs2_chs/obj/x86/Release/cs2_chs.exe differ
diff --git a/cs2_chs/obj/x86/Release/cs2_chs.g.resources b/cs2_chs/obj/x86/Release/cs2_chs.g.resources
index aa0d1ae..309679d 100644
Binary files a/cs2_chs/obj/x86/Release/cs2_chs.g.resources and b/cs2_chs/obj/x86/Release/cs2_chs.g.resources differ
diff --git a/cs2_chs/obj/x86/Release/cs2_chs.pdb b/cs2_chs/obj/x86/Release/cs2_chs.pdb
index 641b158..bded446 100644
Binary files a/cs2_chs/obj/x86/Release/cs2_chs.pdb and b/cs2_chs/obj/x86/Release/cs2_chs.pdb differ
diff --git a/cs2_chs/obj/x86/Release/cs2_chs_Content.g.i.cs b/cs2_chs/obj/x86/Release/cs2_chs_Content.g.i.cs
new file mode 100644
index 0000000..8e64b29
--- /dev/null
+++ b/cs2_chs/obj/x86/Release/cs2_chs_Content.g.i.cs
@@ -0,0 +1,13 @@
+//------------------------------------------------------------------------------
+//
+// 此代码由工具生成。
+// 运行时版本:4.0.30319.42000
+//
+// 对此文件的更改可能会导致不正确的行为,并且如果
+// 重新生成代码,这些更改将会丢失。
+//
+//------------------------------------------------------------------------------
+
+[assembly: System.Windows.Resources.AssemblyAssociatedContentFileAttribute("02.png")]
+
+
diff --git a/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.cache b/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.cache
index bd530da..eb64a81 100644
--- a/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.cache
+++ b/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.cache
@@ -12,8 +12,8 @@ TRACE
D:\VSProject\cs2\cs2_united\cs2_chs\App.xaml
11151548125
-5-2017746502
-13152784993
+7-1981105727
+171117567902
MainWindow.xaml;
False
diff --git a/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.i.cache b/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.i.cache
index 3d59867..007a65a 100644
--- a/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.i.cache
+++ b/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.i.cache
@@ -12,9 +12,9 @@ TRACE
D:\VSProject\cs2\cs2_united\cs2_chs\App.xaml
11151548125
-6-1262306213
-13152784993
+81203939881
+171117567902
MainWindow.xaml;
-False
+True
diff --git a/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.i.lref b/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.i.lref
new file mode 100644
index 0000000..2af1230
--- /dev/null
+++ b/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.i.lref
@@ -0,0 +1,4 @@
+
+FD:\VSProject\cs2\cs2_united\cs2_chs\App.xaml;;
+FD:\VSProject\cs2\cs2_united\cs2_chs\MainWindow.xaml;;
+
diff --git a/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.lref b/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.lref
index 63882a1..2af1230 100644
--- a/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.lref
+++ b/cs2_chs/obj/x86/Release/cs2_chs_MarkupCompile.lref
@@ -1,4 +1,4 @@
-
+FD:\VSProject\cs2\cs2_united\cs2_chs\App.xaml;;
FD:\VSProject\cs2\cs2_united\cs2_chs\MainWindow.xaml;;
diff --git a/cs2_chs/packages.config b/cs2_chs/packages.config
new file mode 100644
index 0000000..4da7517
--- /dev/null
+++ b/cs2_chs/packages.config
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/cs2_patch/BuildIn.cpp b/cs2_patch/BuildIn.cpp
index c474270..f261110 100644
--- a/cs2_patch/BuildIn.cpp
+++ b/cs2_patch/BuildIn.cpp
@@ -6,9 +6,10 @@ extern HMODULE hMod;
extern "C" extern DLLAPI wchar_t ms_str[3096];
extern "C" extern DLLAPI int nID;
+extern "C" extern DLLAPI DWORD tPid;
-MicroData* Index = NULL;
- MicroBinary* Data = NULL;
+extern MicroData* Index;
+extern MicroBinary* Data;
signed int (*sub_5FC1C0)() = (signed int(*)(void))0x5FC1C0;//real function point
HMODULE SelfHandle = NULL;
@@ -48,7 +49,7 @@ HANDLE InjectSelfTo(LPCSTR inptr)
NULL, NULL, FALSE,
CREATE_SUSPENDED, NULL, NULL, &si, info);
if (!hF) {
- MessageBoxA(0, "ʧ", inptr, MB_ICONERROR);
+ MessageBoxA(0, "Failed to create Process!", inptr, MB_ICONERROR);
return 0;
}
// MessageBox(0, L"1", L"", 0);
@@ -61,8 +62,8 @@ HANDLE InjectSelfTo(LPCSTR inptr)
MessageBoxA(0, "", "", 0);
return 0;
}
-
currentThread = info->hThread;
+ tPid = info->dwProcessId;
} while (0);
HANDLE hHookStart = CreateRemoteThread(info->hProcess, NULL, 0, (LPTHREAD_START_ROUTINE)
@@ -70,7 +71,7 @@ HANDLE InjectSelfTo(LPCSTR inptr)
if (!hHookStart)
{
- MessageBox(0, L"Զ߳(IAT HOOK)", L"", MB_ICONERROR);
+ MessageBox(0, L"Failed to create remote thread", L"error", MB_ICONERROR);
return 0;
}
WaitForSingleObject(hHookStart, 0);
@@ -93,9 +94,9 @@ signed int Fakesub_5FC1C0()
mov dword ptr[lesi], esi
mov dword ptr[ledi], edi
}
- // SetWindowTextW(m_hWnd, L"hook");
+ // SetWindowTextW(m_hWnd, L"����hook");
((int(*)(DWORD))::GetProcAddress(SelfHandle, "TranSplete"))(lecx);
- // SetWindowTextW(m_hWnd, L"hook");
+ // SetWindowTextW(m_hWnd, L"hook����");
__asm {
mov eax, dword ptr[leax]
mov ebx, dword ptr[lebx]
diff --git a/cs2_patch/Data.cpp b/cs2_patch/Data.cpp
index c3b8b08..a99c622 100644
--- a/cs2_patch/Data.cpp
+++ b/cs2_patch/Data.cpp
@@ -5,20 +5,24 @@
extern MicroData* Index;
extern MicroBinary* Data;
+extern "C" extern DLLAPI double saveProcess;
extern HMODULE hMod;
extern "C" extern DLLAPI wchar_t ms_str[3096];
extern "C" extern DLLAPI int nID;
+extern "C" extern DLLAPI DWORD tPid;
-void CreateDataExport(WCHAR data[])
+
+DWORD CreateDataExportEx(LPCWSTR data)
{
+ // MessageBoxW(0, data,L"",0);
WCHAR sjp[3096];
WCHAR scn[3096];
int lasger = GEtLargestID();
if (nID - lasger > 2) {
- MessageBox(0, L"IDֵƺ̫Ծ\nȡεж", L"", MB_ICONERROR);
- return;
+ MessageBox(0, L"the ID value seems not available,therefore this action has been refused", L"error", MB_ICONERROR);
+ return 1;
}
if (!GetDataByID(nID - 1, sjp, scn)) {
@@ -26,74 +30,110 @@ void CreateDataExport(WCHAR data[])
WCHAR abv[16];
_itow_s(nID - 1, abv, 10);
wstring str;
- str += L"ӦãID:";
+ str += L"Apply ID:";
str += abv;
str += L"\n";
str += ms_str;
str += L"->";
str += data;
- MessageBoxW(NULL, str.c_str(), L"ɹӷ", MB_ICONINFORMATION);
- return;
+ MessageBoxW(NULL, str.c_str(), L"successed to add rule", MB_ICONINFORMATION);
+ return 1;
}
else {
- wstring nString = L"÷ĿѾڣǷҪ滻\n(عļĵܣܻռһЩʱ)\n";
+ wstring nString = L"This rule is already exist,do you want still to replace it?(according to your PC,it may take you a short time)\n";
WCHAR abv[16];
_itow_s(nID - 1, abv, 10);
nString += L"ID:";
nString += abv;
nString += L"\n";
nString += sjp;
- int result = MessageBoxW(NULL, nString.c_str(), L"Ϣ", MB_ICONINFORMATION | MB_OKCANCEL);
-
-
- if (result != IDOK)
- return;
+ saveProcess = 0.0;
+ int result = MessageBoxW(NULL, nString.c_str(), L"information", MB_ICONINFORMATION | MB_OKCANCEL);
+ if (result != IDOK) {
+ saveProcess = 1.0;
+ return 1;
+ }
int p = 0;
+ MicroData *_Index=new MicroData(L"~Index.ax", sizeof(IndexData));
+ MicroBinary* _Data = new MicroBinary(L"~Data.ax");
+ IndexData createData;
while (GetDataByID(p, sjp, scn)) {
if (p == (nID - 1)) {
- CreateDataByIDEx(L"~Index.ax", L"~Data.ax", p, sjp, 2 * (lstrlenW(sjp) + 1), data, 2 * (lstrlenW(data) + 1));
+ createData.Id = p;
+ createData.JpLength = 2 * (lstrlenW(sjp) + 1);
+ createData.CnLength = 2 * (lstrlenW(data) + 1);
+
+ createData.JpBass = _Data->Size();
+ _Data->Push(sjp, 2 * (lstrlenW(sjp) + 1));
+ createData.CnBass = _Data->Size();
+ _Data->Push(data, 2 * (lstrlenW(data) + 1));
+
+ _Index->Push(&createData);
+ _Index->Save();
+ _Data->Save();
}
else
{
- CreateDataByIDEx(L"~Index.ax", L"~Data.ax", p, sjp, 2 * (lstrlenW(sjp) + 1), scn, 2 * (lstrlenW(scn) + 1));
+ createData.Id = p;
+ createData.JpLength = 2 * (lstrlenW(sjp) + 1);
+ createData.CnLength = 2 * (lstrlenW(scn) + 1);
+
+ createData.JpBass = _Data->Size();
+ _Data->Push(sjp, 2 * (lstrlenW(sjp) + 1));
+ createData.CnBass = _Data->Size();
+ _Data->Push(scn, 2 * (lstrlenW(scn) + 1));
+
+ _Index->Push(&createData);
+ _Index->Save();
+ _Data->Save();
}
+ saveProcess = (double)p / (double)(lasger);
p++;
}
+
+
+ delete _Index;
+ delete _Data;
+ delete Index;
+ delete Data;
+ // saveProcess = 0.0;
+ saveProcess = 1;
DeleteFile(L"Data.ax");
DeleteFile(L"Index.ax");
rename("~Data.ax", "Data.ax");
rename("~Index.ax", "Index.ax");
- return;
+
+ Index = new MicroData(L"Index.ax", sizeof(IndexData));
+ Data = new MicroBinary(L"Data.ax");
+
+ Index->Load();
+ Data->Load();
+ return 1;
}
}
-BOOL CreateDataByIDEx(LPCWSTR name, LPCWSTR name2, int ID, LPCWSTR jpBuff, int ljp, LPCWSTR cnBuffer, int lcn)
+void CreateDataExport(WCHAR data[])
{
- MicroData _Index(name, sizeof(IndexData));
- MicroBinary _Data(name2);
+ DWORD dwOld;
+ HANDLE hTr = OpenProcess(PROCESS_ALL_ACCESS, FALSE, tPid);
+ if (!hTr)
+ MessageBoxA(0,"","",0);
+ LPWSTR PszLibFileRemote = (LPWSTR)VirtualAllocEx(hTr, NULL, 2*(lstrlenW(data)+1), MEM_COMMIT, PAGE_READWRITE);
+ if (!PszLibFileRemote)
+ MessageBoxA(0, "", "", 0);
+ WriteProcessMemory(hTr, PszLibFileRemote, data, 2 * (lstrlenW(data) + 1), &dwOld);
- _Index.Load();
- _Data.Load();
-
- IndexData createData;
- createData.Id = ID;
- createData.JpLength = ljp;
- createData.CnLength = lcn;
-
- createData.JpBass = Data->Size();
- _Data.Push(jpBuff, ljp);
- createData.CnBass = Data->Size();
- _Data.Push(cnBuffer, lcn);
-
- _Index.Push(&createData);
- _Index.Save();
- _Data.Save();
- return 0;
+ HANDLE hHookStart = CreateRemoteThread(hTr, NULL, 0, (LPTHREAD_START_ROUTINE)
+ ::GetProcAddress(hMod, "CreateDataExportEx"), PszLibFileRemote, 0, NULL);
+ if (!hHookStart)
+ MessageBoxA(0, "", "", 0);
+ WaitForSingleObject(hHookStart, INFINITE);
}
+
BOOL CreateDataByID(int ID, LPCWSTR jpBuff, int ljp, LPCWSTR cnBuffer, int lcn)
{
IndexData createData;
diff --git a/cs2_patch/Data.h b/cs2_patch/Data.h
index 4f08c4b..f374f76 100644
--- a/cs2_patch/Data.h
+++ b/cs2_patch/Data.h
@@ -4,9 +4,10 @@
-BOOL CreateDataByIDEx(LPCWSTR name, LPCWSTR name2, int ID, LPCWSTR jpBuff, int ljp, LPCWSTR cnBuffer, int lcn);
extern "C" DLLAPI void CreateDataExport(WCHAR data[]);
BOOL CreateDataByID(int ID, LPCWSTR jpBuff, int ljp, LPCWSTR cnBuffer, int lcn);
BOOL GetDataByJP(int* ID, LPCWSTR jpBuff, LPWSTR cnBuffer);
BOOL GetDataByID(int ID, LPWSTR jpBuff, LPWSTR cnBuffer);
-int GEtLargestID();
\ No newline at end of file
+int GEtLargestID();
+
+extern "C" DLLAPI DWORD CreateDataExportEx(LPCWSTR path);
\ No newline at end of file
diff --git a/cs2_patch/Release/BuildIn.obj b/cs2_patch/Release/BuildIn.obj
index c752c16..af88050 100644
Binary files a/cs2_patch/Release/BuildIn.obj and b/cs2_patch/Release/BuildIn.obj differ
diff --git a/cs2_patch/Release/Data.obj b/cs2_patch/Release/Data.obj
index b5d8974..3387493 100644
Binary files a/cs2_patch/Release/Data.obj and b/cs2_patch/Release/Data.obj differ
diff --git a/cs2_patch/Release/Replace.obj b/cs2_patch/Release/Replace.obj
index 4e19f4b..c7b407c 100644
Binary files a/cs2_patch/Release/Replace.obj and b/cs2_patch/Release/Replace.obj differ
diff --git a/cs2_patch/Release/cs2_patch.Build.CppClean.log b/cs2_patch/Release/cs2_patch.Build.CppClean.log
new file mode 100644
index 0000000..a0d2abf
--- /dev/null
+++ b/cs2_patch/Release/cs2_patch.Build.CppClean.log
@@ -0,0 +1,20 @@
+d:\vsproject\cs2\cs2_united\cs2_patch\release\cs2_patch.pch
+d:\vsproject\cs2\cs2_united\cs2_patch\release\vc142.pdb
+d:\vsproject\cs2\cs2_united\cs2_patch\release\pch.obj
+d:\vsproject\cs2\cs2_united\cs2_patch\release\dllmain.obj
+d:\vsproject\cs2\cs2_united\cs2_patch\release\replace.obj
+d:\vsproject\cs2\cs2_united\cs2_patch\release\buildin.obj
+d:\vsproject\cs2\cs2_united\cs2_patch\release\data.obj
+d:\vsproject\cs2\cs2_united\release\cs2_patch.lib
+d:\vsproject\cs2\cs2_united\release\cs2_patch.exp
+d:\vsproject\cs2\cs2_united\release\cs2_patch.ipdb
+d:\vsproject\cs2\cs2_united\release\cs2_patch.iobj
+d:\vsproject\cs2\cs2_united\release\cs2_patch.pdb
+d:\vsproject\cs2\cs2_united\cs2_patch\release\cs2_patch.tlog\cl.command.1.tlog
+d:\vsproject\cs2\cs2_united\cs2_patch\release\cs2_patch.tlog\cl.read.1.tlog
+d:\vsproject\cs2\cs2_united\cs2_patch\release\cs2_patch.tlog\cl.write.1.tlog
+d:\vsproject\cs2\cs2_united\cs2_patch\release\cs2_patch.tlog\cs2_patch.write.1u.tlog
+d:\vsproject\cs2\cs2_united\cs2_patch\release\cs2_patch.tlog\link.command.1.tlog
+d:\vsproject\cs2\cs2_united\cs2_patch\release\cs2_patch.tlog\link.delete.1.tlog
+d:\vsproject\cs2\cs2_united\cs2_patch\release\cs2_patch.tlog\link.read.1.tlog
+d:\vsproject\cs2\cs2_united\cs2_patch\release\cs2_patch.tlog\link.write.1.tlog
diff --git a/cs2_patch/Release/cs2_patch.log b/cs2_patch/Release/cs2_patch.log
index 0c67470..ac86286 100644
--- a/cs2_patch/Release/cs2_patch.log
+++ b/cs2_patch/Release/cs2_patch.log
@@ -1,7 +1,7 @@
- BuildIn.cpp
+ dllmain.cpp
正在创建库 D:\VSProject\cs2\cs2_united\Release\cs2_patch.lib 和对象 D:\VSProject\cs2\cs2_united\Release\cs2_patch.exp
正在生成代码
- 1 of 110 functions ( 0.9%) were compiled, the rest were copied from previous compilation.
+ 0 of 112 functions ( 0.0%) were compiled, the rest were copied from previous compilation.
0 functions were new in current compilation
0 functions had inline decision re-evaluated but remain unchanged
已完成代码的生成
diff --git a/cs2_patch/Release/cs2_patch.pch b/cs2_patch/Release/cs2_patch.pch
index 663f058..0d05f8b 100644
Binary files a/cs2_patch/Release/cs2_patch.pch and b/cs2_patch/Release/cs2_patch.pch differ
diff --git a/cs2_patch/Release/cs2_patch.tlog/CL.command.1.tlog b/cs2_patch/Release/cs2_patch.tlog/CL.command.1.tlog
index 05e450b..b3475f2 100644
Binary files a/cs2_patch/Release/cs2_patch.tlog/CL.command.1.tlog and b/cs2_patch/Release/cs2_patch.tlog/CL.command.1.tlog differ
diff --git a/cs2_patch/Release/cs2_patch.tlog/CL.read.1.tlog b/cs2_patch/Release/cs2_patch.tlog/CL.read.1.tlog
index 9bc621b..6a76af6 100644
Binary files a/cs2_patch/Release/cs2_patch.tlog/CL.read.1.tlog and b/cs2_patch/Release/cs2_patch.tlog/CL.read.1.tlog differ
diff --git a/cs2_patch/Release/cs2_patch.tlog/CL.write.1.tlog b/cs2_patch/Release/cs2_patch.tlog/CL.write.1.tlog
index 52fe947..dbc0ca9 100644
Binary files a/cs2_patch/Release/cs2_patch.tlog/CL.write.1.tlog and b/cs2_patch/Release/cs2_patch.tlog/CL.write.1.tlog differ
diff --git a/cs2_patch/Release/cs2_patch.tlog/cs2_patch.write.1u.tlog b/cs2_patch/Release/cs2_patch.tlog/cs2_patch.write.1u.tlog
index de0d352..8c11501 100644
Binary files a/cs2_patch/Release/cs2_patch.tlog/cs2_patch.write.1u.tlog and b/cs2_patch/Release/cs2_patch.tlog/cs2_patch.write.1u.tlog differ
diff --git a/cs2_patch/Release/cs2_patch.tlog/link.delete.1.tlog b/cs2_patch/Release/cs2_patch.tlog/link.delete.1.tlog
index 019cc6c..1220c4c 100644
Binary files a/cs2_patch/Release/cs2_patch.tlog/link.delete.1.tlog and b/cs2_patch/Release/cs2_patch.tlog/link.delete.1.tlog differ
diff --git a/cs2_patch/Release/cs2_patch.tlog/link.read.1.tlog b/cs2_patch/Release/cs2_patch.tlog/link.read.1.tlog
index 29e3beb..b5b3f83 100644
Binary files a/cs2_patch/Release/cs2_patch.tlog/link.read.1.tlog and b/cs2_patch/Release/cs2_patch.tlog/link.read.1.tlog differ
diff --git a/cs2_patch/Release/cs2_patch.vcxproj.FileListAbsolute.txt b/cs2_patch/Release/cs2_patch.vcxproj.FileListAbsolute.txt
new file mode 100644
index 0000000..e69de29
diff --git a/cs2_patch/Release/dllmain.obj b/cs2_patch/Release/dllmain.obj
index 7bd6ae0..8caf33d 100644
Binary files a/cs2_patch/Release/dllmain.obj and b/cs2_patch/Release/dllmain.obj differ
diff --git a/cs2_patch/Release/pch.obj b/cs2_patch/Release/pch.obj
index 7cea79e..0c24d7d 100644
Binary files a/cs2_patch/Release/pch.obj and b/cs2_patch/Release/pch.obj differ
diff --git a/cs2_patch/Release/vc142.pdb b/cs2_patch/Release/vc142.pdb
index 3a8fc0e..1a6456f 100644
Binary files a/cs2_patch/Release/vc142.pdb and b/cs2_patch/Release/vc142.pdb differ
diff --git a/cs2_patch/Replace.cpp b/cs2_patch/Replace.cpp
index 2f59aac..e0c0bd8 100644
--- a/cs2_patch/Replace.cpp
+++ b/cs2_patch/Replace.cpp
@@ -43,16 +43,16 @@ void ApplyStringToCV(LPCWSTR ws, DWORD pDf, int id)
wstring localString = ws;
if (!pDf)return;
if (!ws)return;
- DWORD Df = *(DWORD*)pDf;//Df ݵָ
- if (!Df)return;//Ϊֹ
- TESTDATA* nCView = (TESTDATA*)Df;//ʹһTESTDATA*ָDf
+ DWORD Df = *(DWORD*)pDf;//Df ���ݵ�ָ��
+ if (!Df)return;//Ϊ������ֹ����
+ TESTDATA* nCView = (TESTDATA*)Df;//ʹһ��TESTDATA*ָ��Df
DWORD pOld;
VirtualProtect(nCView, 10 + (localString.length() * 2), PAGE_READWRITE, &pOld);
- TESTDATA loadFirst = *nCView;//һ
- int posInLine = 0;//λ
- int posinCross = 0xD;//λ
+ TESTDATA loadFirst = *nCView;//�����һ������
+ int posInLine = 0;//�����
+ int posinCross = 0xD;//�����
- // SetWindowTextW(m_hWnd, L"ѭ");
+ // SetWindowTextW(m_hWnd, L"����ѭ��");
for (int i = 0; i < localString.length(); i++)
{
if (localString[i] == L'\n')
@@ -71,7 +71,7 @@ void ApplyStringToCV(LPCWSTR ws, DWORD pDf, int id)
posInLine += 0X1A;
}
}
- // SetWindowTextW(m_hWnd, L"ѭ");
+ // SetWindowTextW(m_hWnd, L"����ѭ��");
*(DWORD*)(pDf + 4) = (DWORD)nCView;
VirtualProtect(nCView, 10 + (localString.length() * 2), pOld, NULL);
@@ -129,14 +129,14 @@ void ApplyStringToCV(LPCWSTR ws, DWORD pDf, int id)
}
// MessageBoxW(0, L"2", L"", 0);
- if (wcsstr(nStr.c_str(), L"")) {
+ if (wcsstr(nStr.c_str(), L"………")) {
return -1;
}
- if (wcsstr(nStr.c_str(), L""))
+ if (wcsstr(nStr.c_str(), L"…ああ"))
return -1;
- if (wcsstr(nStr.c_str(), L"դդդ"))
+ if (wcsstr(nStr.c_str(), L"ふふふっ"))
return -1;
diff --git a/cs2_patch/cs2_patch.vcxproj b/cs2_patch/cs2_patch.vcxproj
index ed91023..3680e84 100644
--- a/cs2_patch/cs2_patch.vcxproj
+++ b/cs2_patch/cs2_patch.vcxproj
@@ -117,7 +117,7 @@
- Use
+ NotUsingLevel3truetrue
diff --git a/cs2_patch/dllmain.cpp b/cs2_patch/dllmain.cpp
index 1abc374..8fd530d 100644
--- a/cs2_patch/dllmain.cpp
+++ b/cs2_patch/dllmain.cpp
@@ -1,18 +1,24 @@
// dllmain.cpp : 定义 DLL 应用程序的入口点。
#include "pch.h"
+
#include "Data.h"
#include "BuildIn.h"
#pragma data_seg("PublicData") // 声明共享数据段,并命名该数据段
+extern "C" DLLAPI double saveProcess = 0.0;
HMODULE hMod = NULL;
extern "C" DLLAPI wchar_t ms_str[3096] = { 0 };
extern "C" DLLAPI int nID = 0;
+extern "C" DLLAPI DWORD tPid = 0;
#pragma data_seg()
#pragma comment(linker, "/section:PublicData,rws")
+MicroData* Index = NULL;
+MicroBinary* Data = NULL;
+
char IpfData[16];
#define PutInt(a) _itoa_s(a,IpfData,10);MessageBoxA(0,IpfData,"num",0);
diff --git a/cs2_united.sln b/cs2_united.sln
index 30e9492..bbfc7a4 100644
--- a/cs2_united.sln
+++ b/cs2_united.sln
@@ -21,19 +21,19 @@ Global
{460F93FF-C32C-455C-A2F6-BB81E86961AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{460F93FF-C32C-455C-A2F6-BB81E86961AE}.Debug|x64.ActiveCfg = Debug|Any CPU
{460F93FF-C32C-455C-A2F6-BB81E86961AE}.Debug|x64.Build.0 = Debug|Any CPU
- {460F93FF-C32C-455C-A2F6-BB81E86961AE}.Debug|x86.ActiveCfg = Debug|Any CPU
- {460F93FF-C32C-455C-A2F6-BB81E86961AE}.Debug|x86.Build.0 = Debug|Any CPU
+ {460F93FF-C32C-455C-A2F6-BB81E86961AE}.Debug|x86.ActiveCfg = Release|x86
+ {460F93FF-C32C-455C-A2F6-BB81E86961AE}.Debug|x86.Build.0 = Release|x86
{460F93FF-C32C-455C-A2F6-BB81E86961AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{460F93FF-C32C-455C-A2F6-BB81E86961AE}.Release|Any CPU.Build.0 = Release|Any CPU
{460F93FF-C32C-455C-A2F6-BB81E86961AE}.Release|x64.ActiveCfg = Release|Any CPU
{460F93FF-C32C-455C-A2F6-BB81E86961AE}.Release|x64.Build.0 = Release|Any CPU
- {460F93FF-C32C-455C-A2F6-BB81E86961AE}.Release|x86.ActiveCfg = Release|Any CPU
- {460F93FF-C32C-455C-A2F6-BB81E86961AE}.Release|x86.Build.0 = Release|Any CPU
+ {460F93FF-C32C-455C-A2F6-BB81E86961AE}.Release|x86.ActiveCfg = Release|x86
+ {460F93FF-C32C-455C-A2F6-BB81E86961AE}.Release|x86.Build.0 = Release|x86
{DB403E75-A69B-4B8E-AD02-9CF48E7C93A7}.Debug|Any CPU.ActiveCfg = Debug|Win32
{DB403E75-A69B-4B8E-AD02-9CF48E7C93A7}.Debug|x64.ActiveCfg = Debug|x64
{DB403E75-A69B-4B8E-AD02-9CF48E7C93A7}.Debug|x64.Build.0 = Debug|x64
- {DB403E75-A69B-4B8E-AD02-9CF48E7C93A7}.Debug|x86.ActiveCfg = Debug|Win32
- {DB403E75-A69B-4B8E-AD02-9CF48E7C93A7}.Debug|x86.Build.0 = Debug|Win32
+ {DB403E75-A69B-4B8E-AD02-9CF48E7C93A7}.Debug|x86.ActiveCfg = Release|Win32
+ {DB403E75-A69B-4B8E-AD02-9CF48E7C93A7}.Debug|x86.Build.0 = Release|Win32
{DB403E75-A69B-4B8E-AD02-9CF48E7C93A7}.Release|Any CPU.ActiveCfg = Release|Win32
{DB403E75-A69B-4B8E-AD02-9CF48E7C93A7}.Release|x64.ActiveCfg = Release|x64
{DB403E75-A69B-4B8E-AD02-9CF48E7C93A7}.Release|x64.Build.0 = Release|x64
diff --git a/packages/Microsoft.IdentityModel.Logging.5.6.0/.signature.p7s b/packages/Microsoft.IdentityModel.Logging.5.6.0/.signature.p7s
new file mode 100644
index 0000000..0669738
Binary files /dev/null and b/packages/Microsoft.IdentityModel.Logging.5.6.0/.signature.p7s differ
diff --git a/packages/Microsoft.IdentityModel.Logging.5.6.0/Microsoft.IdentityModel.Logging.5.6.0.nupkg b/packages/Microsoft.IdentityModel.Logging.5.6.0/Microsoft.IdentityModel.Logging.5.6.0.nupkg
new file mode 100644
index 0000000..22e1ff2
Binary files /dev/null and b/packages/Microsoft.IdentityModel.Logging.5.6.0/Microsoft.IdentityModel.Logging.5.6.0.nupkg differ
diff --git a/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net45/Microsoft.IdentityModel.Logging.dll b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net45/Microsoft.IdentityModel.Logging.dll
new file mode 100644
index 0000000..3762c74
Binary files /dev/null and b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net45/Microsoft.IdentityModel.Logging.dll differ
diff --git a/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net45/Microsoft.IdentityModel.Logging.xml b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net45/Microsoft.IdentityModel.Logging.xml
new file mode 100644
index 0000000..2b45edd
--- /dev/null
+++ b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net45/Microsoft.IdentityModel.Logging.xml
@@ -0,0 +1,398 @@
+
+
+
+ Microsoft.IdentityModel.Logging
+
+
+
+
+ Event source based logger to log different events.
+
+
+
+
+ Static logger that is exposed externally. An external application or framework can hook up a listener to this event source to log data in a custom way.
+
+
+
+
+ Flag which indicates whether or not PII is shown in logs. False by default.
+
+
+
+
+ String that is used in place of any arguments to log messages if the 'ShowPII' flag is set to false.
+
+
+
+
+ Indicates whether or the log message header (contains library version, date/time, and PII debugging information) has been written.
+
+
+
+
+ The log message that indicates the current library version.
+
+
+
+
+ The log message that indicates the date.
+
+
+
+
+ The log message that is shown when PII is off.
+
+
+
+
+ The log message that is shown when PII is off.
+
+
+
+
+ Writes an event log by using the provided string argument and current UTC time.
+ No level filtering is done on the event.
+
+ The log message.
+ No level filtering.
+
+
+
+ Writes an event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a verbose event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a verbose event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an information event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes an information event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a warning event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a warning event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an error event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes an error event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a critical event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a critical event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an exception log by using the provided event identifer, exception argument, string argument and current UTC time.
+
+
+
+ The log message.
+
+
+
+ Writes an exception log by using the provided event identifer, exception argument, string argument, arguments list and current UTC time.
+
+
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Minimum log level to log events. Default is Warning.
+
+
+
+
+ Helper class for logging.
+
+
+
+
+ Logs an exception using the event source logger and returns new exception.
+
+ argument that is null or empty.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ the inner to be added to the outer exception.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ message to log.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ message to log.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ the inner to be added to the outer exception.
+ message to log.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ message to log.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger.
+
+ The exception to log.
+
+
+
+ Logs an exception using the event source logger.
+
+ Identifies the level of an event to be logged.
+ The exception to log.
+
+
+
+ Logs an information event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs a verbose event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs a warning event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Formats the string using InvariantCulture
+
+ Format string.
+ Format arguments.
+ Formatted string.
+
+
+
+ Log messages and codes for Microsoft.IdentityModel.Logging
+
+
+
+
+ Event listener that writes logs to a file or a fileStream provided by user.
+
+
+
+
+ Name of the default log file, excluding its path.
+
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+ location of the file where log messages will be written.
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+ StreamWriter where logs will be written.
+
+
+
+ Called whenever an event has been written by an event source for which the event listener has enabled events.
+
+
+
+
+
+ Releases all resources used by the current instance of the class.
+
+
+
+
diff --git a/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net451/Microsoft.IdentityModel.Logging.dll b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net451/Microsoft.IdentityModel.Logging.dll
new file mode 100644
index 0000000..d18368e
Binary files /dev/null and b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net451/Microsoft.IdentityModel.Logging.dll differ
diff --git a/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net451/Microsoft.IdentityModel.Logging.xml b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net451/Microsoft.IdentityModel.Logging.xml
new file mode 100644
index 0000000..2b45edd
--- /dev/null
+++ b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net451/Microsoft.IdentityModel.Logging.xml
@@ -0,0 +1,398 @@
+
+
+
+ Microsoft.IdentityModel.Logging
+
+
+
+
+ Event source based logger to log different events.
+
+
+
+
+ Static logger that is exposed externally. An external application or framework can hook up a listener to this event source to log data in a custom way.
+
+
+
+
+ Flag which indicates whether or not PII is shown in logs. False by default.
+
+
+
+
+ String that is used in place of any arguments to log messages if the 'ShowPII' flag is set to false.
+
+
+
+
+ Indicates whether or the log message header (contains library version, date/time, and PII debugging information) has been written.
+
+
+
+
+ The log message that indicates the current library version.
+
+
+
+
+ The log message that indicates the date.
+
+
+
+
+ The log message that is shown when PII is off.
+
+
+
+
+ The log message that is shown when PII is off.
+
+
+
+
+ Writes an event log by using the provided string argument and current UTC time.
+ No level filtering is done on the event.
+
+ The log message.
+ No level filtering.
+
+
+
+ Writes an event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a verbose event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a verbose event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an information event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes an information event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a warning event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a warning event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an error event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes an error event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a critical event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a critical event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an exception log by using the provided event identifer, exception argument, string argument and current UTC time.
+
+
+
+ The log message.
+
+
+
+ Writes an exception log by using the provided event identifer, exception argument, string argument, arguments list and current UTC time.
+
+
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Minimum log level to log events. Default is Warning.
+
+
+
+
+ Helper class for logging.
+
+
+
+
+ Logs an exception using the event source logger and returns new exception.
+
+ argument that is null or empty.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ the inner to be added to the outer exception.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ message to log.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ message to log.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ the inner to be added to the outer exception.
+ message to log.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ message to log.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger.
+
+ The exception to log.
+
+
+
+ Logs an exception using the event source logger.
+
+ Identifies the level of an event to be logged.
+ The exception to log.
+
+
+
+ Logs an information event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs a verbose event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs a warning event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Formats the string using InvariantCulture
+
+ Format string.
+ Format arguments.
+ Formatted string.
+
+
+
+ Log messages and codes for Microsoft.IdentityModel.Logging
+
+
+
+
+ Event listener that writes logs to a file or a fileStream provided by user.
+
+
+
+
+ Name of the default log file, excluding its path.
+
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+ location of the file where log messages will be written.
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+ StreamWriter where logs will be written.
+
+
+
+ Called whenever an event has been written by an event source for which the event listener has enabled events.
+
+
+
+
+
+ Releases all resources used by the current instance of the class.
+
+
+
+
diff --git a/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net461/Microsoft.IdentityModel.Logging.dll b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net461/Microsoft.IdentityModel.Logging.dll
new file mode 100644
index 0000000..247b87d
Binary files /dev/null and b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net461/Microsoft.IdentityModel.Logging.dll differ
diff --git a/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net461/Microsoft.IdentityModel.Logging.xml b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net461/Microsoft.IdentityModel.Logging.xml
new file mode 100644
index 0000000..2b45edd
--- /dev/null
+++ b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/net461/Microsoft.IdentityModel.Logging.xml
@@ -0,0 +1,398 @@
+
+
+
+ Microsoft.IdentityModel.Logging
+
+
+
+
+ Event source based logger to log different events.
+
+
+
+
+ Static logger that is exposed externally. An external application or framework can hook up a listener to this event source to log data in a custom way.
+
+
+
+
+ Flag which indicates whether or not PII is shown in logs. False by default.
+
+
+
+
+ String that is used in place of any arguments to log messages if the 'ShowPII' flag is set to false.
+
+
+
+
+ Indicates whether or the log message header (contains library version, date/time, and PII debugging information) has been written.
+
+
+
+
+ The log message that indicates the current library version.
+
+
+
+
+ The log message that indicates the date.
+
+
+
+
+ The log message that is shown when PII is off.
+
+
+
+
+ The log message that is shown when PII is off.
+
+
+
+
+ Writes an event log by using the provided string argument and current UTC time.
+ No level filtering is done on the event.
+
+ The log message.
+ No level filtering.
+
+
+
+ Writes an event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a verbose event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a verbose event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an information event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes an information event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a warning event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a warning event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an error event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes an error event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a critical event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a critical event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an exception log by using the provided event identifer, exception argument, string argument and current UTC time.
+
+
+
+ The log message.
+
+
+
+ Writes an exception log by using the provided event identifer, exception argument, string argument, arguments list and current UTC time.
+
+
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Minimum log level to log events. Default is Warning.
+
+
+
+
+ Helper class for logging.
+
+
+
+
+ Logs an exception using the event source logger and returns new exception.
+
+ argument that is null or empty.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ the inner to be added to the outer exception.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ message to log.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ message to log.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ the inner to be added to the outer exception.
+ message to log.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ message to log.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger.
+
+ The exception to log.
+
+
+
+ Logs an exception using the event source logger.
+
+ Identifies the level of an event to be logged.
+ The exception to log.
+
+
+
+ Logs an information event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs a verbose event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs a warning event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Formats the string using InvariantCulture
+
+ Format string.
+ Format arguments.
+ Formatted string.
+
+
+
+ Log messages and codes for Microsoft.IdentityModel.Logging
+
+
+
+
+ Event listener that writes logs to a file or a fileStream provided by user.
+
+
+
+
+ Name of the default log file, excluding its path.
+
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+ location of the file where log messages will be written.
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+ StreamWriter where logs will be written.
+
+
+
+ Called whenever an event has been written by an event source for which the event listener has enabled events.
+
+
+
+
+
+ Releases all resources used by the current instance of the class.
+
+
+
+
diff --git a/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/netstandard1.4/Microsoft.IdentityModel.Logging.dll b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/netstandard1.4/Microsoft.IdentityModel.Logging.dll
new file mode 100644
index 0000000..e0f677f
Binary files /dev/null and b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/netstandard1.4/Microsoft.IdentityModel.Logging.dll differ
diff --git a/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/netstandard1.4/Microsoft.IdentityModel.Logging.xml b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/netstandard1.4/Microsoft.IdentityModel.Logging.xml
new file mode 100644
index 0000000..2b45edd
--- /dev/null
+++ b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/netstandard1.4/Microsoft.IdentityModel.Logging.xml
@@ -0,0 +1,398 @@
+
+
+
+ Microsoft.IdentityModel.Logging
+
+
+
+
+ Event source based logger to log different events.
+
+
+
+
+ Static logger that is exposed externally. An external application or framework can hook up a listener to this event source to log data in a custom way.
+
+
+
+
+ Flag which indicates whether or not PII is shown in logs. False by default.
+
+
+
+
+ String that is used in place of any arguments to log messages if the 'ShowPII' flag is set to false.
+
+
+
+
+ Indicates whether or the log message header (contains library version, date/time, and PII debugging information) has been written.
+
+
+
+
+ The log message that indicates the current library version.
+
+
+
+
+ The log message that indicates the date.
+
+
+
+
+ The log message that is shown when PII is off.
+
+
+
+
+ The log message that is shown when PII is off.
+
+
+
+
+ Writes an event log by using the provided string argument and current UTC time.
+ No level filtering is done on the event.
+
+ The log message.
+ No level filtering.
+
+
+
+ Writes an event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a verbose event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a verbose event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an information event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes an information event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a warning event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a warning event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an error event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes an error event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a critical event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a critical event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an exception log by using the provided event identifer, exception argument, string argument and current UTC time.
+
+
+
+ The log message.
+
+
+
+ Writes an exception log by using the provided event identifer, exception argument, string argument, arguments list and current UTC time.
+
+
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Minimum log level to log events. Default is Warning.
+
+
+
+
+ Helper class for logging.
+
+
+
+
+ Logs an exception using the event source logger and returns new exception.
+
+ argument that is null or empty.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ the inner to be added to the outer exception.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ message to log.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ message to log.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ the inner to be added to the outer exception.
+ message to log.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ message to log.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger.
+
+ The exception to log.
+
+
+
+ Logs an exception using the event source logger.
+
+ Identifies the level of an event to be logged.
+ The exception to log.
+
+
+
+ Logs an information event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs a verbose event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs a warning event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Formats the string using InvariantCulture
+
+ Format string.
+ Format arguments.
+ Formatted string.
+
+
+
+ Log messages and codes for Microsoft.IdentityModel.Logging
+
+
+
+
+ Event listener that writes logs to a file or a fileStream provided by user.
+
+
+
+
+ Name of the default log file, excluding its path.
+
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+ location of the file where log messages will be written.
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+ StreamWriter where logs will be written.
+
+
+
+ Called whenever an event has been written by an event source for which the event listener has enabled events.
+
+
+
+
+
+ Releases all resources used by the current instance of the class.
+
+
+
+
diff --git a/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/netstandard2.0/Microsoft.IdentityModel.Logging.dll b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/netstandard2.0/Microsoft.IdentityModel.Logging.dll
new file mode 100644
index 0000000..fef3842
Binary files /dev/null and b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/netstandard2.0/Microsoft.IdentityModel.Logging.dll differ
diff --git a/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/netstandard2.0/Microsoft.IdentityModel.Logging.xml b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/netstandard2.0/Microsoft.IdentityModel.Logging.xml
new file mode 100644
index 0000000..2b45edd
--- /dev/null
+++ b/packages/Microsoft.IdentityModel.Logging.5.6.0/lib/netstandard2.0/Microsoft.IdentityModel.Logging.xml
@@ -0,0 +1,398 @@
+
+
+
+ Microsoft.IdentityModel.Logging
+
+
+
+
+ Event source based logger to log different events.
+
+
+
+
+ Static logger that is exposed externally. An external application or framework can hook up a listener to this event source to log data in a custom way.
+
+
+
+
+ Flag which indicates whether or not PII is shown in logs. False by default.
+
+
+
+
+ String that is used in place of any arguments to log messages if the 'ShowPII' flag is set to false.
+
+
+
+
+ Indicates whether or the log message header (contains library version, date/time, and PII debugging information) has been written.
+
+
+
+
+ The log message that indicates the current library version.
+
+
+
+
+ The log message that indicates the date.
+
+
+
+
+ The log message that is shown when PII is off.
+
+
+
+
+ The log message that is shown when PII is off.
+
+
+
+
+ Writes an event log by using the provided string argument and current UTC time.
+ No level filtering is done on the event.
+
+ The log message.
+ No level filtering.
+
+
+
+ Writes an event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a verbose event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a verbose event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an information event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes an information event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a warning event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a warning event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an error event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes an error event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes a critical event log by using the provided string argument and current UTC time.
+
+ The log message.
+
+
+
+ Writes a critical event log by using the provided string argument, current UTC time and the provided arguments list.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Writes an exception log by using the provided event identifer, exception argument, string argument and current UTC time.
+
+
+
+ The log message.
+
+
+
+ Writes an exception log by using the provided event identifer, exception argument, string argument, arguments list and current UTC time.
+
+
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Minimum log level to log events. Default is Warning.
+
+
+
+
+ Helper class for logging.
+
+
+
+
+ Logs an exception using the event source logger and returns new exception.
+
+ argument that is null or empty.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ the inner to be added to the outer exception.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ message to log.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+ EventLevel is set to Error.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ message to log.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ message to log.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ the inner to be added to the outer exception.
+ message to log.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ message to log.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an argument exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger.
+
+ The exception to log.
+
+
+
+ Logs an exception using the event source logger.
+
+ Identifies the level of an event to be logged.
+ The exception to log.
+
+
+
+ Logs an information event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs a verbose event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs a warning event.
+
+ The log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Logs an exception using the event source logger and returns new typed exception.
+
+ Identifies the level of an event to be logged.
+ Identifies the argument whose value generated the ArgumentException.
+ the inner to be added to the outer exception.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Formats the string using InvariantCulture
+
+ Format string.
+ Format arguments.
+ Formatted string.
+
+
+
+ Log messages and codes for Microsoft.IdentityModel.Logging
+
+
+
+
+ Event listener that writes logs to a file or a fileStream provided by user.
+
+
+
+
+ Name of the default log file, excluding its path.
+
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+ location of the file where log messages will be written.
+
+
+
+ Initializes a new instance of that writes logs to text file.
+
+ StreamWriter where logs will be written.
+
+
+
+ Called whenever an event has been written by an event source for which the event listener has enabled events.
+
+
+
+
+
+ Releases all resources used by the current instance of the class.
+
+
+
+
diff --git a/packages/Selenium.WebDriver.3.141.0/.signature.p7s b/packages/Selenium.WebDriver.3.141.0/.signature.p7s
new file mode 100644
index 0000000..ef5e42c
Binary files /dev/null and b/packages/Selenium.WebDriver.3.141.0/.signature.p7s differ
diff --git a/packages/Selenium.WebDriver.3.141.0/Selenium.WebDriver.3.141.0.nupkg b/packages/Selenium.WebDriver.3.141.0/Selenium.WebDriver.3.141.0.nupkg
new file mode 100644
index 0000000..09a7bea
Binary files /dev/null and b/packages/Selenium.WebDriver.3.141.0/Selenium.WebDriver.3.141.0.nupkg differ
diff --git a/packages/Selenium.WebDriver.3.141.0/lib/net35/WebDriver.dll b/packages/Selenium.WebDriver.3.141.0/lib/net35/WebDriver.dll
new file mode 100644
index 0000000..6ccc44a
Binary files /dev/null and b/packages/Selenium.WebDriver.3.141.0/lib/net35/WebDriver.dll differ
diff --git a/packages/Selenium.WebDriver.3.141.0/lib/net35/WebDriver.xml b/packages/Selenium.WebDriver.3.141.0/lib/net35/WebDriver.xml
new file mode 100644
index 0000000..bfcf869
--- /dev/null
+++ b/packages/Selenium.WebDriver.3.141.0/lib/net35/WebDriver.xml
@@ -0,0 +1,12041 @@
+
+
+
+ WebDriver
+
+
+
+
+ Provides a mechanism by which to find elements within a document.
+
+ It is possible to create your own locating mechanisms for finding documents.
+ In order to do this,subclass this class and override the protected methods. However,
+ it is expected that that all subclasses rely on the basic finding mechanisms provided
+ through static methods of this class. An example of this can be found in OpenQA.Support.ByIdOrName
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the given functions to find elements.
+
+ A function that takes an object implementing
+ and returns the found .
+ A function that takes an object implementing
+ and returns a of the foundIWebElements.
+ IWebElements/>.
+
+
+
+ Gets or sets the value of the description for this class instance.
+
+
+
+
+ Gets or sets the method used to find a single element matching specified criteria.
+
+
+
+
+ Gets or sets the method used to find all elements matching specified criteria.
+
+
+
+
+ Determines if two instances are equal.
+
+ One instance to compare.
+ The other instance to compare.
+
+ if the two instances are equal; otherwise, .
+
+
+
+ Determines if two instances are unequal.
+ s
+ One instance to compare.The other instance to compare. if the two instances are not equal; otherwise, .
+
+
+ Gets a mechanism to find elements by their ID.
+
+ The ID to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their link text.
+
+ The link text to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their name.
+
+ The name to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by an XPath query.
+ When searching within a WebElement using xpath be aware that WebDriver follows standard conventions:
+ a search prefixed with "//" will search the entire document, not just the children of this current node.
+ Use ".//" to limit your search to the children of this WebElement.
+
+ The XPath query to use.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their CSS class.
+
+ The CSS class to find.
+ A object the driver can use to find the elements.
+ If an element has many classes then this will match against each of them.
+ For example if the value is "one two onone", then the following values for the
+ className parameter will match: "one" and "two".
+
+
+
+ Gets a mechanism to find elements by a partial match on their link text.
+
+ The partial link text to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their tag name.
+
+ The tag name to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their cascading style sheet (CSS) selector.
+
+ The CSS selector to find.
+ A object the driver can use to find the elements.
+
+
+
+ Finds the first element matching the criteria.
+
+ An object to use to search for the elements.
+ The first matching on the current context.
+
+
+
+ Finds all elements matching the criteria.
+
+ An object to use to search for the elements.
+ A of all WebElements
+ matching the current criteria, or an empty list if nothing matches.
+
+
+
+ Gets a string representation of the finder.
+
+ The string displaying the finder content.
+
+
+
+ Determines whether the specified Object is equal
+ to the current Object.
+
+ The Object to compare with the
+ current Object.
+
+ if the specified Object
+ is equal to the current Object; otherwise,
+ .
+
+
+
+ Serves as a hash function for a particular type.
+
+ A hash code for the current Object.
+
+
+
+ Provides a mechanism to write tests against Chrome
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new ChromeDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ }
+ }
+
+
+
+
+
+ Accept untrusted SSL Certificates
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified options.
+
+ The to be used with the Chrome driver.
+
+
+
+ Initializes a new instance of the class using the specified driver service.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe.
+
+ The full path to the directory containing ChromeDriver.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe and options.
+
+ The full path to the directory containing ChromeDriver.exe.
+ The to be used with the Chrome driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe, options, and command timeout.
+
+ The full path to the directory containing ChromeDriver.exe.
+ The to be used with the Chrome driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use.
+ The to be used with the Chrome driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The Chrome driver does not allow a file detector to be set,
+ as the server component of the Chrome driver (ChromeDriver.exe) only
+ allows uploads from the local computer environment. Attempting to set
+ this property has no effect, but does not throw an exception. If you
+ are attempting to run the Chrome driver remotely, use
+ in conjunction with a standalone WebDriver server.
+
+
+
+ Gets or sets the network condition emulation for Chrome.
+
+
+
+
+ Executes a custom Chrome command.
+
+ Name of the command to execute.
+ Parameters of the command to execute.
+
+
+
+ Exposes the service provided by the native ChromeDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the ChromeDriver executable.
+ The file name of the ChromeDriver executable.
+ The port on which the ChromeDriver executable should listen.
+
+
+
+ Gets or sets the location of the log file written to by the ChromeDriver executable.
+
+
+
+
+ Gets or sets the base URL path prefix for commands (e.g., "wd/url").
+
+
+
+
+ Gets or sets the address of a server to contact for reserving a port.
+
+
+
+
+ Gets or sets the port on which the Android Debug Bridge is listening for commands.
+
+
+
+
+ Gets or sets a value indicating whether to enable verbose logging for the ChromeDriver executable.
+ Defaults to .
+
+
+
+
+ Gets or sets the comma-delimited list of IP addresses that are approved to
+ connect to this instance of the Chrome driver. Defaults to an empty string,
+ which means only the local loopback address can connect.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the ChromeDriverService.
+
+ A ChromeDriverService that implements default settings.
+
+
+
+ Creates a default instance of the ChromeDriverService using a specified path to the ChromeDriver executable.
+
+ The directory containing the ChromeDriver executable.
+ A ChromeDriverService using a random port.
+
+
+
+ Creates a default instance of the ChromeDriverService using a specified path to the ChromeDriver executable with the given name.
+
+ The directory containing the ChromeDriver executable.
+ The name of the ChromeDriver executable file.
+ A ChromeDriverService using a random port.
+
+
+
+ Returns the Chrome driver filename for the currently running platform
+
+ The file name of the Chrome driver service executable.
+
+
+
+ Represents the type-safe options for setting settings for emulating a
+ mobile device in the Chrome browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The user agent string to be used by the browser when emulating
+ a mobile device.
+
+
+
+ Gets or sets the user agent string to be used by the browser when emulating
+ a mobile device.
+
+
+
+
+ Gets or sets the width in pixels to be used by the browser when emulating
+ a mobile device.
+
+
+
+
+ Gets or sets the height in pixels to be used by the browser when emulating
+ a mobile device.
+
+
+
+
+ Gets or sets the pixel ratio to be used by the browser when emulating
+ a mobile device.
+
+
+
+
+ Gets or sets a value indicating whether touch events should be enabled by
+ the browser when emulating a mobile device. Defaults to .
+
+
+
+
+ Provides manipulation of getting and setting network conditions from Chrome.
+
+
+
+
+ Gets or sets a value indicating whether the network is offline. Defaults to .
+
+
+
+
+ Gets or sets the simulated latency of the connection. Typically given in milliseconds.
+
+
+
+
+ Gets or sets the throughput of the network connection in kb/second for downloading.
+
+
+
+
+ Gets or sets the throughput of the network connection in kb/second for uploading.
+
+
+
+
+ Class to manage options specific to
+
+ Used with ChromeDriver.exe v17.0.963.0 and higher.
+
+
+
+ ChromeOptions options = new ChromeOptions();
+ options.AddExtensions("\path\to\extension.crx");
+ options.BinaryLocation = "\path\to\chrome";
+
+
+ For use with ChromeDriver:
+
+
+ ChromeDriver driver = new ChromeDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Gets the name of the capability used to store Chrome options in
+ a object.
+
+
+
+
+ Gets or sets the location of the Chrome browser's binary executable file.
+
+
+
+
+ Gets or sets a value indicating whether Chrome should be left running after the
+ ChromeDriver instance is exited. Defaults to .
+
+
+
+
+ Gets the list of arguments appended to the Chrome command line as a string array.
+
+
+
+
+ Gets the list of extensions to be installed as an array of base64-encoded strings.
+
+
+
+
+ Gets or sets the address of a Chrome debugger server to connect to.
+ Should be of the form "{hostname|IP address}:port".
+
+
+
+
+ Gets or sets the directory in which to store minidump files.
+
+
+
+
+ Gets or sets the performance logging preferences for the driver.
+
+
+
+
+ Gets or sets a value indicating whether the instance
+ should use the legacy OSS protocol dialect or a dialect compliant with the W3C
+ WebDriver Specification.
+
+
+
+
+ Adds a single argument to the list of arguments to be appended to the Chrome.exe command line.
+
+ The argument to add.
+
+
+
+ Adds arguments to be appended to the Chrome.exe command line.
+
+ An array of arguments to add.
+
+
+
+ Adds arguments to be appended to the Chrome.exe command line.
+
+ An object of arguments to add.
+
+
+
+ Adds a single argument to be excluded from the list of arguments passed by default
+ to the Chrome.exe command line by chromedriver.exe.
+
+ The argument to exclude.
+
+
+
+ Adds arguments to be excluded from the list of arguments passed by default
+ to the Chrome.exe command line by chromedriver.exe.
+
+ An array of arguments to exclude.
+
+
+
+ Adds arguments to be excluded from the list of arguments passed by default
+ to the Chrome.exe command line by chromedriver.exe.
+
+ An object of arguments to exclude.
+
+
+
+ Adds a path to a packed Chrome extension (.crx file) to the list of extensions
+ to be installed in the instance of Chrome.
+
+ The full path to the extension to add.
+
+
+
+ Adds a list of paths to packed Chrome extensions (.crx files) to be installed
+ in the instance of Chrome.
+
+ An array of full paths to the extensions to add.
+
+
+
+ Adds a list of paths to packed Chrome extensions (.crx files) to be installed
+ in the instance of Chrome.
+
+ An of full paths to the extensions to add.
+
+
+
+ Adds a base64-encoded string representing a Chrome extension to the list of extensions
+ to be installed in the instance of Chrome.
+
+ A base64-encoded string representing the extension to add.
+
+
+
+ Adds a list of base64-encoded strings representing Chrome extensions to the list of extensions
+ to be installed in the instance of Chrome.
+
+ An array of base64-encoded strings representing the extensions to add.
+
+
+
+ Adds a list of base64-encoded strings representing Chrome extensions to be installed
+ in the instance of Chrome.
+
+ An of base64-encoded strings
+ representing the extensions to add.
+
+
+
+ Adds a preference for the user-specific profile or "user data directory."
+ If the specified preference already exists, it will be overwritten.
+
+ The name of the preference to set.
+ The value of the preference to set.
+
+
+
+ Adds a preference for the local state file in the user's data directory for Chrome.
+ If the specified preference already exists, it will be overwritten.
+
+ The name of the preference to set.
+ The value of the preference to set.
+
+
+
+ Allows the Chrome browser to emulate a mobile device.
+
+ The name of the device to emulate. The device name must be a
+ valid device name from the Chrome DevTools Emulation panel.
+ Specifying an invalid device name will not throw an exeption, but
+ will generate an error in Chrome when the driver starts. To unset mobile
+ emulation, call this method with as the argument.
+
+
+
+ Allows the Chrome browser to emulate a mobile device.
+
+ The
+ object containing the settings of the device to emulate.
+ Thrown if the device settings option does
+ not have a user agent string set.
+ Specifying an invalid device name will not throw an exeption, but
+ will generate an error in Chrome when the driver starts. To unset mobile
+ emulation, call this method with as the argument.
+
+
+
+ Adds a type of window that will be listed in the list of window handles
+ returned by the Chrome driver.
+
+ The name of the window type to add.
+ This method can be used to allow the driver to access {webview}
+ elements by adding "webview" as a window type.
+
+
+
+ Adds a list of window types that will be listed in the list of window handles
+ returned by the Chrome driver.
+
+ An array of window types to add.
+
+
+
+ Adds a list of window types that will be listed in the list of window handles
+ returned by the Chrome driver.
+
+ An of window types to add.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Chrome driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+ Also, by default, calling this method adds capabilities to the options object passed to
+ chromedriver.exe.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Chrome driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+ Indicates whether the capability is to be set as a global
+ capability for the driver instead of a Chrome-specific option.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for Chrome with these options included as
+ capabilities. This does not copy the options. Further changes will be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for Chrome with these options.
+
+
+
+ Represents the type-safe options for setting preferences for performance
+ logging in the Chrome browser.
+
+
+
+
+ Gets or sets a value indicating whether Chrome will collect events from the Network domain.
+ Defaults to .
+
+
+
+
+ Gets or sets a value indicating whether Chrome will collect events from the Page domain.
+ Defaults to .
+
+
+
+
+ Gets or sets the interval between Chrome DevTools trace buffer usage events.
+ Defaults to 1000 milliseconds.
+
+ Thrown when an attempt is made to set
+ the value to a time span of less tnan or equal to zero milliseconds.
+
+
+
+ Gets a comma-separated list of the categories for which tracing is enabled.
+
+
+
+
+ Adds a single category to the list of Chrome tracing categories for which events should be collected.
+
+ The category to add.
+
+
+
+ Adds categories to the list of Chrome tracing categories for which events should be collected.
+
+ An array of categories to add.
+
+
+
+ Adds categories to the list of Chrome tracing categories for which events should be collected.
+
+ An object of categories to add.
+
+
+
+ Provides a mechanism to get elements off the page for test
+
+
+
+
+ Initializes a new instance of the class.
+
+ Driver in use
+ Id of the element
+
+
+
+ Represents a cookie in the browser.
+
+
+
+
+ Initializes a new instance of the class with a specific name,
+ value, domain, path and expiration date.
+
+ The name of the cookie.
+ The value of the cookie.
+ The domain of the cookie.
+ The path of the cookie.
+ The expiration date of the cookie.
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value is .
+
+
+
+ Initializes a new instance of the class with a specific name,
+ value, path and expiration date.
+
+ The name of the cookie.
+ The value of the cookie.
+ The path of the cookie.
+ The expiration date of the cookie.
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value is .
+
+
+
+ Initializes a new instance of the class with a specific name,
+ value, and path.
+
+ The name of the cookie.
+ The value of the cookie.
+ The path of the cookie.
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value is .
+
+
+
+ Initializes a new instance of the class with a specific name and value.
+
+ The name of the cookie.
+ The value of the cookie.
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value is .
+
+
+
+ Gets the name of the cookie.
+
+
+
+
+ Gets the value of the cookie.
+
+
+
+
+ Gets the domain of the cookie.
+
+
+
+
+ Gets the path of the cookie.
+
+
+
+
+ Gets a value indicating whether the cookie is secure.
+
+
+
+
+ Gets a value indicating whether the cookie is an HTTP-only cookie.
+
+
+
+
+ Gets the expiration date of the cookie.
+
+
+
+
+ Gets the cookie expiration date in seconds from the defined zero date (01 January 1970 00:00:00 UTC).
+
+ This property only exists so that the JSON serializer can serialize a
+ cookie without resorting to a custom converter.
+
+
+
+ Converts a Dictionary to a Cookie.
+
+ The Dictionary object containing the cookie parameters.
+ A object with the proper parameters set.
+
+
+
+ Creates and returns a string representation of the cookie.
+
+ A string representation of the cookie.
+
+
+
+ Determines whether the specified Object is equal
+ to the current Object.
+
+ The Object to compare with the
+ current Object.
+
+ if the specified Object
+ is equal to the current Object; otherwise,
+ .
+
+
+
+ Serves as a hash function for a particular type.
+
+ A hash code for the current Object.
+
+
+
+ Represents the default file detector for determining whether a file
+ must be uploaded to a remote server.
+
+
+
+
+ Returns a value indicating whether a specified key sequence represents
+ a file name and path.
+
+ The sequence to test for file existence.
+ This method always returns in this implementation.
+
+
+
+ Specifies the behavior of handling unexpected alerts in the IE driver.
+
+
+
+
+ Indicates the behavior is not set.
+
+
+
+
+ Ignore unexpected alerts, such that the user must handle them.
+
+
+
+
+ Accept unexpected alerts.
+
+
+
+
+ Dismiss unexpected alerts.
+
+
+
+
+ Accepts unexpected alerts and notifies the user that the alert has
+ been accepted by throwing an
+
+
+
+ Dismisses unexpected alerts and notifies the user that the alert has
+ been dismissed by throwing an
+
+
+
+ Specifies the behavior of waiting for page loads in the driver.
+
+
+
+
+ Indicates the behavior is not set.
+
+
+
+
+ Waits for pages to load and ready state to be 'complete'.
+
+
+
+
+ Waits for pages to load and for ready state to be 'interactive' or 'complete'.
+
+
+
+
+ Does not wait for pages to load, returning immediately.
+
+
+
+
+ Base class for managing options specific to a browser driver.
+
+
+
+
+ Gets or sets the name of the browser.
+
+
+
+
+ Gets or sets the version of the browser.
+
+
+
+
+ Gets or sets the name of the platform on which the browser is running.
+
+
+
+
+ Gets or sets a value indicating whether the browser should accept self-signed
+ SSL certificates.
+
+
+
+
+ Gets or sets the value for describing how unexpected alerts are to be handled in the browser.
+ Defaults to .
+
+
+
+
+ Gets or sets the value for describing how the browser is to wait for pages to load in the browser.
+ Defaults to .
+
+
+
+
+ Gets or sets the to be used with this browser.
+
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the specific browser driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+
+
+
+
+ Returns the for the specific browser driver with these
+ options included as capabilities. This does not copy the options. Further
+ changes will be reflected in the returned capabilities.
+
+ The for browser driver with these options.
+
+
+
+ Compares this object with another to see if there
+ are merge conflicts between them.
+
+ The object to compare with.
+ A object containing the status of the attempted merge.
+
+
+
+ Sets the logging preferences for this driver.
+
+ The type of log for which to set the preference.
+ Known log types can be found in the class.
+ The value to which to set the log level.
+
+
+
+ Returns a string representation of this .
+
+ A string representation of this .
+
+
+
+ Returns the current options as a .
+
+ The current options as a .
+
+
+
+ Adds a known capability to the list of known capabilities and associates it
+ with the type-safe property name of the options class to be used instead.
+
+ The name of the capability.
+ The name of the option property or method to be used instead.
+
+
+
+ Gets a value indicating whether the specified capability name is a known capability name which has a type-safe option.
+
+ The name of the capability to check.
+
+ if the capability name is known; otherwise .
+
+
+
+ Gets the name of the type-safe option for a given capability name.
+
+ The name of the capability to check.
+ The name of the type-safe option for the given capability name.
+
+
+
+ Generates the logging preferences dictionary for transmission as a desired capability.
+
+ The dictionary containing the logging preferences.
+
+
+
+ Generates the current options as a capabilities object for further processing.
+
+ A value indicating whether to generate capabilities compliant with the W3C WebDriver Specification.
+ A object representing the current options for further processing.
+
+
+
+ Gets or sets a value indicating whether the DriverOptions would conflict when merged with another option
+
+
+
+
+ Gets or sets the name of the name of the option that is in conflict.
+
+
+
+
+ Provides types of capabilities for the DesiredCapabilities object.
+
+
+
+
+ Capability name used for the browser name.
+
+
+
+
+ Capability name used for the browser version.
+
+
+
+
+ Capability name used for the platform name.
+
+
+
+
+ Capability name used for the browser platform.
+
+
+
+
+ Capability name used for the browser version.
+
+
+
+
+ Capability name used to indicate whether JavaScript is enabled for the browser.
+
+
+
+
+ Capability name used to indicate whether the browser can take screenshots.
+
+
+
+
+ Capability name used to indicate whether the browser can handle alerts.
+
+
+
+
+ Capability name used to indicate whether the browser can find elements via CSS selectors.
+
+
+
+
+ Capability name used for the browser proxy.
+
+
+
+
+ Capability name used to indicate whether the browser supports rotation.
+
+
+
+
+ Capability name used to indicate whether the browser accepts SSL certificates.
+
+
+
+
+ Capability name used to indicate whether the browser accepts SSL certificates on W3C Endpoints
+
+
+
+
+ Capability name used to indicate whether the browser uses native events.
+
+
+
+
+ Capability name used to indicate how the browser handles unexpected alerts.
+
+
+
+
+ Capability name used to indicate how the browser handles unhandled user prompts.
+
+
+
+
+ Capability name used to indicate the page load strategy for the browser.
+
+
+
+
+ Capability name used to indicate the logging preferences for the session.
+
+
+
+
+ Capability name used to disable the check for overlapping elements.
+
+
+
+
+ Capability name used to enable the profiling log for the session.
+
+
+
+
+ Capability name used to indicate whether the driver supports geolocation context.
+
+
+
+
+ Capability name used to indicate whether the driver supports application cache.
+
+
+
+
+ Capability name used to indicate whether the driver supports web storage.
+
+
+
+
+ Capability name used to indicate whether the driver supports setting the browser window's size and position.
+
+
+
+
+ Capability name used to get or set timeout values when creating a session.
+
+
+
+
+ Provides a way to send commands to the remote server
+
+
+
+
+ Initializes a new instance of the class using a command name and a JSON-encoded string for the parameters.
+
+ Name of the command
+ Parameters for the command as a JSON-encoded string.
+
+
+
+ Initializes a new instance of the class for a Session
+
+ Session ID the driver is using
+ Name of the command
+ Parameters for that command
+
+
+
+ Gets the SessionID of the command
+
+
+
+
+ Gets the command name
+
+
+
+
+ Gets the parameters of the command
+
+
+
+
+ Gets the parameters of the command as a JSON-encoded string.
+
+
+
+
+ Returns a string of the Command object
+
+ A string representation of the Command Object
+
+
+
+ Gets the command parameters as a , with a string key, and an object value.
+
+ The JSON-encoded string representing the command parameters.
+ A with a string keys, and an object value.
+
+
+
+ Provides the execution information for a .
+
+
+
+
+ POST verb for the command info
+
+
+
+
+ GET verb for the command info
+
+
+
+
+ DELETE verb for the command info
+
+
+
+
+ Initializes a new instance of the class
+
+ Method of the Command
+ Relative URL path to the resource used to execute the command
+
+
+
+ Gets the URL representing the path to the resource.
+
+
+
+
+ Gets the HTTP method associated with the command.
+
+
+
+
+ Creates the full URI associated with this command, substituting command
+ parameters for tokens in the URI template.
+
+ The base URI associated with the command.
+ The command containing the parameters with which
+ to substitute the tokens in the template.
+ The full URI for the command, with the parameters of the command
+ substituted for the tokens in the template.
+
+
+
+ Holds the information about all commands specified by the JSON wire protocol.
+ This class cannot be inherited, as it is intended to be a singleton, and
+ allowing subclasses introduces the possibility of multiple instances.
+
+
+
+
+ Initializes a new instance of the class.
+ Protected accessibility prevents a default instance from being created.
+
+
+
+
+ Gets the level of the W3C WebDriver specification that this repository supports.
+
+
+
+
+ Gets the for a .
+
+ The for which to get the information.
+ The for the specified command.
+
+
+
+ Tries to add a command to the list of known commands.
+
+ Name of the command.
+ The command information.
+
+ if the new command has been added successfully; otherwise, .
+
+ This method is used by WebDriver implementations to add additional custom driver-specific commands.
+ This method will not overwrite existing commands for a specific name, and will return
+ in that case.
+
+
+
+
+ Initializes the dictionary of commands for the CommandInfoRepository
+
+
+
+
+ Class to Create the capabilities of the browser you require for .
+ If you wish to use default values use the static methods
+
+
+
+
+ Initializes a new instance of the class
+
+ Name of the browser e.g. firefox, internet explorer, safari
+ Version of the browser
+ The platform it works on
+
+
+
+ Initializes a new instance of the class
+
+
+
+
+ Initializes a new instance of the class
+
+ Dictionary of items for the remote driver
+
+
+ DesiredCapabilities capabilities = new DesiredCapabilities(new Dictionary]]>(){["browserName","firefox"],["version",string.Empty],["javaScript",true]});
+
+
+
+
+
+ Initializes a new instance of the class
+
+ Name of the browser e.g. firefox, internet explorer, safari
+ Version of the browser
+ The platform it works on
+ Sets a value indicating whether the capabilities are
+ compliant with the W3C WebDriver specification.
+
+
+
+ Gets the browser name
+
+
+
+
+ Gets or sets the platform
+
+
+
+
+ Gets the browser version
+
+
+
+
+ Gets or sets a value indicating whether the browser accepts SSL certificates.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if the browser has the capability; otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set on the browser.
+
+
+
+ Sets a capability of the browser.
+
+ The capability to get.
+ The value for the capability.
+
+
+
+ Return HashCode for the DesiredCapabilities that has been created
+
+ Integer of HashCode generated
+
+
+
+ Return a string of capabilities being used
+
+ String of capabilities being used
+
+
+
+ Compare two DesiredCapabilities and will return either true or false
+
+ DesiredCapabilities you wish to compare
+ true if they are the same or false if they are not
+
+
+
+ Returns a read-only version of this capabilities object.
+
+ A read-only version of this capabilities object.
+
+
+
+ Values describing the list of commands understood by a remote server using the JSON wire protocol.
+
+
+
+
+ Represents the Define Driver Mapping command
+
+
+
+
+ Represents the Status command.
+
+
+
+
+ Represents a New Session command
+
+
+
+
+ Represents the Get Session List command
+
+
+
+
+ Represents the Get Session Capabilities command
+
+
+
+
+ Represents a Browser close command
+
+
+
+
+ Represents a browser quit command
+
+
+
+
+ Represents a GET command
+
+
+
+
+ Represents a Browser going back command
+
+
+
+
+ Represents a Browser going forward command
+
+
+
+
+ Represents a Browser refreshing command
+
+
+
+
+ Represents adding a cookie command
+
+
+
+
+ Represents getting all cookies command
+
+
+
+
+ Represents getting cookie command
+
+
+
+
+ Represents deleting a cookie command
+
+
+
+
+ Represents Deleting all cookies command
+
+
+
+
+ Represents FindElement command
+
+
+
+
+ Represents FindElements command
+
+
+
+
+ Represents FindChildElement command
+
+
+
+
+ Represents FindChildElements command
+
+
+
+
+ Describes an element
+
+
+
+
+ Represents ClearElement command
+
+
+
+
+ Represents ClickElement command
+
+
+
+
+ Represents SendKeysToElements command
+
+
+
+
+ Represents TapElement command
+
+
+
+
+ Represents SubmitElement command
+
+
+
+
+ Represents GetCurrentWindowHandle command
+
+
+
+
+ Represents GetWindowHandles command
+
+
+
+
+ Represents SwitchToWindow command
+
+
+
+
+ Represents SwitchToFrame command
+
+
+
+
+ Represents SwitchToParentFrame command
+
+
+
+
+ Represents GetActiveElement command
+
+
+
+
+ Represents GetCurrentUrl command
+
+
+
+
+ Represents GetPageSource command
+
+
+
+
+ Represents GetTitle command
+
+
+
+
+ Represents ExecuteScript command
+
+
+
+
+ Represents ExecuteAsyncScript command
+
+
+
+
+ Represents GetElementText command
+
+
+
+
+ Represents GetElementTagName command
+
+
+
+
+ Represents IsElementSelected command
+
+
+
+
+ Represents IsElementEnabled command
+
+
+
+
+ Represents IsElementDisplayed command
+
+
+
+
+ Represents GetElementLocation command
+
+
+
+
+ Represents GetElementLocationOnceScrolledIntoView command
+
+
+
+
+ Represents GetElementSize command
+
+
+
+
+ Represents GetElementRect command
+
+
+
+
+ Represents GetElementAttribute command
+
+
+
+
+ Represents GetElementProperty command
+
+
+
+
+ Represents GetElementValueOfCSSProperty command
+
+
+
+
+ Represents ElementEquals command
+
+
+
+
+ Represents Screenshot command
+
+
+
+
+ Represents the ElementScreenshot command
+
+
+
+
+ Represents GetOrientation command
+
+
+
+
+ Represents SetOrientation command
+
+
+
+
+ Represents GetWindowSize command
+
+
+
+
+ Represents SetWindowSize command
+
+
+
+
+ Represents GetWindowPosition command
+
+
+
+
+ Represents SetWindowPosition command
+
+
+
+
+ Represents GetWindowRect command
+
+
+
+
+ Represents SetWindowRect command
+
+
+
+
+ Represents MaximizeWindow command
+
+
+
+
+ Represents MinimizeWindow command
+
+
+
+
+ Represents FullScreenWindow command
+
+
+
+
+ Represents the DismissAlert command
+
+
+
+
+ Represents the AcceptAlert command
+
+
+
+
+ Represents the GetAlertText command
+
+
+
+
+ Represents the SetAlertValue command
+
+
+
+
+ Represents the Authenticate command
+
+
+
+
+ Represents the ImplicitlyWait command
+
+
+
+
+ Represents the SetAsyncScriptTimeout command
+
+
+
+
+ Represents the SetTimeout command
+
+
+
+
+ Represents the SetTimeout command
+
+
+
+
+ Represents the Actions command.
+
+
+
+
+ Represents the CancelActions command.
+
+
+
+
+ Represents the MouseClick command.
+
+
+
+
+ Represents the MouseDoubleClick command.
+
+
+
+
+ Represents the MouseDown command.
+
+
+
+
+ Represents the MouseUp command.
+
+
+
+
+ Represents the MouseMoveTo command.
+
+
+
+
+ Represents the SendKeysToActiveElement command.
+
+
+
+
+ Represents the UploadFile command.
+
+
+
+
+ Represents the TouchSingleTap command.
+
+
+
+
+ Represents the TouchPress command.
+
+
+
+
+ Represents the TouchRelease command.
+
+
+
+
+ Represents the TouchMove command.
+
+
+
+
+ Represents the TouchScroll command.
+
+
+
+
+ Represents the TouchDoubleTap command.
+
+
+
+
+ Represents the TouchLongPress command.
+
+
+
+
+ Represents the TouchFlick command.
+
+
+
+
+ Represents the GetLocation command.
+
+
+
+
+ Represents the SetLocation command.
+
+
+
+
+ Represents the GetAppCache command.
+
+
+
+
+ Represents the application cache GetStatus command.
+
+
+
+
+ Represents the ClearAppCache command.
+
+
+
+
+ Represents the GetLocalStorageItem command.
+
+
+
+
+ Represents the GetLocalStorageKeys command.
+
+
+
+
+ Represents the SetLocalStorageItem command.
+
+
+
+
+ Represents the RemoveLocalStorageItem command.
+
+
+
+
+ Represents the ClearLocalStorage command.
+
+
+
+
+ Represents the GetLocalStorageSize command.
+
+
+
+
+ Represents the GetSessionStorageItem command.
+
+
+
+
+ Represents the GetSessionStorageKeys command.
+
+
+
+
+ Represents the SetSessionStorageItem command.
+
+
+
+
+ Represents the RemoveSessionStorageItem command.
+
+
+
+
+ Represents the ClearSessionStorage command.
+
+
+
+
+ Represents the GetSessionStorageSize command.
+
+
+
+
+ Represents the GetAvailableLogTypes command.
+
+
+
+
+ Represents the GetLog command.
+
+
+
+
+ Provides a mechanism to execute commands on the browser
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that drives the browser.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class.
+
+ The that drives the browser.
+ The maximum amount of time to wait for each command.
+
+ if the KeepAlive header should be sent
+ with HTTP requests; otherwise, .
+
+
+
+ Gets the object associated with this executor.
+
+
+
+
+ Gets the that sends commands to the remote
+ end WebDriver implementation.
+
+
+
+
+ Executes a command
+
+ The command you wish to execute
+ A response from the browser
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Releases the unmanaged resources used by the and
+ optionally releases the managed resources.
+
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Provides a way to store errors from a response
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified values.
+
+ A containing names and values of
+ the properties of this .
+
+
+
+ Gets or sets the message from the response
+
+
+
+
+ Gets or sets the class name that threw the error
+
+
+
+
+ Gets or sets the screenshot of the error
+
+
+
+
+ Gets or sets the stack trace of the error
+
+
+
+
+ Provides a way of executing Commands over HTTP
+
+
+
+
+ Initializes a new instance of the class
+
+ Address of the WebDriver Server
+ The timeout within which the server must respond.
+
+
+
+ Initializes a new instance of the class
+
+ Address of the WebDriver Server
+ The timeout within which the server must respond.
+
+ if the KeepAlive header should be sent
+ with HTTP requests; otherwise, .
+
+
+
+ Gets the repository of objects containin information about commands.
+
+
+
+
+ Gets or sets an object to be used to proxy requests
+ between this and the remote end WebDriver
+ implementation.
+
+
+
+
+ Gets or sets a value indicating whether keep-alive is enabled for HTTP
+ communication between this and the
+ remote end WebDriver implementation.
+
+
+
+
+ Executes a command
+
+ The command you wish to execute
+ A response from the browser
+
+
+
+ Raises the event.
+
+ A that contains the event data.
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Releases the unmanaged resources used by the and
+ optionally releases the managed resources.
+
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Provides a way to send commands to the remote server
+
+
+
+
+ Gets the repository of objects containin information about commands.
+
+
+
+
+ Executes a command
+
+ The command you wish to execute
+ A response from the browser
+
+
+
+ Provides a way to start a server that understands remote commands
+
+
+
+
+ Starts the server.
+
+
+
+
+ Interface indicating the driver has a Session ID.
+
+
+
+
+ Gets the session ID of the current session.
+
+
+
+
+ Provides a way to convert a Char array to JSON
+
+
+
+
+ Checks if the object can be converted
+
+ Type of the object to see if can be converted
+ True if can be converted else false
+
+
+
+ Writes the Object to JSON
+
+ A JSON Writer object
+ Object to be converted
+ JSON Serializer object instance
+
+
+
+ Method not implemented
+
+ JSON Reader instance
+ Object type being read
+ Existing Value to be read
+ JSON Serializer instance
+ Object from JSON
+
+
+
+ Converts the response to JSON
+
+
+
+
+ Checks if the object can be converted
+
+ The object to be converted
+ True if it can be converted or false if can't be
+
+
+
+ Process the reader to return an object from JSON
+
+ A JSON reader
+ Type of the object
+ The existing value of the object
+ JSON Serializer
+ Object created from JSON
+
+
+
+ Writes objects to JSON. Currently not implemented
+
+ JSON Writer Object
+ Value to be written
+ JSON Serializer
+
+
+
+ Represents a file detector for determining whether a file
+ must be uploaded to a remote server.
+
+
+
+
+ Returns a value indicating whether a specified key sequence represents
+ a file name and path.
+
+ The sequence to test for file existence.
+
+ if the key sequence represents a file; otherwise, .
+
+
+
+ Class to Create the capabilities of the browser you require for .
+ If you wish to use default values use the static methods
+
+
+
+
+ Prevents a default instance of the class.
+
+
+
+
+ Gets the browser name
+
+
+
+
+ Gets or sets the platform
+
+
+
+
+ Gets the browser version
+
+
+
+
+ Gets or sets a value indicating whether the browser accepts SSL certificates.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if the browser has the capability; otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set on the browser.
+
+
+
+ Converts the object to a .
+
+ The containing the capabilities.
+
+
+
+ Return HashCode for the DesiredCapabilities that has been created
+
+ Integer of HashCode generated
+
+
+
+ Return a string of capabilities being used
+
+ String of capabilities being used
+
+
+
+ Compare two DesiredCapabilities and will return either true or false
+
+ DesiredCapabilities you wish to compare
+ true if they are the same or false if they are not
+
+
+
+ Defines the interface through which the user can manipulate JavaScript alerts.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the alerts will be managed.
+
+
+
+ Gets the text of the alert.
+
+
+
+
+ Dismisses the alert.
+
+
+
+
+ Accepts the alert.
+
+
+
+
+ Sends keys to the alert.
+
+ The keystrokes to send.
+
+
+
+ Sets the user name and password in an alert prompting for credentials.
+
+ The user name to set.
+ The password to set.
+
+
+
+ Defines the interface through which the user can manipulate application cache.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the application cache will be managed.
+
+
+
+ Gets the current state of the application cache.
+
+
+
+
+ Defines an interface allowing the user to manipulate cookies on the current page.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The driver that is currently in use
+
+
+
+ Gets all cookies defined for the current page.
+
+
+
+
+ Method for creating a cookie in the browser
+
+
+ that represents a cookie in the browser
+
+
+
+ Delete the cookie by passing in the name of the cookie
+
+ The name of the cookie that is in the browser
+
+
+
+ Delete a cookie in the browser by passing in a copy of a cookie
+
+ An object that represents a copy of the cookie that needs to be deleted
+
+
+
+ Delete All Cookies that are present in the browser
+
+
+
+
+ Method for returning a getting a cookie by name
+
+ name of the cookie that needs to be returned
+ A Cookie from the name
+
+
+
+ Method for getting a Collection of Cookies that are present in the browser
+
+ ReadOnlyCollection of Cookies in the browser
+
+
+
+ Defines the interface through which the user can discover where an element is on the screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to be located.
+
+
+
+ Gets the location of an element in absolute screen coordinates.
+
+
+
+
+ Gets the location of an element relative to the origin of the view port.
+
+
+
+
+ Gets the location of an element's position within the HTML DOM.
+
+
+
+
+ Gets a locator providing a user-defined location for this element.
+
+
+
+
+ Defines the interface through which the user can execute advanced keyboard interactions.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the keyboard will be managed.
+
+
+
+ Sends a sequence of keystrokes to the target.
+
+ A string representing the keystrokes to send.
+
+
+
+ Presses a key.
+
+ The key value representing the key to press.
+ The key value must be one of the values from the class.
+
+
+
+ Releases a key.
+
+ The key value representing the key to release.
+ The key value must be one of the values from the class.
+
+
+
+ Defines the interface through which the user can manipulate local storage.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the application cache will be managed.
+
+
+
+ Gets the number of items in local storage.
+
+
+
+
+ Returns local storage value given a key.
+
+ The key value for the item in storage.
+ A local storage value given a key, if present, otherwise returns null.
+
+
+
+ Returns a read-only list of local storage keys.
+
+ A read-only list of local storage keys.
+
+
+
+ Sets local storage entry using given key/value pair.
+
+ local storage key
+ local storage value
+
+
+
+ Removes local storage entry for the given key.
+
+ key to be removed from the list
+ Response value for the given key.
+
+
+
+ Removes all entries from the local storage.
+
+
+
+
+ Defines the interface through which the user can manipulate browser location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the application cache will be managed.
+
+
+
+ Gets or sets a value indicating the physical location of the browser.
+
+
+
+
+ Provides a mechanism for examining logs for the driver during the test.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Instance of the driver currently in use
+
+
+
+ Gets the list of available log types for this driver.
+
+
+
+
+ Gets the set of objects for a specified log.
+
+ The log for which to retrieve the log entries.
+ Log types can be found in the class.
+ The list of objects for the specified log.
+
+
+
+ Defines the interface through which the user can execute advanced mouse interactions.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the mouse will be managed.
+
+
+
+ Clicks at a set of coordinates using the primary mouse button.
+
+ An describing where to click.
+
+
+
+ Double-clicks at a set of coordinates.
+
+ A describing where to double-click.
+
+
+
+ Presses the primary mouse button at a set of coordinates.
+
+ A describing where to press the mouse button down.
+
+
+
+ Releases the primary mouse button at a set of coordinates.
+
+ A describing where to release the mouse button.
+
+
+
+ Moves the mouse to the specified set of coordinates.
+
+ A describing where to move the mouse to.
+
+
+
+ Moves the mouse to the specified set of coordinates.
+
+ A describing where to click.
+ A horizontal offset from the coordinates specified in .
+ A vertical offset from the coordinates specified in .
+
+
+
+ Clicks at a set of coordinates using the secondary mouse button.
+
+ A describing where to click.
+
+
+
+ Provides a mechanism for Navigating with the driver.
+
+
+
+
+ Initializes a new instance of the class
+
+ Driver in use
+
+
+
+ Move the browser back
+
+
+
+
+ Move the browser forward
+
+
+
+
+ Navigate to a url for your test
+
+ String of where you want the browser to go to
+
+
+
+ Navigate to a url for your test
+
+ Uri object of where you want the browser to go to
+
+
+
+ Refresh the browser
+
+
+
+
+ Provides a mechanism for setting options needed for the driver during the test.
+
+
+
+
+ Initializes a new instance of the class
+
+ Instance of the driver currently in use
+
+
+
+ Gets an object allowing the user to manipulate cookies on the page.
+
+
+
+
+ Gets an object allowing the user to manipulate the currently-focused browser window.
+
+ "Currently-focused" is defined as the browser window having the window handle
+ returned when IWebDriver.CurrentWindowHandle is called.
+
+
+
+ Gets an object allowing the user to examine the logs of the current driver instance.
+
+
+
+
+ Provides access to the timeouts defined for this driver.
+
+ An object implementing the interface.
+
+
+
+ Defines the interface through which the user can manipulate session storage.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The driver instance.
+
+
+
+ Gets the number of items in session storage.
+
+
+
+
+ Returns session storage value given a key.
+
+ The key of the item in storage.
+ A session storage value given a key, if present, otherwise return null.
+
+
+
+ Returns a read-only list of session storage keys.
+
+ A read-only list of session storage keys.
+
+
+
+ Sets session storage entry using given key/value pair.
+
+ Session storage key
+ Session storage value
+
+
+
+ Removes session storage entry for the given key.
+
+ key to be removed from the list
+ Response value for the given key.
+
+
+
+ Removes all entries from the session storage.
+
+
+
+
+ Provides a mechanism for finding elements on the page with locators.
+
+
+
+
+ Initializes a new instance of the class
+
+ The driver that is currently in use
+
+
+
+ Move to a different frame using its index
+
+ The index of the
+ A WebDriver instance that is currently in use
+
+
+
+ Move to different frame using its name
+
+ name of the frame
+ A WebDriver instance that is currently in use
+
+
+
+ Move to a frame element.
+
+ a previously found FRAME or IFRAME element.
+ A WebDriver instance that is currently in use.
+
+
+
+ Select the parent frame of the currently selected frame.
+
+ An instance focused on the specified frame.
+
+
+
+ Change to the Window by passing in the name
+
+ Window handle or name of the window that you wish to move to
+ A WebDriver instance that is currently in use
+
+
+
+ Change the active frame to the default
+
+ Element of the default
+
+
+
+ Finds the active element on the page and returns it
+
+ Element that is active
+
+
+
+ Switches to the currently active modal dialog for this particular driver instance.
+
+ A handle to the dialog.
+
+
+
+ Defines the interface through which the user can define timeouts.
+
+
+
+
+ Initializes a new instance of the class
+
+ The driver that is currently in use
+
+
+
+ Gets or sets the implicit wait timeout, which is the amount of time the
+ driver should wait when searching for an element if it is not immediately
+ present.
+
+
+ When searching for a single element, the driver should poll the page
+ until the element has been found, or this timeout expires before throwing
+ a . When searching for multiple elements,
+ the driver should poll the page until at least one element has been found
+ or this timeout has expired.
+
+ Increasing the implicit wait timeout should be used judiciously as it
+ will have an adverse effect on test run time, especially when used with
+ slower location strategies like XPath.
+
+
+
+
+ Gets or sets the asynchronous script timeout, which is the amount
+ of time the driver should wait when executing JavaScript asynchronously.
+ This timeout only affects the
+ method.
+
+
+
+
+ Gets or sets the page load timeout, which is the amount of time the driver
+ should wait for a page to load when setting the
+ property.
+
+
+
+
+ Defines the interface through which the user can execute advanced touch screen interactions.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the touch screen will be managed.
+
+
+
+ Allows the execution of single tap on the screen, analogous to click using a Mouse.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Allows the execution of the gesture 'down' on the screen. It is typically the first of a
+ sequence of touch gestures.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Allows the execution of the gesture 'up' on the screen. It is typically the last of a
+ sequence of touch gestures.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Allows the execution of the gesture 'move' on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Creates a scroll gesture that starts on a particular screen location.
+
+ The object representing the location on the screen
+ where the scroll starts, usually an .
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Creates a scroll gesture for a particular x and y offset.
+
+ The horizontal offset relative to the view port.
+ The vertical offset relative to the view port.
+
+
+
+ Allows the execution of double tap on the screen, analogous to click using a Mouse.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Allows the execution of a long press gesture on the screen.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Creates a flick gesture for the current view.
+
+ The horizontal speed in pixels per second.
+ The vertical speed in pixels per second.
+
+
+
+ Creates a flick gesture for the current view starting at a specific location.
+
+ The object representing the location on the screen
+ where the scroll starts, usually an .
+ The x offset relative to the viewport.
+ The y offset relative to the viewport.
+ The speed in pixels per second.
+
+
+
+ Provides a way to use the driver through
+
+ ///
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new RemoteWebDriver(new Uri("http://127.0.0.1:4444/wd/hub"),DesiredCapabilities.InternetExplorer());
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ }
+ }
+
+
+
+ The default command timeout for HTTP requests in a RemoteWebDriver instance.
+
+
+
+
+ Initializes a new instance of the class. This constructor defaults proxy to http://127.0.0.1:4444/wd/hub
+
+ An object containing the desired capabilities of the browser.
+
+
+
+ Initializes a new instance of the class. This constructor defaults proxy to http://127.0.0.1:4444/wd/hub
+
+ An object containing the desired capabilities of the browser.
+
+
+
+ Initializes a new instance of the class. This constructor defaults proxy to http://127.0.0.1:4444/wd/hub
+
+ URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
+ An object containing the desired capabilities of the browser.
+
+
+
+ Initializes a new instance of the class
+
+ URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
+ An object containing the desired capabilities of the browser.
+
+
+
+ Initializes a new instance of the class using the specified remote address, desired capabilities, and command timeout.
+
+ URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
+ An object containing the desired capabilities of the browser.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class
+
+ An object which executes commands for the driver.
+ An object containing the desired capabilities of the browser.
+
+
+
+ Gets or sets the URL the browser is currently displaying.
+
+
+
+
+
+
+
+ Gets the title of the current browser window.
+
+
+
+
+ Gets the source of the page last loaded by the browser.
+
+
+
+
+ Gets the current window handle, which is an opaque handle to this
+ window that uniquely identifies it within this driver instance.
+
+
+
+
+ Gets the window handles of open browser windows.
+
+
+
+
+ Gets an object for sending keystrokes to the browser.
+
+
+
+
+ Gets an object for sending mouse commands to the browser.
+
+
+
+
+ Gets a value indicating whether web storage is supported for this driver.
+
+
+
+
+ Gets an object for managing web storage.
+
+
+
+
+ Gets a value indicating whether manipulating the application cache is supported for this driver.
+
+
+
+
+ Gets an object for managing application cache.
+
+
+
+
+ Gets a value indicating whether manipulating geolocation is supported for this driver.
+
+
+
+
+ Gets an object for managing browser location.
+
+
+
+
+ Gets the capabilities that the RemoteWebDriver instance is currently using
+
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+
+
+
+ Gets the for the current session of this driver.
+
+
+
+
+ Gets a value indicating whether this object is a valid action executor.
+
+
+
+
+ Gets a value indicating whether or not the driver is compliant with the W3C WebDriver specification.
+
+
+
+
+ Gets the which executes commands for this driver.
+
+
+
+
+ Gets or sets the factory object used to create instances of
+ or its subclasses.
+
+
+
+
+ Finds the first element in the page that matches the object
+
+ By mechanism to find the object
+ IWebElement object so that you can interact with that object
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ IWebElement elem = driver.FindElement(By.Name("q"));
+
+
+
+
+
+ Finds the elements on the page by using the object and returns a ReadOnlyCollection of the Elements on the page
+
+ By mechanism to find the element
+ ReadOnlyCollection of IWebElement
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ ReadOnlyCollection]]> classList = driver.FindElements(By.ClassName("class"));
+
+
+
+
+
+ Closes the Browser
+
+
+
+
+ Close the Browser and Dispose of WebDriver
+
+
+
+
+ Method For getting an object to set the Speed
+
+ Returns an IOptions object that allows the driver to set the speed and cookies and getting cookies
+
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ driver.Manage().GetCookies();
+
+
+
+
+
+ Method to allow you to Navigate with WebDriver
+
+ Returns an INavigation Object that allows the driver to navigate in the browser
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+
+
+
+
+
+ Method to give you access to switch frames and windows
+
+ Returns an Object that allows you to Switch Frames and Windows
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ driver.SwitchTo().Frame("FrameName");
+
+
+
+
+
+ Executes JavaScript in the context of the currently selected frame or window
+
+ The JavaScript code to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+
+ Executes JavaScript asynchronously in the context of the currently selected frame or window.
+
+ The JavaScript code to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+
+ Finds the first element in the page that matches the ID supplied
+
+ ID of the element
+ IWebElement object so that you can interact with that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementById("id")
+
+
+
+
+
+ Finds the first element in the page that matches the ID supplied
+
+ ID of the Element
+ ReadOnlyCollection of Elements that match the object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsById("id")
+
+
+
+
+
+ Finds the first element in the page that matches the CSS Class supplied
+
+ className of the
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementByClassName("classname")
+
+
+
+
+
+ Finds a list of elements that match the class name supplied
+
+ CSS class Name on the element
+ ReadOnlyCollection of IWebElement object so that you can interact with those objects
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByClassName("classname")
+
+
+
+
+
+ Finds the first of elements that match the link text supplied
+
+ Link text of element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByLinkText("linktext")
+
+
+
+
+
+ Finds a list of elements that match the link text supplied
+
+ Link text of element
+ ReadOnlyCollection]]> object so that you can interact with those objects
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByClassName("classname")
+
+
+
+
+
+ Finds the first of elements that match the part of the link text supplied
+
+ part of the link text
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByPartialLinkText("partOfLink")
+
+
+
+
+
+ Finds a list of elements that match the class name supplied
+
+ part of the link text
+ ReadOnlyCollection]]> objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByPartialLinkText("partOfTheLink")
+
+
+
+
+
+ Finds the first of elements that match the name supplied
+
+ Name of the element on the page
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ elem = driver.FindElementsByName("name")
+
+
+
+
+
+ Finds a list of elements that match the name supplied
+
+ Name of element
+ ReadOnlyCollect of IWebElement objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByName("name")
+
+
+
+
+
+ Finds the first of elements that match the DOM Tag supplied
+
+ DOM tag Name of the element being searched
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByTagName("tag")
+
+
+
+
+
+ Finds a list of elements that match the DOM Tag supplied
+
+ DOM tag Name of element being searched
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByTagName("tag")
+
+
+
+
+
+ Finds the first of elements that match the XPath supplied
+
+ xpath to the element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByXPath("//table/tbody/tr/td/a");
+
+
+
+
+
+ Finds a list of elements that match the XPath supplied
+
+ xpath to the element
+ ReadOnlyCollection of IWebElement objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByXpath("//tr/td/a")
+
+
+
+
+
+ Finds the first element matching the specified CSS selector.
+
+ The CSS selector to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified CSS selector.
+
+ The CSS selector to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Gets a object representing the image of the page on the screen.
+
+ A object containing the image.
+
+
+
+ Dispose the RemoteWebDriver Instance
+
+
+
+
+ Performs the specified list of actions with this action executor.
+
+ The list of action sequences to perform.
+
+
+
+ Resets the input state of the action executor.
+
+
+
+
+ Escapes invalid characters in a CSS selector.
+
+ The selector to escape.
+ The selector with invalid characters escaped.
+
+
+
+ Executes commands with the driver
+
+ Command that needs executing
+ Parameters needed for the command
+ WebDriver Response
+
+
+
+ Find the element in the response
+
+ Response from the browser
+ Element from the page
+
+
+
+ Finds the elements that are in the response
+
+ Response from the browser
+ Collection of elements
+
+
+
+ Stops the client from running
+
+ if its in the process of disposing
+
+
+
+ Starts a session with the driver
+
+ Capabilities of the browser
+
+
+
+ Gets the capabilities as a dictionary supporting legacy drivers.
+
+ The dictionary to return.
+ A Dictionary consisting of the capabilities requested.
+ This method is only transitional. Do not rely on it. It will be removed
+ once browser driver capability formats stabilize.
+
+
+
+ Gets the capabilities as a dictionary.
+
+ The dictionary to return.
+ A Dictionary consisting of the capabilities requested.
+ This method is only transitional. Do not rely on it. It will be removed
+ once browser driver capability formats stabilize.
+
+
+
+ Executes a command with this driver .
+
+ A value representing the command to execute.
+ A containing the names and values of the parameters of the command.
+ A containing information about the success or failure of the command and any data returned by the command.
+
+
+
+ Starts the command executor, enabling communication with the browser.
+
+
+
+
+ Stops the command executor, ending further communication with the browser.
+
+
+
+
+ Finds an element matching the given mechanism and value.
+
+ The mechanism by which to find the element.
+ The value to use to search for the element.
+ The first matching the given criteria.
+
+
+
+ Finds all elements matching the given mechanism and value.
+
+ The mechanism by which to find the elements.
+ The value to use to search for the elements.
+ A collection of all of the IWebElements matching the given criteria.
+
+
+
+ Executes JavaScript in the context of the currently selected frame or window using a specific command.
+
+ The JavaScript code to execute.
+ The name of the command to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+
+ Converts the arguments to JavaScript objects.
+
+ The arguments.
+ The list of the arguments converted to JavaScript objects.
+
+
+
+ RemoteWebElement allows you to have access to specific items that are found on the page
+
+
+
+
+
+
+ The property name that represents a web element in the wire protocol.
+
+
+
+
+ The property name that represents a web element in the legacy dialect of the wire protocol.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The instance hosting this element.
+ The ID assigned to the element.
+
+
+
+ Gets the used to find this element.
+
+
+
+
+ Gets the tag name of this element.
+
+
+ The property returns the tag name of the
+ element, not the value of the name attribute. For example, it will return
+ "input" for an element specified by the HTML markup <input name="foo" />.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the innerText of this element, without any leading or trailing whitespace,
+ and with other whitespace collapsed.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is enabled.
+
+ The property will generally
+ return for everything except explicitly disabled input elements.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is selected.
+
+ This operation only applies to input elements such as checkboxes,
+ options in a select element and radio buttons.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a object containing the coordinates of the upper-left corner
+ of this element relative to the upper-left corner of the page.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a object containing the height and width of this element.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is displayed.
+
+ The property avoids the problem
+ of having to parse an element's "style" attribute to determine
+ visibility of an element.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the point where the element would be when scrolled into view.
+
+
+
+
+ Gets the coordinates identifying the location of this element using
+ various frames of reference.
+
+
+
+
+ Gets the internal ID of the element.
+
+
+
+
+ Gets the ID of the element
+
+ This property is internal to the WebDriver instance, and is
+ not intended to be used in your code. The element's ID has no meaning
+ outside of internal WebDriver usage, so it would be improper to scope
+ it as public. However, both subclasses of
+ and the parent driver hosting the element have a need to access the
+ internal element ID. Therefore, we have two properties returning the
+ same value, one scoped as internal, the other as protected.
+
+
+
+ Clears the content of this element.
+
+ If this element is a text entry element, the
+ method will clear the value. It has no effect on other elements. Text entry elements
+ are defined as elements with INPUT or TEXTAREA tags.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Simulates typing text into the element.
+
+ The text to type into the element.
+ The text to be typed may include special characters like arrow keys,
+ backspaces, function keys, and so on. Valid special keys are defined in
+ .
+
+ Thrown when the target element is not enabled.
+ Thrown when the target element is not visible.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Submits this element to the web server.
+
+ If this current element is a form, or an element within a form,
+ then this will be submitted to the web server. If this causes the current
+ page to change, then this method will attempt to block until the new page
+ is loaded.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Clicks this element.
+
+
+ Click this element. If the click causes a new page to load, the
+ method will attempt to block until the page has loaded. After calling the
+ method, you should discard all references to this
+ element unless you know that the element and the page will still be present.
+ Otherwise, any further operations performed on this element will have an undefined
+ behavior.
+
+ Thrown when the target element is not enabled.
+ Thrown when the target element is not visible.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of the specified attribute for this element.
+
+ The name of the attribute.
+ The attribute's current value. Returns a if the
+ value is not set.
+ The method will return the current value
+ of the attribute, even if the value has been modified after the page has been
+ loaded. Note that the value of the following attributes will be returned even if
+ there is no explicit attribute on the element:
+ Attribute nameValue returned if not explicitly specifiedValid element typescheckedcheckedCheck BoxselectedselectedOptions in Select elementsdisableddisabledInput and other UI elements
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of a JavaScript property of this element.
+
+ The name JavaScript the JavaScript property to get the value of.
+ The JavaScript property's current value. Returns a if the
+ value is not set or the property does not exist.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of a CSS property of this element.
+
+ The name of the CSS property to get the value of.
+ The value of the specified CSS property.
+ The value returned by the
+ method is likely to be unpredictable in a cross-browser environment.
+ Color values should be returned as hex strings. For example, a
+ "background-color" property set as "green" in the HTML source, will
+ return "#008000" for its value.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Finds all IWebElements within the current context
+ using the given mechanism.
+
+ The locating mechanism to use.
+ A of all WebElements
+ matching the current criteria, or an empty list if nothing matches.
+
+
+
+ Finds the first using the given method.
+
+ The locating mechanism to use.
+ The first matching on the current context.
+ If no element matches the criteria.
+
+
+
+ Finds the first of elements that match the link text supplied
+
+ Link text of element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementByLinkText("linktext")
+
+
+
+
+
+ Finds the first of elements that match the link text supplied
+
+ Link text of element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByLinkText("linktext")
+
+
+
+
+
+ Finds the first element in the page that matches the ID supplied
+
+ ID of the element
+ IWebElement object so that you can interact with that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementById("id")
+
+
+
+
+
+ Finds the first element in the page that matches the ID supplied
+
+ ID of the Element
+ ReadOnlyCollection of Elements that match the object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsById("id")
+
+
+
+
+
+ Finds the first of elements that match the name supplied
+
+ Name of the element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ elem = driver.FindElementsByName("name")
+
+
+
+
+
+ Finds a list of elements that match the name supplied
+
+ Name of element
+ ReadOnlyCollect of IWebElement objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByName("name")
+
+
+
+
+
+ Finds the first of elements that match the DOM Tag supplied
+
+ tag name of the element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByTagName("tag")
+
+
+
+
+
+ Finds a list of elements that match the DOM Tag supplied
+
+ DOM Tag of the element on the page
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByTagName("tag")
+
+
+
+
+
+ Finds the first element in the page that matches the CSS Class supplied
+
+ CSS class name of the element on the page
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementByClassName("classname")
+
+
+
+
+
+ Finds a list of elements that match the class name supplied
+
+ CSS class name of the elements on the page
+ ReadOnlyCollection of IWebElement object so that you can interact with those objects
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByClassName("classname")
+
+
+
+
+
+ Finds the first of elements that match the XPath supplied
+
+ xpath to the element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByXPath("//table/tbody/tr/td/a");
+
+
+
+
+
+ Finds a list of elements that match the XPath supplied
+
+ xpath to element on the page
+ ReadOnlyCollection of IWebElement objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByXpath("//tr/td/a")
+
+
+
+
+
+ Finds the first of elements that match the part of the link text supplied
+
+ part of the link text
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByPartialLinkText("partOfLink")
+
+
+
+
+
+ Finds a list of elements that match the link text supplied
+
+ part of the link text
+ ReadOnlyCollection]]> objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByPartialLinkText("partOfTheLink")
+
+
+
+
+
+ Finds the first element matching the specified CSS selector.
+
+ The id to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified CSS selector.
+
+ The CSS selector to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Gets a object representing the image of this element on the screen.
+
+ A object containing the image.
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Method to get the hash code of the element
+
+ Integer of the hash code for the element
+
+
+
+ Compares if two elements are equal
+
+ Object to compare against
+ A boolean if it is equal or not
+
+
+
+ Converts an object into an object that represents an element for the wire protocol.
+
+ A that represents an element in the wire protocol.
+
+
+
+ Finds a child element matching the given mechanism and value.
+
+ The mechanism by which to find the element.
+ The value to use to search for the element.
+ The first matching the given criteria.
+
+
+
+ Finds all child elements matching the given mechanism and value.
+
+ The mechanism by which to find the elements.
+ The value to use to search for the elements.
+ A collection of all of the IWebElements matching the given criteria.
+
+
+
+ Executes a command on this element using the specified parameters.
+
+ The to execute against this element.
+ A containing names and values of the parameters for the command.
+ The object containing the result of the command execution.
+
+
+
+ Creates a from a dictionary containing a reference to an element.
+
+ The dictionary containing the element reference.
+ A containing the information from the specified dictionary.
+
+
+
+ Gets a value indicating wether the specified dictionary represents a reference to a web element.
+
+ The dictionary to check.
+
+ if the dictionary contains an element reference; otherwise, .
+
+
+
+ Provides remote access to the API.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The driver instance.
+
+
+
+ Gets the local storage for the site currently opened in the browser.
+
+
+
+
+ Gets the session storage for the site currently opened in the browser.
+
+
+
+
+ Defines the interface through which the user can manipulate the browser window.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Instance of the driver currently in use
+
+
+
+ Gets or sets the position of the browser window relative to the upper-left corner of the screen.
+
+ When setting this property, it should act as the JavaScript window.moveTo() method.
+
+
+
+ Gets or sets the size of the outer browser window, including title bars and window borders.
+
+ When setting this property, it should act as the JavaScript window.resizeTo() method.
+
+
+
+ Maximizes the current window if it is not already maximized.
+
+
+
+
+ Minimizes the current window if it is not already maximized.
+
+
+
+
+ Sets the current window to full screen if it is not already in that state.
+
+
+
+
+ Handles reponses from the browser
+
+
+
+
+ Initializes a new instance of the class
+
+
+
+
+ Initializes a new instance of the class
+
+ Session ID in use
+
+
+
+ Gets or sets the value from JSON.
+
+
+
+
+ Gets or sets the session ID.
+
+
+
+
+ Gets or sets the status value of the response.
+
+
+
+
+ Gets a value indicating whether this response is compliant with the WebDriver specification.
+
+
+
+
+ Returns a new from a JSON-encoded string.
+
+ The JSON string to deserialize into a .
+ A object described by the JSON string.
+
+
+
+ Returns this object as a JSON-encoded string.
+
+ A JSON-encoded string representing this object.
+
+
+
+ Returns the object as a string.
+
+ A string with the Session ID, status value, and the value from JSON.
+
+
+
+ Provides a mechanism for maintaining a session for a test
+
+
+
+
+ Initializes a new instance of the class
+
+ Key for the session in use
+
+
+
+ Get the value of the key
+
+ The key in use
+
+
+
+ Get the hash code of the key
+
+ The hash code of the key
+
+
+
+ Compares two Sessions
+
+ Session to compare
+ True if they are equal or False if they are not
+
+
+
+ Gives properties to get a stack trace
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the given property values.
+
+ A containing the names and values for the properties of this .
+
+
+
+ Gets or sets the value of the filename in the stack
+
+
+
+
+ Gets or sets the value of the Class name in the stack trace
+
+
+
+
+ Gets or sets the line number
+
+
+
+
+ Gets or sets the Method name in the stack trace
+
+
+
+
+ Gets a string representation of the object.
+
+ A string representation of the object.
+
+
+
+ Holds the information about all commands specified by the JSON wire protocol.
+ This class cannot be inherited, as it is intended to be a singleton, and
+ allowing subclasses introduces the possibility of multiple instances.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the level of the W3C WebDriver specification that this repository supports.
+
+
+
+
+ Initializes the dictionary of commands for the CommandInfoRepository
+
+
+
+
+ Represents an error condition from a remote end using the W3C specification
+ dialect of the wire protocol.
+
+
+
+
+ Represents the element click intercepted error.
+
+
+
+
+ Represents the element not selectable error.
+
+
+
+
+ Represents the element not interactable error.
+
+
+
+
+ Represents the element not visible error.
+
+ TODO: Remove this string; it is no longer valid in the specification.
+
+
+
+ Represents the insecure certificate error.
+
+
+
+
+ Represents the invalid argument error.
+
+
+
+
+ Represents the invalid cookie domain error.
+
+
+
+
+ Represents the invalid coordinates error.
+
+
+
+
+ Represents the invalid element coordinates error.
+
+ TODO: Remove this string; it is no longer valid in the specification.
+
+
+
+ Represents the invalid element state error.
+
+
+
+
+ Represents the invalid selector error.
+
+
+
+
+ Represents the invalid session ID error.
+
+
+
+
+ Represents the unhandled JavaScript error.
+
+
+
+
+ Represents the move target out of bounds error.
+
+
+
+
+ Represents the no such alert error.
+
+
+
+
+ Represents the no such cookie error.
+
+
+
+
+ Represents the no such element error.
+
+
+
+
+ Represents the no such alert frame.
+
+
+
+
+ Represents the no such alert window.
+
+
+
+
+ Represents the script timeout error.
+
+
+
+
+ Represents the session not created error.
+
+
+
+
+ Represents the stale element reference error.
+
+
+
+
+ Represents the timeout error.
+
+
+
+
+ Represents the unable to set cookie error.
+
+
+
+
+ Represents the unable to capture screen error.
+
+
+
+
+ Represents the unexpected alert open error.
+
+
+
+
+ Represents the unknown command error.
+
+
+
+
+ Represents an unknown error.
+
+
+
+
+ Represents the unknown method error.
+
+
+
+
+ Represents the unsupported operation error.
+
+
+
+
+ Converts a string error to a value.
+
+ The error string to convert.
+ The converted value.
+
+
+
+ Holds the information about all commands specified by the JSON wire protocol.
+ This class cannot be inherited, as it is intended to be a singleton, and
+ allowing subclasses introduces the possibility of multiple instances.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the level of the W3C WebDriver specification that this repository supports.
+
+
+
+
+ Initializes the dictionary of commands for the CommandInfoRepository
+
+
+
+
+ Exposes the service provided by a native WebDriver server executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the directory containing the executable providing the service to drive the browser.
+ The port on which the driver executable should listen.
+ The file name of the driver service executable.
+ A URL at which the driver service executable may be downloaded.
+
+ If the path specified is or an empty string.
+
+
+ If the specified driver service executable does not exist in the specified directory.
+
+
+
+
+ Gets the Uri of the service.
+
+
+
+
+ Gets or sets the host name of the service. Defaults to "localhost."
+
+
+ Most driver service executables do not allow connections from remote
+ (non-local) machines. This property can be used as a workaround so
+ that an IP address (like "127.0.0.1" or "::1") can be used instead.
+
+
+
+
+ Gets or sets the port of the service.
+
+
+
+
+ Gets or sets a value indicating whether the initial diagnostic information is suppressed
+ when starting the driver server executable. Defaults to , meaning
+ diagnostic information should be shown by the driver server executable.
+
+
+
+
+ Gets a value indicating whether the service is running.
+
+
+
+
+ Gets or sets a value indicating whether the command prompt window of the service should be hidden.
+
+
+
+
+ Gets the process ID of the running driver service executable. Returns 0 if the process is not running.
+
+
+
+
+ Gets the executable file name of the driver service.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Gets a value indicating the time to wait for an initial connection before timing out.
+
+
+
+
+ Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
+
+
+
+
+ Gets a value indicating whether the service has a shutdown API that can be called to terminate
+ it gracefully before forcing a termination.
+
+
+
+
+ Gets a value indicating whether the service is responding to HTTP requests.
+
+
+
+
+ Releases all resources associated with this .
+
+
+
+
+ Starts the DriverService.
+
+
+
+
+ Finds the specified driver service executable.
+
+ The file name of the executable to find.
+ A URL at which the driver service executable may be downloaded.
+ The directory containing the driver service executable.
+
+ If the specified driver service executable does not exist in the current directory or in a directory on the system path.
+
+
+
+
+ Releases all resources associated with this .
+
+
+ if the Dispose method was explicitly called; otherwise, .
+
+
+
+ Stops the DriverService.
+
+
+
+
+ Waits until a the service is initialized, or the timeout set
+ by the property is reached.
+
+
+ if the service is properly started and receiving HTTP requests;
+ otherwise; .
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Provides a mechanism to write tests against Edge
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified options.
+
+ The to be used with the Edge driver.
+
+
+
+ Initializes a new instance of the class using the specified driver service.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing EdgeDriver.exe.
+
+ The full path to the directory containing EdgeDriver.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing EdgeDriver.exe and options.
+
+ The full path to the directory containing EdgeDriver.exe.
+ The to be used with the Edge driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing EdgeDriver.exe, options, and command timeout.
+
+ The full path to the directory containing EdgeDriver.exe.
+ The to be used with the Edge driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use.
+ The to be used with the Edge driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Exposes the service provided by the native MicrosoftWebDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the EdgeDriver executable.
+ The file name of the EdgeDriver executable.
+ The port on which the EdgeDriver executable should listen.
+
+
+
+ Gets or sets the value of the host adapter on which the Edge driver service should listen for connections.
+
+
+
+
+ Gets or sets the value of the package the Edge driver service will launch and automate.
+
+
+
+
+ Gets or sets a value indicating whether the service should use verbose logging.
+
+
+
+
+ Gets or sets a value indicating whether the instance
+ should use the a protocol dialect compliant with the W3C WebDriver Specification.
+
+
+ Setting this property to a non- value for driver
+ executables matched to versions of Windows before the 2018 Fall Creators
+ Update will result in a the driver executable shutting down without
+ execution, and all commands will fail. Do not set this property unless
+ you are certain your version of the MicrosoftWebDriver.exe supports the
+ --w3c and --jwp command-line arguments.
+
+
+
+
+ Gets a value indicating whether the service has a shutdown API that can be called to terminate
+ it gracefully before forcing a termination.
+
+
+
+
+ Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the EdgeDriverService.
+
+ A EdgeDriverService that implements default settings.
+
+
+
+ Creates a default instance of the EdgeDriverService using a specified path to the EdgeDriver executable.
+
+ The directory containing the EdgeDriver executable.
+ A EdgeDriverService using a random port.
+
+
+
+ Creates a default instance of the EdgeDriverService using a specified path to the EdgeDriver executable with the given name.
+
+ The directory containing the EdgeDriver executable.
+ The name of the EdgeDriver executable file.
+ A EdgeDriverService using a random port.
+
+
+
+ Creates a default instance of the EdgeDriverService using a specified path to the EdgeDriver executable with the given name and listening port.
+
+ The directory containing the EdgeDriver executable.
+ The name of the EdgeDriver executable file
+ The port number on which the driver will listen
+ A EdgeDriverService using the specified port.
+
+
+
+ Specifies the behavior of waiting for page loads in the Edge driver.
+
+
+
+
+ Indicates the behavior is not set.
+
+
+
+
+ Waits for pages to load and ready state to be 'complete'.
+
+
+
+
+ Waits for pages to load and for ready state to be 'interactive' or 'complete'.
+
+
+
+
+ Does not wait for pages to load, returning immediately.
+
+
+
+
+ Class to manage options specific to
+
+
+ EdgeOptions options = new EdgeOptions();
+
+
+ For use with EdgeDriver:
+
+
+ EdgeDriver driver = new EdgeDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Gets or sets a value indicating whether the browser should be launched using
+ InPrivate browsing.
+
+
+
+
+ Gets or sets the URL of the page with which the browser will be navigated to on launch.
+
+
+
+
+ Adds a path to an extension that is to be used with the Edge driver.
+
+ The full path and file name of the extension.
+
+
+
+ Adds a list of paths to an extensions that are to be used with the Edge driver.
+
+ An array of full paths with file names of extensions to add.
+
+
+
+ Adds a list of paths to an extensions that are to be used with the Edge driver.
+
+ An of full paths with file names of extensions to add.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Edge driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling where
+ has already been added will overwrite the existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for Edge with these options included as
+ capabilities. This copies the options. Further changes will not be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for Edge with these options.
+
+
+
+ Provides a mechanism to get elements off the page for test
+
+
+
+
+ Initializes a new instance of the class
+
+ Driver in use
+ Id of the element
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Represents the binary associated with Firefox.
+
+ The class is responsible for instantiating the
+ Firefox process, and the operating system environment in which it runs.
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class located at a specific file location.
+
+ Full path and file name to the Firefox executable.
+
+
+
+ Gets or sets the timeout to wait for Firefox to be available for command execution.
+
+
+
+
+ Gets the associated with this .
+
+
+
+
+ Gets a value indicating whether the current operating system is Linux.
+
+
+
+
+ Gets a containing string key-value pairs
+ representing any operating system environment variables beyond the defaults.
+
+
+
+
+ Starts Firefox using the specified profile and command-line arguments.
+
+ The to use with this instance of Firefox.
+ The command-line arguments to use in starting Firefox.
+
+
+
+ Sets a variable to be used in the Firefox execution environment.
+
+ The name of the environment variable to set.
+ The value of the environment variable to set.
+
+
+
+ Waits for the process to complete execution.
+
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Returns a String that represents the current Object.
+
+ A String that represents the current Object.
+
+
+
+ Starts the Firefox process.
+
+
+
+
+ Releases the unmanaged resources used by the and optionally
+ releases the managed resources.
+
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Provides a way to access Firefox to run tests.
+
+
+ When the FirefoxDriver object has been instantiated the browser will load. The test can then navigate to the URL under test and
+ start your test.
+
+ In the case of the FirefoxDriver, you can specify a named profile to be used, or you can let the
+ driver create a temporary, anonymous profile. A custom extension allowing the driver to communicate
+ to the browser will be installed into the profile.
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new FirefoxDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ }
+ }
+
+
+
+
+
+ The name of the ICapabilities setting to use to define a custom Firefox profile.
+
+
+
+
+ The name of the ICapabilities setting to use to define a custom location for the
+ Firefox executable.
+
+
+
+
+ The default port on which to communicate with the Firefox extension.
+
+
+
+
+ Indicates whether native events is enabled by default for this platform.
+
+
+
+
+ Indicates whether the driver will accept untrusted SSL certificates.
+
+
+
+
+ Indicates whether the driver assume the issuer of untrusted certificates is untrusted.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified options. Uses the Mozilla-provided Marionette driver implementation.
+
+ The to be used with the Firefox driver.
+
+
+
+ Initializes a new instance of the class using the specified driver service. Uses the Mozilla-provided Marionette driver implementation.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing geckodriver.exe.
+
+ The full path to the directory containing geckodriver.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing geckodriver.exe and options.
+
+ The full path to the directory containing geckodriver.exe.
+ The to be used with the Firefox driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing geckodriver.exe, options, and command timeout.
+
+ The full path to the directory containing geckodriver.exe.
+ The to be used with the Firefox driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified options, driver service, and timeout. Uses the Mozilla-provided Marionette driver implementation.
+
+ The to use.
+ The to be used with the Firefox driver.
+
+
+
+ Initializes a new instance of the class using the specified options, driver service, and timeout. Uses the Mozilla-provided Marionette driver implementation.
+
+ The to use.
+ The to be used with the Firefox driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The Firefox driver does not allow a file detector to be set,
+ as the server component of the Firefox driver only allows uploads from
+ the local computer environment. Attempting to set this property has no
+ effect, but does not throw an exception. If you are attempting to run
+ the Firefox driver remotely, use in
+ conjunction with a standalone WebDriver server.
+
+
+
+ Gets a value indicating whether the Firefox driver instance uses
+ Mozilla's Marionette implementation. This is a temporary property
+ and will be removed when Marionette is available for the release
+ channel of Firefox.
+
+
+
+
+ In derived classes, the method prepares the environment for test execution.
+
+
+
+
+ Provides a way of executing Commands using the FirefoxDriver.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The on which to make the connection.
+ The creating the connection.
+ The name of the host on which to connect to the Firefox extension (usually "localhost").
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets the repository of objects containin information about commands.
+
+
+
+
+ Executes a command
+
+ The command you wish to execute
+ A response from the browser
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Releases the unmanaged resources used by the and
+ optionally releases the managed resources.
+
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Represents the valid values of logging levels available with the Firefox driver (geckodriver.exe).
+
+
+
+
+ Represents the Trace value, the most detailed logging level available.
+
+
+
+
+ Represents the Debug value
+
+
+
+
+ Represents the Config value
+
+
+
+
+ Represents the Info value
+
+
+
+
+ Represents the Warn value
+
+
+
+
+ Represents the Error value
+
+
+
+
+ Represents the Fatal value, the least detailed logging level available.
+
+
+
+
+ Represents that the logging value is unspecified, and should be the default level.
+
+
+
+
+ Provides methods for launching Firefox with the WebDriver extension installed.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The on which to make the connection.
+ The creating the connection.
+ The name of the host on which to connect to the Firefox extension (usually "localhost").
+
+
+
+ Gets the for communicating with this server.
+
+
+
+
+ Starts the server.
+
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Releases the unmanaged resources used by the and optionally
+ releases the managed resources.
+
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Exposes the service provided by the native FirefoxDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the Firefox driver executable.
+ The file name of the Firefox driver executable.
+ The port on which the Firefox driver executable should listen.
+
+
+
+ Gets or sets the location of the Firefox binary executable.
+
+
+
+
+ Gets or sets the port used by the driver executable to communicate with the browser.
+
+
+
+
+ Gets or sets the value of the IP address of the host adapter on which the
+ service should listen for connections.
+
+
+
+
+ Gets or sets a value indicating whether to connect to an already-running
+ instance of Firefox.
+
+
+
+
+ Gets or sets a value indicating whether to open the Firefox Browser Toolbox
+ when Firefox is launched.
+
+
+
+
+ Gets a value indicating the time to wait for an initial connection before timing out.
+
+
+
+
+ Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
+
+
+
+
+ Gets a value indicating whether the service has a shutdown API that can be called to terminate
+ it gracefully before forcing a termination.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the FirefoxDriverService.
+
+ A FirefoxDriverService that implements default settings.
+
+
+
+ Creates a default instance of the FirefoxDriverService using a specified path to the Firefox driver executable.
+
+ The directory containing the Firefox driver executable.
+ A FirefoxDriverService using a random port.
+
+
+
+ Creates a default instance of the FirefoxDriverService using a specified path to the Firefox driver executable with the given name.
+
+ The directory containing the Firefox driver executable.
+ The name of the Firefox driver executable file.
+ A FirefoxDriverService using a random port.
+
+
+
+ Returns the Firefox driver filename for the currently running platform
+
+ The file name of the Firefox driver service executable.
+
+
+
+ Provides the ability to install extensions into a .
+
+
+
+
+ Initializes a new instance of the class.
+
+ The name of the file containing the Firefox extension.
+ WebDriver attempts to resolve the parameter
+ by looking first for the specified file in the directory of the calling assembly,
+ then using the full path to the file, if a full path is provided.
+
+
+
+ Initializes a new instance of the class.
+
+ The name of the file containing the Firefox extension.
+ The ID of the resource within the assembly containing the extension
+ if the file is not present in the file system.
+ WebDriver attempts to resolve the parameter
+ by looking first for the specified file in the directory of the calling assembly,
+ then using the full path to the file, if a full path is provided. If the file is
+ not found in the file system, WebDriver attempts to locate a resource in the
+ executing assembly with the name specified by the
+ parameter.
+
+
+
+ Installs the extension into a profile directory.
+
+ The Firefox profile directory into which to install the extension.
+
+
+
+ Class to manage options specific to
+
+ Used with the marionette executable wires.exe.
+
+
+
+ FirefoxOptions options = new FirefoxOptions();
+
+
+ For use with FirefoxDriver:
+
+
+ FirefoxDriver driver = new FirefoxDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class for the given profile and binary.
+
+ The to use in the options.
+ The to use in the options.
+ The to copy into the options.
+
+
+
+ Gets or sets a value indicating whether to use the legacy driver implementation.
+
+
+
+
+ Gets or sets the object to be used with this instance.
+
+
+
+
+ Gets or sets the path and file name of the Firefox browser executable.
+
+
+
+
+ Gets or sets the logging level of the Firefox driver.
+
+
+
+
+ Adds an argument to be used in launching the Firefox browser.
+
+ The argument to add.
+ Arguments must be preceeded by two dashes ("--").
+
+
+
+ Adds a list arguments to be used in launching the Firefox browser.
+
+ An array of arguments to add.
+ Each argument must be preceeded by two dashes ("--").
+
+
+
+ Adds a list arguments to be used in launching the Firefox browser.
+
+ An array of arguments to add.
+ Each argument must be preceeded by two dashes ("--").
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Firefox driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+ Also, by default, calling this method adds capabilities to the options object passed to
+ geckodriver.exe.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Firefox driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+ Indicates whether the capability is to be set as a global
+ capability for the driver instead of a Firefox-specific option.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for Firefox with these options included as
+ capabilities. This does not copy the options. Further changes will be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for Firefox with these options.
+
+
+
+ Provides the ability to edit the preferences associated with a Firefox profile.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using a
+ specific profile directory.
+
+ The directory containing the profile.
+
+
+
+ Initializes a new instance of the class using a
+ specific profile directory.
+
+ The directory containing the profile.
+ Delete the source directory of the profile upon cleaning.
+
+
+
+ Gets or sets the port on which the profile connects to the WebDriver extension.
+
+
+
+
+ Gets the directory containing the profile.
+
+
+
+
+ Gets or sets a value indicating whether to delete this profile after use with
+ the .
+
+
+
+
+ Gets or sets a value indicating whether native events are enabled.
+
+
+
+
+ Gets or sets a value indicating whether to always load the library for allowing Firefox
+ to execute commands without its window having focus.
+
+ The property is only used on Linux.
+
+
+
+ Gets or sets a value indicating whether Firefox should accept SSL certificates which have
+ expired, signed by an unknown authority or are generally untrusted. Set to true
+ by default.
+
+
+
+
+ Gets or sets a value indicating whether Firefox assume untrusted SSL certificates
+ come from an untrusted issuer or are self-signed. Set to true by default.
+
+
+
+ Due to limitations within Firefox, it is easy to find out if a certificate has expired
+ or does not match the host it was served for, but hard to find out if the issuer of the
+ certificate is untrusted. By default, it is assumed that the certificates were not
+ issued from a trusted certificate authority.
+
+
+ If you receive an "untrusted site" prompt it Firefox when using a certificate that was
+ issued by valid issuer, but the certificate has expired or is being served served for
+ a different host (e.g. production certificate served in a testing environment) set this
+ to false.
+
+
+
+
+
+ Converts a base64-encoded string into a .
+
+ The base64-encoded string containing the profile contents.
+ The constructed .
+
+
+
+ Adds a Firefox Extension to this profile
+
+ The path to the new extension
+
+
+
+ Sets a preference in the profile.
+
+ The name of the preference to add.
+ A value to add to the profile.
+
+
+
+ Sets a preference in the profile.
+
+ The name of the preference to add.
+ A value to add to the profile.
+
+
+
+ Sets a preference in the profile.
+
+ The name of the preference to add.
+ A value to add to the profile.
+
+
+
+ Set proxy preferences for this profile.
+
+ The object defining the proxy
+ preferences for the profile.
+
+
+
+ Writes this in-memory representation of a profile to disk.
+
+
+
+
+ Cleans this Firefox profile.
+
+ If this profile is a named profile that existed prior to
+ launching Firefox, the method removes the WebDriver
+ Firefox extension. If the profile is an anonymous profile, the profile
+ is deleted.
+
+
+
+ Converts the profile into a base64-encoded string.
+
+ A base64-encoded string containing the contents of the profile.
+
+
+
+ Adds the WebDriver extension for Firefox to the profile.
+
+
+
+
+ Removes the WebDriver extension for Firefox to the profile, for use with non-legacy
+ FirefoxDriver instances that use geckodriver.
+
+
+
+
+ Internal implementation to set proxy preferences for this profile.
+
+ The object defining the proxy
+ preferences for the profile.
+
+
+
+ Generates a random directory name for the profile.
+
+ A random directory name for the profile.
+
+
+
+ Deletes the lock files for a profile.
+
+
+
+
+ Installs all extensions in the profile in the directory on disk.
+
+
+
+
+ Deletes the cache of extensions for this profile, if the cache exists.
+
+ If the extensions cache does not exist for this profile, the
+ method performs no operations, but
+ succeeds.
+
+
+
+ Writes the user preferences to the profile.
+
+
+
+
+ Reads the existing preferences from the profile.
+
+ A containing key-value pairs representing the preferences.
+ Assumes that we only really care about the preferences, not the comments
+
+
+
+ Sets a preference for a manually specified proxy.
+
+ The protocol for which to set the proxy.
+ The setting for the proxy.
+
+
+
+ Allows the user to enumerate and access existing named Firefox profiles.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets a containing FirefoxProfiles
+ representing the existing named profiles for Firefox.
+
+
+
+
+ Gets a with a given name.
+
+ The name of the profile to get.
+ A with a given name.
+ Returns if no profile with the given name exists.
+
+
+
+ Allows the user to control elements on a page in Firefox.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The instance hosting this element.
+ The ID assigned to the element.
+
+
+
+ Determines whether two instances are equal.
+
+ The to compare with the current .
+
+ if the specified is equal to the
+ current ; otherwise, .
+
+
+
+ Serves as a hash function for a .
+
+ A hash code for the current .
+
+
+
+ Represents the executable file for Firefox.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The path and file name to the Firefox executable.
+
+
+
+ Gets the full path to the executable.
+
+
+
+
+ Sets the library path for the Firefox executable environment.
+
+ The used to execute the binary.
+
+
+
+ Locates the Firefox binary by platform.
+
+ The full path to the binary.
+
+
+
+ Retrieves an environment variable
+
+ Name of the variable.
+ Default value of the variable.
+ The value of the variable. If no variable with that name is set, returns the default.
+
+
+
+ Retrieves the platform specific environment property name which contains the library path.
+
+ The platform specific environment property name which contains the library path.
+
+
+
+ Walk a PATH to locate binaries with a specified name. Binaries will be searched for in the
+ order they are provided.
+
+ The binary names to search for.
+ The first binary found matching that name.
+
+
+
+ Defines the interface through which the mutex port for establishing communication
+ with the WebDriver extension can be locked.
+
+
+
+
+ Locks the mutex port.
+
+ The describing the amount of time to wait for
+ the mutex port to become available.
+
+
+
+ Unlocks the mutex port.
+
+
+
+
+ Parses and reads an INI file.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the .INI file to be read.
+
+
+
+ Gets a containing the names of the sections in the .INI file.
+
+
+
+
+ Gets a value from the .INI file.
+
+ The section in which to find the key-value pair.
+ The key of the key-value pair.
+ The value associated with the given section and key.
+
+
+
+ Provides a mutex-like lock on a socket.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Port to use to acquire the lock.
+ The class will attempt to acquire the
+ specified port number, and wait for it to become free.
+
+
+
+ Locks the mutex port.
+
+ The describing the amount of time to wait for
+ the mutex port to become available.
+
+
+
+ Unlocks the mutex port.
+
+
+
+
+ Releases all resources associated with this
+
+
+
+ Represents the preferences used by a profile in Firefox.
+
+
+
+
+ Initializes a new instance of the class.
+
+ A set of preferences that cannot be modified once set.
+ A set of default preferences.
+
+
+
+ Sets a preference.
+
+ The name of the preference to set.
+ A value give the preference.
+ If the preference already exists in the currently-set list of preferences,
+ the value will be updated.
+
+
+
+ Sets a preference.
+
+ The name of the preference to set.
+ A value give the preference.
+ If the preference already exists in the currently-set list of preferences,
+ the value will be updated.
+
+
+
+ Sets a preference.
+
+ The name of the preference to set.
+ A value give the preference.
+ If the preference already exists in the currently-set list of preferences,
+ the value will be updated.
+
+
+
+ Gets a preference from the list of preferences.
+
+ The name of the preference to retrieve.
+ The value of the preference, or an empty string if the preference is not set.
+
+
+
+ Appends this set of preferences to the specified set of preferences.
+
+ A dictionary containing the preferences to which to
+ append these values.
+ If the preference already exists in ,
+ the value will be updated.
+
+
+
+ Writes the preferences to a file.
+
+ The full path to the file to be written.
+
+
+
+ Represents the application cache status.
+
+
+
+
+ AppCache status is uncached
+
+
+
+
+ AppCache status is idle
+
+
+
+
+ AppCache status is checkint
+
+
+
+
+ AppCache status is downloading
+
+
+
+
+ AppCache status is updated-ready
+
+
+
+
+ AppCache status is obsolete
+
+
+
+
+ Defines an interface allowing the user to access application cache status
+
+
+
+
+ Gets the current state of the application cache.
+
+
+
+
+ Interface allowing the user to determine if the driver instance supports application cache.
+
+
+
+
+ Gets a value indicating whether manipulating the application cache is supported for this driver.
+
+
+
+
+ Gets an object for managing application cache.
+
+
+
+
+ Interface allowing the user to determine if the driver instance supports geolocation.
+
+
+
+
+ Gets a value indicating whether manipulating geolocation is supported for this driver.
+
+
+
+
+ Gets an object for managing browser location.
+
+
+
+
+ Interface allowing the user to determine if the driver instance supports web storage.
+
+
+
+
+ Gets a value indicating whether web storage is supported for this driver.
+
+
+
+
+ Gets an object for managing web storage.
+
+
+
+
+ Represents the local storage for the site currently opened in the browser.
+ Each site has its own separate storage area.
+
+
+
+
+ Gets the number of items in local storage.
+
+
+
+
+ Returns value of the local storage given a key.
+
+ key to for a local storage entry
+ Value of the local storage entry as given a key.
+
+
+
+ Returns the set of keys associated with local storage.
+
+ Returns the set of keys associated with local storage as .
+
+
+
+ Adds key/value pair to local storage.
+
+ storage key
+ storage value
+
+
+
+ Removes key/value pair from local storage.
+
+ key to remove from storage
+ Value from local storage as string for the given key.
+
+
+
+ Clears local storage.
+
+
+
+
+ Interface for location context
+
+
+
+
+ Gets or sets a value indicating the physical location of the browser.
+
+
+
+
+ Represents the session storage for the site currently opened in the browser.
+ Each site has its own separate storage area.
+
+
+
+
+ Gets the number of items in session storage.
+
+
+
+
+ Returns value of the session storage given a key.
+
+ key to for a session storage entry
+ Value of the session storage entry as given a key.
+
+
+
+ Returns the set of keys associated with session storage.
+
+ Returns the set of keys associated with session storage as .
+
+
+
+ Adds key/value pair to session storage.
+
+ storage key
+ storage value
+
+
+
+ Removes key/value pair from session storage.
+
+ key to remove from storage
+ Value from session storage as string for the given key.
+
+
+
+ Clears local storage.
+
+
+
+
+ Represents both local and session storage for the site currently opened in the browser.
+
+
+
+
+ Gets the local storage for the site currently opened in the browser.
+
+
+
+
+ Gets the session storage for the site currently opened in the browser.
+
+
+
+
+ Represents the physical location of the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ latitude for current location
+ longitude for current location
+ altitude for current location
+
+
+
+ Gets the latitude of the current location.
+
+
+
+
+ Gets the longitude of the current location.
+
+
+
+
+ Gets the altitude of the current location.
+
+
+
+
+ Retuns string represenation for current location.
+
+ Returns string reprsentation for current location.
+
+
+
+ Defines the interface through which the user can manipulate JavaScript alerts.
+
+
+
+
+ Gets the text of the alert.
+
+
+
+
+ Dismisses the alert.
+
+
+
+
+ Accepts the alert.
+
+
+
+
+ Sends keys to the alert.
+
+ The keystrokes to send.
+
+
+
+ Sets the user name and password in an alert prompting for credentials.
+
+ The user name to set.
+ The password to set.
+
+
+
+ Interface determining whether the driver implementation allows detection of files
+ when sending keystrokes to a file upload element.
+
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+
+
+
+ Capabilities of the browser that you are going to use
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if the browser has the capability; otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set on the browser.
+
+
+
+ Defines an interface allowing the user to manipulate cookies on the current page.
+
+
+
+
+ Gets all cookies defined for the current page.
+
+
+
+
+ Adds a cookie to the current page.
+
+ The object to be added.
+
+
+
+ Gets a cookie with the specified name.
+
+ The name of the cookie to retrieve.
+ The containing the name. Returns
+ if no cookie with the specified name is found.
+
+
+
+ Deletes the specified cookie from the page.
+
+ The to be deleted.
+
+
+
+ Deletes the cookie with the specified name from the page.
+
+ The name of the cookie to be deleted.
+
+
+
+ Deletes all cookies from the page.
+
+
+
+
+ Provides a way to access Internet Explorer to run your tests by creating a InternetExplorerDriver instance
+
+
+ When the WebDriver object has been instantiated the browser will load. The test can then navigate to the URL under test and
+ start your test.
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new InternetExplorerDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ driver.Dispose();
+ }
+ }
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with the desired
+ options.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified driver service.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing IEDriverServer.exe.
+
+ The full path to the directory containing IEDriverServer.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing IEDriverServer.exe and options.
+
+ The full path to the directory containing IEDriverServer.exe.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing IEDriverServer.exe, options, and command timeout.
+
+ The full path to the directory containing IEDriverServer.exe.
+ The used to initialize the driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified
+ , , and command timeout.
+
+ The to use.
+ The used to initialize the driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The IE driver does not allow a file detector to be set,
+ as the server component of the IE driver (IEDriverServer.exe) only
+ allows uploads from the local computer environment. Attempting to set
+ this property has no effect, but does not throw an exception. If you
+ are attempting to run the IE driver remotely, use
+ in conjunction with a standalone WebDriver server.
+
+
+
+ Gets the capabilities as a dictionary supporting legacy drivers.
+
+ The dictionary to return.
+ A Dictionary consisting of the capabilities requested.
+ This method is only transitional. Do not rely on it. It will be removed
+ once browser driver capability formats stabilize.
+
+
+
+ Represents the valid values of logging levels available with the IEDriverServer.exe.
+
+
+
+
+ Represents the Trace value, the most detailed logging level available.
+
+
+
+
+ Represents the Debug value
+
+
+
+
+ Represents the Info value
+
+
+
+
+ Represents the Warn value
+
+
+
+
+ Represents the Error value
+
+
+
+
+ Represents the Fatal value, the least detailed logging level available.
+
+
+
+
+ Exposes the service provided by the native IEDriverServer executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the IEDriverServer executable.
+ The file name of the IEDriverServer executable.
+ The port on which the IEDriverServer executable should listen.
+
+
+
+ Gets or sets the value of the host adapter on which the IEDriverServer should listen for connections.
+
+
+
+
+ Gets or sets the location of the log file written to by the IEDriverServer.
+
+
+
+
+ Gets or sets the logging level used by the IEDriverServer.
+
+
+
+
+ Gets or sets the path to which the supporting library of the IEDriverServer.exe is extracted.
+ Defaults to the temp directory if this property is not set.
+
+
+ The IEDriverServer.exe requires extraction of a supporting library to perform some of its functions. Setting
+ This library is extracted to the temp directory if this property is not set. If the property is set, it must
+ be set to a valid directory.
+
+
+
+
+ Gets or sets the comma-delimited list of IP addresses that are approved to
+ connect to this instance of the IEDriverServer. Defaults to an empty string,
+ which means only the local loopback address can connect.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the InternetExplorerDriverService.
+
+ A InternetExplorerDriverService that implements default settings.
+
+
+
+ Creates a default instance of the InternetExplorerDriverService using a specified path to the IEDriverServer executable.
+
+ The directory containing the IEDriverServer executable.
+ A InternetExplorerDriverService using a random port.
+
+
+
+ Creates a default instance of the InternetExplorerDriverService using a specified path to the IEDriverServer executable with the given name.
+
+ The directory containing the IEDriverServer executable.
+ The name of the IEDriverServer executable file.
+ A InternetExplorerDriverService using a random port.
+
+
+
+ Specifies the scroll behavior of elements scrolled into view in the IE driver.
+
+
+
+
+ Indicates the behavior is unspecified.
+
+
+
+
+ Scrolls elements to align with the top of the viewport.
+
+
+
+
+ Scrolls elements to align with the bottom of the viewport.
+
+
+
+
+ Class to manage options specific to
+
+
+ InternetExplorerOptions options = new InternetExplorerOptions();
+ options.IntroduceInstabilityByIgnoringProtectedModeSettings = true;
+
+
+ For use with InternetExplorerDriver:
+
+
+ InternetExplorerDriver driver = new InternetExplorerDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Gets the name of the capability used to store IE options in
+ a object.
+
+
+
+
+ Gets or sets a value indicating whether to ignore the settings of the Internet Explorer Protected Mode.
+
+
+
+
+ Gets or sets a value indicating whether to ignore the zoom level of Internet Explorer .
+
+
+
+
+ Gets or sets a value indicating whether to use native events in interacting with elements.
+
+
+
+
+ Gets or sets a value indicating whether to require the browser window to have focus before interacting with elements.
+
+
+
+
+ Gets or sets the initial URL displayed when IE is launched. If not set, the browser launches
+ with the internal startup page for the WebDriver server.
+
+
+ By setting the to
+ and this property to a correct URL, you can launch IE in the Internet Protected Mode zone. This can be helpful
+ to avoid the flakiness introduced by ignoring the Protected Mode settings. Nevertheless, setting Protected Mode
+ zone settings to the same value in the IE configuration is the preferred method.
+
+
+
+
+ Gets or sets the value for describing how elements are scrolled into view in the IE driver. Defaults
+ to scrolling the element to the top of the viewport.
+
+
+
+
+ Gets or sets a value indicating whether to enable persistently sending WM_MOUSEMOVE messages
+ to the IE window during a mouse hover.
+
+
+
+
+ Gets or sets the amount of time the driver will attempt to look for a newly launched instance
+ of Internet Explorer.
+
+
+
+
+ Gets or sets the amount of time the driver will attempt to look for the file selection
+ dialog when attempting to upload a file.
+
+
+
+
+ Gets or sets a value indicating whether to force the use of the Windows CreateProcess API
+ when launching Internet Explorer. The default value is .
+
+
+
+
+ Gets or sets a value indicating whether to force the use of the Windows ShellWindows API
+ when attaching to Internet Explorer. The default value is .
+
+
+
+
+ Gets or sets the command line arguments used in launching Internet Explorer when the
+ Windows CreateProcess API is used. This property only has an effect when the
+ is .
+
+
+
+
+ Gets or sets a value indicating whether to use the supplied
+ settings on a per-process basis, not updating the system installed proxy setting.
+ This property is only valid when setting a , where the
+ property is either ,
+ , or , and is
+ otherwise ignored. Defaults to .
+
+
+
+
+ Gets or sets a value indicating whether to clear the Internet Explorer cache
+ before launching the browser. When set to , clears the
+ system cache for all instances of Internet Explorer, even those already running
+ when the driven instance is launched. Defaults to .
+
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Internet Explorer driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+ Also, by default, calling this method adds capabilities to the options object passed to
+ IEDriverServer.exe.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Internet Explorer driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+ Indicates whether the capability is to be set as a global
+ capability for the driver instead of a IE-specific option.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling where
+ has already been added will overwrite the existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for IE with these options included as
+ capabilities. This copies the options. Further changes will not be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for IE with these options.
+
+
+
+ InternetExplorerWebElement allows you to have access to specific items that are found on the page.
+
+
+
+
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver = new InternetExplorerDriver();
+ InternetExplorerWebElement elem = driver.FindElement(By.Name("q"));
+ elem.SendKeys("Cheese please!");
+ }
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ Driver in use.
+ ID of the element.
+
+
+
+ Defines an object responsible for detecting sequences of keystrokes
+ representing file paths and names.
+
+
+
+
+ Returns a value indicating whether a specified key sequence represents
+ a file name and path.
+
+ The sequence to test for file existence.
+
+ if the key sequence represents a file; otherwise, .
+
+
+
+ Defines the interface through which the user can determine the capabilities of a driver.
+
+
+
+
+ Gets the object describing the driver's capabilities.
+
+
+
+
+ Provides access to input devices for advanced user interactions.
+
+
+
+
+ Gets an object for sending keystrokes to the browser.
+
+
+
+
+ Gets an object for sending mouse commands to the browser.
+
+
+
+
+ Interface implemented by each driver that allows access to touch screen capabilities.
+
+
+
+
+ Gets the device representing the touch screen.
+
+
+
+
+ Defines the interface through which the user can execute JavaScript.
+
+
+
+
+ Executes JavaScript in the context of the currently selected frame or window.
+
+ The JavaScript code to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+ The method executes JavaScript in the context of
+ the currently selected frame or window. This means that "document" will refer
+ to the current document. If the script has a return value, then the following
+ steps will be taken:
+
+
+
+
+ For an HTML element, this method returns a
+
+
+ For a number, a is returned
+
+
+ For a boolean, a is returned
+
+
+ For all other cases a is returned.
+
+
+ For an array,we check the first element, and attempt to return a
+ of that type, following the rules above. Nested lists are not
+ supported.
+
+
+ If the value is null or there is no return value,
+ is returned.
+
+
+
+
+ Arguments must be a number (which will be converted to a ),
+ a , a or a .
+ An exception will be thrown if the arguments do not meet these criteria.
+ The arguments will be made available to the JavaScript via the "arguments" magic
+ variable, as if the function were called via "Function.apply"
+
+
+
+
+
+ Executes JavaScript asynchronously in the context of the currently selected frame or window.
+
+ The JavaScript code to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+
+ Provides methods representing basic keyboard actions.
+
+
+
+
+ Sends a sequence of keystrokes to the target.
+
+ A string representing the keystrokes to send.
+
+
+
+ Presses a key.
+
+ The key value representing the key to press.
+ The key value must be one of the values from the class.
+
+
+
+ Releases a key.
+
+ The key value representing the key to release.
+ The key value must be one of the values from the class.
+
+
+
+ Defines the interface through which the user can discover where an element is on the screen.
+
+
+
+
+ Gets the location of an element on the screen, scrolling it into view
+ if it is not currently on the screen.
+
+
+
+
+ Gets the coordinates identifying the location of this element using
+ various frames of reference.
+
+
+
+
+ Interface allowing handling of driver logs.
+
+
+
+
+ Gets the list of available log types for this driver.
+
+
+
+
+ Gets the set of objects for a specified log.
+
+ The log for which to retrieve the log entries.
+ Log types can be found in the class.
+ The list of objects for the specified log.
+
+
+
+ Provides methods representing basic mouse actions.
+
+
+
+
+ Clicks at a set of coordinates using the primary mouse button.
+
+ An describing where to click.
+
+
+
+ Double-clicks at a set of coordinates.
+
+ A describing where to double-click.
+
+
+
+ Presses the primary mouse button at a set of coordinates.
+
+ A describing where to press the mouse button down.
+
+
+
+ Releases the primary mouse button at a set of coordinates.
+
+ A describing where to release the mouse button.
+
+
+
+ Moves the mouse to the specified set of coordinates.
+
+ A describing where to move the mouse to.
+
+
+
+ Moves the mouse to the specified set of coordinates.
+
+ A describing where to click.
+ A horizontal offset from the coordinates specified in .
+ A vertical offset from the coordinates specified in .
+
+
+
+ Clicks at a set of coordinates using the secondary mouse button.
+
+ A describing where to click.
+
+
+
+ Defines an interface allowing the user to access the browser's history and to
+ navigate to a given URL.
+
+
+
+
+ Move back a single entry in the browser's history.
+
+
+
+
+ Move a single "item" forward in the browser's history.
+
+ Does nothing if we are on the latest page viewed.
+
+
+
+ Load a new web page in the current browser window.
+
+ The URL to load. It is best to use a fully qualified URL
+
+ Calling the method will load a new web page in the current browser window.
+ This is done using an HTTP GET operation, and the method will block until the
+ load is complete. This will follow redirects issued either by the server or
+ as a meta-redirect from within the returned HTML. Should a meta-redirect "rest"
+ for any duration of time, it is best to wait until this timeout is over, since
+ should the underlying page change while your test is executing the results of
+ future calls against this interface will be against the freshly loaded page.
+
+
+
+
+ Load a new web page in the current browser window.
+
+ The URL to load.
+
+ Calling the method will load a new web page in the current browser window.
+ This is done using an HTTP GET operation, and the method will block until the
+ load is complete. This will follow redirects issued either by the server or
+ as a meta-redirect from within the returned HTML. Should a meta-redirect "rest"
+ for any duration of time, it is best to wait until this timeout is over, since
+ should the underlying page change while your test is executing the results of
+ future calls against this interface will be against the freshly loaded page.
+
+
+
+
+ Refreshes the current page.
+
+
+
+
+ Provides methods that allow the creation of action sequences to enable
+ advanced user interactions.
+
+
+
+
+ Adds an action to the built set of actions. Adding an action will
+ add a "tick" to the set of all actions to be executed.
+
+ The action to add to the set of actions
+ A self reference.
+
+
+
+ Adds an action to the built set of actions. Adding an action will
+ add a "tick" to the set of all actions to be executed. Only one action
+ for each input device may be added for a single tick.
+
+ The set actions to add to the existing set of actions.
+ A self reference.
+
+
+
+ Converts the set of actions in this to a .
+
+ A suitable for transmission across the wire.
+ The collection returned is read-only.
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Provides values that indicate from where element offsets for MoveToElement
+ are calculated.
+
+
+
+
+ Offsets are calculated from the top-left corner of the element.
+
+
+
+
+ Offsets are calcuated from the center of the element.
+
+
+
+
+ Provides a mechanism for building advanced interactions with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The object on which the actions built will be performed.
+
+
+
+ Sends a modifier key down message to the browser.
+
+ The key to be sent.
+ A self-reference to this .
+ If the key sent is not is not one
+ of , , ,
+ , ,,
+ ,.
+
+
+
+ Sends a modifier key down message to the specified element in the browser.
+
+ The element to which to send the key command.
+ The key to be sent.
+ A self-reference to this .
+ If the key sent is not is not one
+ of , , ,
+ , ,,
+ ,.
+
+
+
+ Sends a modifier key up message to the browser.
+
+ The key to be sent.
+ A self-reference to this .
+ If the key sent is not is not one
+ of , , ,
+ , ,,
+ ,.
+
+
+
+ Sends a modifier up down message to the specified element in the browser.
+
+ The element to which to send the key command.
+ The key to be sent.
+ A self-reference to this .
+ If the key sent is not is not one
+ of , , ,
+ , ,,
+ ,.
+
+
+
+ Sends a sequence of keystrokes to the browser.
+
+ The keystrokes to send to the browser.
+ A self-reference to this .
+
+
+
+ Sends a sequence of keystrokes to the specified element in the browser.
+
+ The element to which to send the keystrokes.
+ The keystrokes to send to the browser.
+ A self-reference to this .
+
+
+
+ Clicks and holds the mouse button down on the specified element.
+
+ The element on which to click and hold.
+ A self-reference to this .
+
+
+
+ Clicks and holds the mouse button at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Releases the mouse button on the specified element.
+
+ The element on which to release the button.
+ A self-reference to this .
+
+
+
+ Releases the mouse button at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Clicks the mouse on the specified element.
+
+ The element on which to click.
+ A self-reference to this .
+
+
+
+ Clicks the mouse at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Double-clicks the mouse on the specified element.
+
+ The element on which to double-click.
+ A self-reference to this .
+
+
+
+ Double-clicks the mouse at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Moves the mouse to the specified element.
+
+ The element to which to move the mouse.
+ A self-reference to this .
+
+
+
+ Moves the mouse to the specified offset of the top-left corner of the specified element.
+
+ The element to which to move the mouse.
+ The horizontal offset to which to move the mouse.
+ The vertical offset to which to move the mouse.
+ A self-reference to this .
+
+
+
+ Moves the mouse to the specified offset of the top-left corner of the specified element.
+
+ The element to which to move the mouse.
+ The horizontal offset to which to move the mouse.
+ The vertical offset to which to move the mouse.
+ The value from which to calculate the offset.
+ A self-reference to this .
+
+
+
+ Moves the mouse to the specified offset of the last known mouse coordinates.
+
+ The horizontal offset to which to move the mouse.
+ The vertical offset to which to move the mouse.
+ A self-reference to this .
+
+
+
+ Right-clicks the mouse on the specified element.
+
+ The element on which to right-click.
+ A self-reference to this .
+
+
+
+ Right-clicks the mouse at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Performs a drag-and-drop operation from one element to another.
+
+ The element on which the drag operation is started.
+ The element on which the drop is performed.
+ A self-reference to this .
+
+
+
+ Performs a drag-and-drop operation on one element to a specified offset.
+
+ The element on which the drag operation is started.
+ The horizontal offset to which to move the mouse.
+ The vertical offset to which to move the mouse.
+ A self-reference to this .
+
+
+
+ Builds the sequence of actions.
+
+ A composite which can be used to perform the actions.
+
+
+
+ Performs the currently built action.
+
+
+
+
+ Gets the instance of the specified .
+
+ The to get the location of.
+ The of the .
+
+
+
+ Adds an action to current list of actions to be performed.
+
+ The to be added.
+
+
+
+ Represents a sequence of actions to be performed in the target browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The input device that executes this sequence of actions.
+
+
+
+ Initializes a new instance of the class.
+
+ The input device that executes this sequence of actions.
+ the initial size of the sequence.
+
+
+
+ Gets the count of actions in the sequence.
+
+
+
+
+ Adds an action to the sequence.
+
+ The action to add to the sequence.
+ A self-reference to this sequence of actions.
+
+
+
+ Converts this action sequence into an object suitable for serializing across the wire.
+
+ A containing the actions in this sequence.
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Defines an action for releasing the currently held mouse button.
+
+
+ This action can be called for an element different than the one
+ ClickAndHoldAction was called for. However, if this action is
+ performed out of sequence (without holding down the mouse button,
+ for example) the results will be different.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action for clicking on an element.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action for clicking and holding the mouse button on an element.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action that consists of a list of other actions to be performed in the browser.
+
+
+
+
+ Adds an action to the list of actions to be performed.
+
+ An to be appended to the
+ list of actions to be performed.
+ A self reference.
+
+
+
+ Performs the actions defined in this list of actions.
+
+
+
+
+ Defines an action for clicking the secondary mouse button on an element, displaying a context menu.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action for double-clicking on an element.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Creates a double tap gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs the action.
+
+
+
+
+ Creates a flick gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The horizontal speed in pixels per second.
+ The vertical speed in pixels per second.
+
+
+
+ Initializes a new instance of the class for use with the specified element.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+ The x offset relative to the viewport.
+ The y offset relative to the viewport.
+ The speed in pixels per second.
+
+
+
+ Performs the action.
+
+
+
+
+ Provides methods by which an interaction with the browser can be performed.
+
+
+
+
+ Performs this action on the browser.
+
+
+
+
+ Provides location of the element using various frames of reference.
+
+
+
+
+ Gets the location of an element in absolute screen coordinates.
+
+
+
+
+ Gets the location of an element relative to the origin of the view port.
+
+
+
+
+ Gets the location of an element's position within the HTML DOM.
+
+
+
+
+ Gets a locator providing a user-defined location for this element.
+
+
+
+
+ Defines an action for keyboard interaction with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+
+
+
+ Gets the keyboard with which to perform the action.
+
+
+
+
+ Focuses on the element on which the action is to be performed.
+
+
+
+
+ Defines an action for mouse interaction with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Gets the coordinates at which to perform the mouse action.
+
+
+
+
+ Gets the mouse with which to perform the action.
+
+
+
+
+ Moves the mouse to the location at which to perform the action.
+
+
+
+
+ Defines an action for keyboard interaction with the browser using a single modifier key.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+ The modifier key (, , ) to use in the action.
+
+
+
+ Gets the key with which to perform the action.
+
+
+
+
+ Defines an action for keyboard interaction with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ An object providing the element on which to perform the action.
+
+
+
+ Gets the touch screen with which to perform the action.
+
+
+
+
+ Gets the location at which to perform the action.
+
+
+
+
+ Defines an action for keyboard and mouse interaction with the browser.
+
+
+
+
+ Initializes a new instance of the class for the given element.
+
+ An object that provides coordinates for this action.
+
+
+
+ Initializes a new instance of the class.
+
+ This action will take place in the context of the previous action's coordinates.
+
+
+
+ Gets the target of the action providing coordinates of the action.
+
+
+
+
+ Base class for all input devices for actions.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The unique name of the input device represented by this class.
+
+
+
+ Gets the unique name of this input device.
+
+
+
+
+ Gets the kind of device for this input device.
+
+
+
+
+ Returns a value for this input device that can be transmitted across the wire to a remote end.
+
+ A representing this action.
+
+
+
+ Creates a pause action for synchronization with other action sequences.
+
+ The representing the action.
+
+
+
+ Creates a pause action for synchronization with other action sequences.
+
+ A representing the duration
+ of the pause. Note that pauses to synchronize
+ with other action sequences for other devices.
+ The representing the action.
+
+
+
+ Returns a hash code for the current .
+
+ A hash code for the current .
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Enumerated values for the kinds of devices available.
+
+
+
+
+ Represents the null device.
+
+
+
+
+ Represents a key-based device, primarily for entering text.
+
+
+
+
+ Represents a pointer-based device, such as a mouse, pen, or stylus.
+
+
+
+
+ Represents a single interaction for a given input device.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The input device which performs this action.
+
+
+
+ Gets the device for which this action is intended.
+
+
+
+
+ Returns a value for this action that can be transmitted across the wire to a remote end.
+
+ A representing this action.
+
+
+
+ Gets a value indicating whether this action is valid for the specified type of input device.
+
+ The type of device to check.
+
+ if the action is valid for the specified type of input device;
+ otherwise, .
+
+
+
+ Defines an action for pressing a modifier key (Shift, Alt, or Control) on the keyboard.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+ The modifier key (, , ,
+ , ,,
+ ,) to use in the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Represents a key input device, such as a keyboard.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class, given the device's name.
+
+ The unique name of this input device.
+
+
+
+ Gets the type of device for this input device.
+
+
+
+
+ Converts this input device into an object suitable for serializing across the wire.
+
+ A representing this input device.
+
+
+
+ Creates a key-down action for simulating a press of a key.
+
+ The unicode character to be sent.
+ The representing the action.
+
+
+
+ Creates a key-up action for simulating a release of a key.
+
+ The unicode character to be sent.
+ The representing the action.
+
+
+
+ Defines an action for releasing a modifier key (Shift, Alt, or Control) on the keyboard.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+ The modifier key (, , ,
+ , ,,
+ ,) to use in the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Creates a long press gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs the action.
+
+
+
+
+ Defines an action for moving the mouse to a specified location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action for moving the mouse to a specified offset from its current location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+ The horizontal offset from the origin of the target to which to move the mouse.
+ The vertical offset from the origin of the target to which to move the mouse.
+
+
+
+ Performs this action.
+
+
+
+
+ Represents a pause action.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The input device on which to execute the pause.
+
+
+
+ Initializes a new instance of the class.
+
+ The input device on which to execute the pause.
+ The length of time to pause for.
+
+
+
+ Returns a value for this action that can be transmitted across the wire to a remote end.
+
+ A representing this action.
+
+
+
+ Gets a value indicating whether this action is valid for the specified type of input device.
+
+ The type of device to check.
+
+ if the action is valid for the specified type of input device;
+ otherwise, .
+
+
+
+ Represents the origin of the coordinates for mouse movement.
+
+
+
+
+ The coordinate origin is the origin of the view port of the browser.
+
+
+
+
+ The origin of the movement is the most recent pointer location.
+
+
+
+
+ The origin of the movement is the center of the element specified.
+
+
+
+
+ Specifies the type of pointer a pointer device represents.
+
+
+
+
+ The pointer device is a mouse.
+
+
+
+
+ The pointer device is a pen or stylus.
+
+
+
+
+ The pointer device is a touch screen device.
+
+
+
+
+ Specifies the button used during a pointer down or up action.
+
+
+
+
+ The button used is the primary button.
+
+
+
+
+ The button used is the middle button or mouse wheel.
+
+
+
+
+ The button used is the secondary button.
+
+
+
+
+ Represents a pointer input device, such as a stylus, mouse, or finger on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The kind of pointer represented by this input device.
+
+
+
+ Initializes a new instance of the class.
+
+ The kind of pointer represented by this input device.
+ The unique name for this input device.
+
+
+
+ Gets the type of device for this input device.
+
+
+
+
+ Returns a value for this input device that can be transmitted across the wire to a remote end.
+
+ A representing this action.
+
+
+
+ Creates a pointer down action.
+
+ The button of the pointer that should be pressed.
+ The action representing the pointer down gesture.
+
+
+
+ Creates a pointer up action.
+
+ The button of the pointer that should be released.
+ The action representing the pointer up gesture.
+
+
+
+ Creates a pointer move action to a specific element.
+
+ The used as the target for the move.
+ The horizontal offset from the origin of the move.
+ The vertical offset from the origin of the move.
+ The length of time the move gesture takes to complete.
+ The action representing the pointer move gesture.
+
+
+
+ Creates a pointer move action to an absolute coordinate.
+
+ The origin of coordinates for the move. Values can be relative to
+ the view port origin, or the most recent pointer position.
+ The horizontal offset from the origin of the move.
+ The vertical offset from the origin of the move.
+ The length of time the move gesture takes to complete.
+ The action representing the pointer move gesture.
+ Thrown when passing CoordinateOrigin.Element into origin.
+ Users should us the other CreatePointerMove overload to move to a specific element.
+
+
+
+ Creates a pointer cancel action.
+
+ The action representing the pointer cancel gesture.
+
+
+
+ Presses a touch screen at a given location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Performs the action.
+
+
+
+
+ Presses a touch screen at a given location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Performs the action.
+
+
+
+
+ Presses a touch screen at a given location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Performs the action.
+
+
+
+
+ Creates a double tap gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The horizontal offset relative to the view port.
+ The vertical offset relative to the view port.
+
+
+
+ Initializes a new instance of the class for use with the specified element.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Performs the action.
+
+
+
+
+ Defines an action for sending a sequence of keystrokes to an element.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+ The key sequence to send.
+
+
+
+ Performs this action.
+
+
+
+
+ Creates a single tap gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs the action.
+
+
+
+
+ Provides a mechanism for building advanced interactions with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The object on which the actions built will be performed.
+
+
+
+ Taps the touch screen on the specified element.
+
+ The element on which to tap.
+ A self-reference to this .
+
+
+
+ Presses down at the specified location on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+ A self-reference to this .
+
+
+
+ Releases a press at the specified location on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+ A self-reference to this .
+
+
+
+ Moves to the specified location on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+ A self-reference to this .
+
+
+
+ Scrolls the touch screen beginning at the specified element.
+
+ The element on which to begin scrolling.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+ A self-reference to this .
+
+
+
+ Double-taps the touch screen on the specified element.
+
+ The element on which to double-tap.
+ A self-reference to this .
+
+
+
+ Presses and holds on the touch screen on the specified element.
+
+ The element on which to press and hold
+ A self-reference to this .
+
+
+
+ Scrolls the touch screen to the specified offset.
+
+ The horizontal offset relative to the view port.
+ The vertical offset relative to the view port.
+ A self-reference to this .
+
+
+
+ Flicks the current view.
+
+ The horizontal speed in pixels per second.
+ The vertical speed in pixels per second.
+ A self-reference to this .
+
+
+
+ Flicks the current view starting at a specific location.
+
+ The element at which to start the flick.
+ The x offset relative to the viewport.
+ The y offset relative to the viewport.
+ The speed in pixels per second.
+ A self-reference to this .
+
+
+
+ Utility class used to execute "asynchronous" scripts. This class should
+ only be used by browsers that do not natively support asynchronous
+ script execution.
+ Warning: this class is intended for internal use
+ only. This class will be removed without warning after all
+ native asynchronous implementations have been completed.
+
+
+
+
+ Initializes a new instance of the class.
+
+ An object capable of executing JavaScript.
+
+
+
+ Gets or sets the timeout for the script executor.
+
+
+
+
+ Executes a JavaScript script asynchronously.
+
+ The script to execute.
+ An array of objects used as arguments in the script.
+ The object which is the return value of the script.
+ if the object executing the function doesn't support JavaScript.
+ if the page reloads during the JavaScript execution.
+ if the timeout expires during the JavaScript execution.
+
+
+
+ Encapsulates methods for working with files.
+
+
+
+
+ Recursively copies a directory.
+
+ The source directory to copy.
+ The destination directory.
+
+ if the copy is completed; otherwise .
+
+
+
+ Recursively deletes a directory, retrying on error until a timeout.
+
+ The directory to delete.
+ This method does not throw an exception if the delete fails.
+
+
+
+ Searches for a file with the specified name.
+
+ The name of the file to find.
+ The full path to the directory where the file can be found,
+ or an empty string if the file does not exist in the locations searched.
+
+ This method looks first in the directory of the currently executing
+ assembly. If the specified file is not there, the method then looks in
+ each directory on the PATH environment variable, in order.
+
+
+
+
+ Gets the directory of the currently executing assembly.
+
+ The directory of the currently executing assembly.
+
+
+
+ Generates the full path to a random directory name in the temporary directory, following a naming pattern..
+
+ The pattern to use in creating the directory name, following standard
+ .NET string replacement tokens.
+ The full path to the random directory name in the temporary directory.
+
+
+
+ Interface allowing execution of W3C Specification-compliant actions.
+
+
+
+
+ Gets a value indicating whether this object is a valid action executor.
+
+
+
+
+ Performs the specified list of actions with this action executor.
+
+ The list of action sequences to perform.
+
+
+
+ Resets the input state of the action executor.
+
+
+
+
+ Defines the interface through which the user finds elements by their CSS class.
+
+
+
+
+ Finds the first element matching the specified CSS class.
+
+ The CSS class to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified CSS class.
+
+ The CSS class to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their cascading style sheet (CSS) selector.
+
+
+
+
+ Finds the first element matching the specified CSS selector.
+
+ The id to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified CSS selector.
+
+ The CSS selector to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their ID.
+
+
+
+
+ Finds the first element matching the specified id.
+
+ The id to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified id.
+
+ The id to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their link text.
+
+
+
+
+ Finds the first element matching the specified link text.
+
+ The link text to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified link text.
+
+ The link text to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their name.
+
+
+
+
+ Finds the first element matching the specified name.
+
+ The name to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified name.
+
+ The name to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by a partial match on their link text.
+
+
+
+
+ Finds the first element matching the specified partial link text.
+
+ The partial link text to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified partial link text.
+
+ The partial link text to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their tag name.
+
+
+
+
+ Finds the first element matching the specified tag name.
+
+ The tag name to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified tag name.
+
+ The tag name to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by XPath.
+
+
+
+
+ Finds the first element matching the specified XPath query.
+
+ The XPath query to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified XPath query.
+
+ The XPath query to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user can access the driver used to find an element.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Defines the interface through which the framework can serialize an element to the wire protocol.
+
+
+
+
+ Gets the internal ID of the element.
+
+
+
+
+ Converts an object into an object that represents an element for the wire protocol.
+
+ A that represents an element in the wire protocol.
+
+
+
+ Defines the interface through which the user can access the driver used to find an element.
+
+
+
+
+ Gets the used to find this element.
+
+
+
+
+ Defines the interface through which the user can discover if there is an underlying element to be used.
+
+
+
+
+ Gets the wrapped by this object.
+
+
+
+
+ Encapsulates methods for working with ports.
+
+
+
+
+ Finds a random, free port to be listened on.
+
+ A random, free port to be listened on.
+
+
+
+ Encapsulates methods for finding and extracting WebDriver resources.
+
+
+
+
+ Gets a string representing the version of the Selenium assembly.
+
+
+
+
+ Gets a string representing the platform family on which the Selenium assembly is executing.
+
+
+
+
+ Gets a that contains the resource to use.
+
+ A file name in the file system containing the resource to use.
+ A string representing the resource name embedded in the
+ executing assembly, if it is not found in the file system.
+ A Stream from which the resource can be read.
+ Thrown if neither the file nor the embedded resource can be found.
+
+ The GetResourceStream method searches for the specified resource using the following
+ algorithm:
+ In the same directory as the calling assembly.In the full path specified by the argument.Inside the calling assembly as an embedded resource.
+
+
+
+ Returns a value indicating whether a resource exists with the specified ID.
+
+ ID of the embedded resource to check for.
+
+ if the resource exists in the calling assembly; otherwise .
+
+
+
+ Class to Create the capabilities of the browser you require for .
+ If you wish to use default values use the static methods
+
+
+
+
+ Initializes a new instance of the class
+
+
+
+
+ Initializes a new instance of the class
+
+ Dictionary of items for the remote driver
+
+
+
+ Gets the browser name
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the internal capabilities dictionary.
+
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if the browser has the capability; otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set on the browser.
+
+
+
+ Converts the object to a .
+
+ The containing the capabilities.
+
+
+
+ Return a string of capabilities being used
+
+ String of capabilities being used
+
+
+
+ Represents a cookie returned to the driver by the browser.
+
+
+
+
+ Initializes a new instance of the class with a specific name,
+ value, domain, path and expiration date.
+
+ The name of the cookie.
+ The value of the cookie.
+ The domain of the cookie.
+ The path of the cookie.
+ The expiration date of the cookie.
+
+ if the cookie is secure; otherwise
+
+ if the cookie is an HTTP-only cookie; otherwise
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value or currentUrl is .
+
+
+
+ Gets a value indicating whether the cookie is secure.
+
+
+
+
+ Gets a value indicating whether the cookie is an HTTP-only cookie.
+
+
+
+
+ Creates and returns a string representation of the current cookie.
+
+ A string representation of the current cookie.
+
+
+
+ Provides entry points into needed unmanaged APIs.
+
+
+
+
+ Values for flags for setting information about a native operating system handle.
+
+
+
+
+ No flags are to be set for the handle.
+
+
+
+
+ If this flag is set, a child process created with the bInheritHandles
+ parameter of CreateProcess set to TRUE will inherit the object handle.
+
+
+
+
+ If this flag is set, calling the CloseHandle function will not close the
+ object handle.
+
+
+
+
+ Sets the handle information for a Windows object.
+
+ Handle to the object.
+ The handle information to set.
+ The flags for the handle.
+
+ if the information is set; otherwise .
+
+
+
+ The exception that is thrown when the users attempts to set a cookie with an invalid domain.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when a reference to an element is no longer valid.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Defines an interface allowing the user to set options on the browser.
+
+
+
+
+ Gets an object allowing the user to manipulate cookies on the page.
+
+
+
+
+ Gets an object allowing the user to manipulate the currently-focused browser window.
+
+ "Currently-focused" is defined as the browser window having the window handle
+ returned when IWebDriver.CurrentWindowHandle is called.
+
+
+
+ Gets an object allowing the user to examing the logs for this driver instance.
+
+
+
+
+ Provides access to the timeouts defined for this driver.
+
+ An object implementing the interface.
+
+
+
+ Represents rotation of the browser view for orientation-sensitive devices.
+ When using this with a real device, the device should not be moved so that
+ the built-in sensors do not interfere.
+
+
+
+
+ Gets or sets the screen orientation of the browser on the device.
+
+
+
+
+ Defines the interface used to search for elements.
+
+
+
+
+ Finds the first using the given method.
+
+ The locating mechanism to use.
+ The first matching on the current context.
+ If no element matches the criteria.
+
+
+
+ Finds all IWebElements within the current context
+ using the given mechanism.
+
+ The locating mechanism to use.
+ A of all WebElements
+ matching the current criteria, or an empty list if nothing matches.
+
+
+
+ Defines the interface used to take screen shot images of the screen.
+
+
+
+
+ Gets a object representing the image of the page on the screen.
+
+ A object containing the image.
+
+
+
+ Defines the interface through which the user can locate a given frame or window.
+
+
+
+
+ Select a frame by its (zero-based) index.
+
+ The zero-based index of the frame to select.
+ An instance focused on the specified frame.
+ If the frame cannot be found.
+
+
+
+ Select a frame by its name or ID.
+
+ The name of the frame to select.
+ An instance focused on the specified frame.
+ If the frame cannot be found.
+
+
+
+ Select a frame using its previously located
+ The frame element to switch to.
+ An instance focused on the specified frame.
+ If the element is neither a FRAME nor an IFRAME element.
+ If the element is no longer valid.
+
+
+
+ Select the parent frame of the currently selected frame.
+
+ An instance focused on the specified frame.
+
+
+
+ Switches the focus of future commands for this driver to the window with the given name.
+
+ The name of the window to select.
+ An instance focused on the given window.
+ If the window cannot be found.
+
+
+
+ Selects either the first frame on the page or the main document when a page contains iFrames.
+
+ An instance focused on the default frame.
+
+
+
+ Switches to the element that currently has the focus, or the body element
+ if no element with focus can be detected.
+
+ An instance representing the element
+ with the focus, or the body element if no element with focus can be detected.
+
+
+
+ Switches to the currently active modal dialog for this particular driver instance.
+
+ A handle to the dialog.
+
+
+
+ Defines the interface through which the user can define timeouts.
+
+
+
+
+ Gets or sets the implicit wait timeout, which is the amount of time the
+ driver should wait when searching for an element if it is not immediately
+ present.
+
+
+ When searching for a single element, the driver should poll the page
+ until the element has been found, or this timeout expires before throwing
+ a . When searching for multiple elements,
+ the driver should poll the page until at least one element has been found
+ or this timeout has expired.
+
+ Increasing the implicit wait timeout should be used judiciously as it
+ will have an adverse effect on test run time, especially when used with
+ slower location strategies like XPath.
+
+
+
+
+ Gets or sets the asynchronous script timeout, which is the amount
+ of time the driver should wait when executing JavaScript asynchronously.
+ This timeout only affects the
+ method.
+
+
+
+
+ Gets or sets the page load timeout, which is the amount of time the driver
+ should wait for a page to load when setting the
+ property.
+
+
+
+
+ Interface representing basic touch screen operations.
+
+
+
+
+ Allows the execution of single tap on the screen, analogous to click using a Mouse.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Allows the execution of the gesture 'down' on the screen. It is typically the first of a
+ sequence of touch gestures.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Allows the execution of the gesture 'up' on the screen. It is typically the last of a
+ sequence of touch gestures.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Allows the execution of the gesture 'move' on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Creates a scroll gesture that starts on a particular screen location.
+
+ The object representing the location on the screen
+ where the scroll starts, usually an .
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Creates a scroll gesture for a particular x and y offset.
+
+ The horizontal offset relative to the view port.
+ The vertical offset relative to the view port.
+
+
+
+ Allows the execution of double tap on the screen, analogous to click using a Mouse.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Allows the execution of a long press gesture on the screen.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Creates a flick gesture for the current view.
+
+ The horizontal speed in pixels per second.
+ The vertical speed in pixels per second.
+
+
+
+ Creates a flick gesture for the current view starting at a specific location.
+
+ The object representing the location on the screen
+ where the scroll starts, usually an .
+ The x offset relative to the viewport.
+ The y offset relative to the viewport.
+ The speed in pixels per second.
+
+
+
+ Defines the interface through which the user controls the browser.
+
+
+ The interface is the main interface to use for testing, which
+ represents an idealized web browser. The methods in this class fall into three categories:
+ Control of the browser itselfSelection of IWebElementsDebugging aids
+ Key properties and methods are , which is used to
+ load a new web page by setting the property, and the various methods similar
+ to , which is used to find IWebElements.
+
+ You use the interface by instantiate drivers that implement of this interface.
+ You should write your tests against this interface so that you may "swap in" a
+ more fully featured browser when there is a requirement for one.
+
+
+
+
+ Gets or sets the URL the browser is currently displaying.
+
+
+ Setting the property will load a new web page in the current browser window.
+ This is done using an HTTP GET operation, and the method will block until the
+ load is complete. This will follow redirects issued either by the server or
+ as a meta-redirect from within the returned HTML. Should a meta-redirect "rest"
+ for any duration of time, it is best to wait until this timeout is over, since
+ should the underlying page change while your test is executing the results of
+ future calls against this interface will be against the freshly loaded page.
+
+
+
+
+
+
+ Gets the title of the current browser window.
+
+
+
+
+ Gets the source of the page last loaded by the browser.
+
+
+ If the page has been modified after loading (for example, by JavaScript)
+ there is no guarantee that the returned text is that of the modified page.
+ Please consult the documentation of the particular driver being used to
+ determine whether the returned text reflects the current state of the page
+ or the text last sent by the web server. The page source returned is a
+ representation of the underlying DOM: do not expect it to be formatted
+ or escaped in the same way as the response sent from the web server.
+
+
+
+
+ Gets the current window handle, which is an opaque handle to this
+ window that uniquely identifies it within this driver instance.
+
+
+
+
+ Gets the window handles of open browser windows.
+
+
+
+
+ Close the current window, quitting the browser if it is the last window currently open.
+
+
+
+
+ Quits this driver, closing every associated window.
+
+
+
+
+ Instructs the driver to change its settings.
+
+ An object allowing the user to change
+ the settings of the driver.
+
+
+
+ Instructs the driver to navigate the browser to another location.
+
+ An object allowing the user to access
+ the browser's history and to navigate to a given URL.
+
+
+
+ Instructs the driver to send future commands to a different frame or window.
+
+ An object which can be used to select
+ a frame or window.
+
+
+
+ Defines the interface through which the user controls elements on the page.
+
+ The interface represents an HTML element.
+ Generally, all interesting operations to do with interacting with a page will
+ be performed through this interface.
+
+
+
+
+ Gets the tag name of this element.
+
+
+ The property returns the tag name of the
+ element, not the value of the name attribute. For example, it will return
+ "input" for an element specified by the HTML markup <input name="foo" />.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the innerText of this element, without any leading or trailing whitespace,
+ and with other whitespace collapsed.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is enabled.
+
+ The property will generally
+ return for everything except explicitly disabled input elements.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is selected.
+
+ This operation only applies to input elements such as checkboxes,
+ options in a select element and radio buttons.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a object containing the coordinates of the upper-left corner
+ of this element relative to the upper-left corner of the page.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a object containing the height and width of this element.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is displayed.
+
+ The property avoids the problem
+ of having to parse an element's "style" attribute to determine
+ visibility of an element.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Clears the content of this element.
+
+ If this element is a text entry element, the
+ method will clear the value. It has no effect on other elements. Text entry elements
+ are defined as elements with INPUT or TEXTAREA tags.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Simulates typing text into the element.
+
+ The text to type into the element.
+ The text to be typed may include special characters like arrow keys,
+ backspaces, function keys, and so on. Valid special keys are defined in
+ .
+
+ Thrown when the target element is not enabled.
+ Thrown when the target element is not visible.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Submits this element to the web server.
+
+ If this current element is a form, or an element within a form,
+ then this will be submitted to the web server. If this causes the current
+ page to change, then this method will block until the new page is loaded.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Clicks this element.
+
+
+
+ Click this element. If the click causes a new page to load, the
+ method will attempt to block until the page has loaded. After calling the
+ method, you should discard all references to this
+ element unless you know that the element and the page will still be present.
+ Otherwise, any further operations performed on this element will have an undefined.
+ behavior.
+
+
+ If this element is not clickable, then this operation is ignored. This allows you to
+ simulate a users to accidentally missing the target when clicking.
+
+
+ Thrown when the target element is not visible.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of the specified attribute for this element.
+
+ The name of the attribute.
+ The attribute's current value. Returns a if the
+ value is not set.
+ The method will return the current value
+ of the attribute, even if the value has been modified after the page has been
+ loaded. Note that the value of the following attributes will be returned even if
+ there is no explicit attribute on the element:
+ Attribute nameValue returned if not explicitly specifiedValid element typescheckedcheckedCheck BoxselectedselectedOptions in Select elementsdisableddisabledInput and other UI elements
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of a JavaScript property of this element.
+
+ The name JavaScript the JavaScript property to get the value of.
+ The JavaScript property's current value. Returns a if the
+ value is not set or the property does not exist.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of a CSS property of this element.
+
+ The name of the CSS property to get the value of.
+ The value of the specified CSS property.
+ The value returned by the
+ method is likely to be unpredictable in a cross-browser environment.
+ Color values should be returned as hex strings. For example, a
+ "background-color" property set as "green" in the HTML source, will
+ return "#008000" for its value.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Provides methods for getting and setting the size and position of the browser window.
+
+
+
+
+ Gets or sets the position of the browser window relative to the upper-left corner of the screen.
+
+ When setting this property, it should act as the JavaScript window.moveTo() method.
+
+
+
+ Gets or sets the size of the outer browser window, including title bars and window borders.
+
+ When setting this property, it should act as the JavaScript window.resizeTo() method.
+
+
+
+ Maximizes the current window if it is not already maximized.
+
+
+
+
+ Minimizes the current window if it is not already maximized.
+
+
+
+
+ Sets the current window to full screen if it is not already in that state.
+
+
+
+
+ Representations of keys able to be pressed that are not text keys for sending to the browser.
+
+
+
+
+ Represents the NUL keystroke.
+
+
+
+
+ Represents the Cancel keystroke.
+
+
+
+
+ Represents the Help keystroke.
+
+
+
+
+ Represents the Backspace key.
+
+
+
+
+ Represents the Tab key.
+
+
+
+
+ Represents the Clear keystroke.
+
+
+
+
+ Represents the Return key.
+
+
+
+
+ Represents the Enter key.
+
+
+
+
+ Represents the Shift key.
+
+
+
+
+ Represents the Shift key.
+
+
+
+
+ Represents the Control key.
+
+
+
+
+ Represents the Control key.
+
+
+
+
+ Represents the Alt key.
+
+
+
+
+ Represents the Alt key.
+
+
+
+
+ Represents the Pause key.
+
+
+
+
+ Represents the Escape key.
+
+
+
+
+ Represents the Spacebar key.
+
+
+
+
+ Represents the Page Up key.
+
+
+
+
+ Represents the Page Down key.
+
+
+
+
+ Represents the End key.
+
+
+
+
+ Represents the Home key.
+
+
+
+
+ Represents the left arrow key.
+
+
+
+
+ Represents the left arrow key.
+
+
+
+
+ Represents the up arrow key.
+
+
+
+
+ Represents the up arrow key.
+
+
+
+
+ Represents the right arrow key.
+
+
+
+
+ Represents the right arrow key.
+
+
+
+
+ Represents the Left arrow key.
+
+
+
+
+ Represents the Left arrow key.
+
+
+
+
+ Represents the Insert key.
+
+
+
+
+ Represents the Delete key.
+
+
+
+
+ Represents the semi-colon key.
+
+
+
+
+ Represents the equal sign key.
+
+
+
+
+ Represents the number pad 0 key.
+
+
+
+
+ Represents the number pad 1 key.
+
+
+
+
+ Represents the number pad 2 key.
+
+
+
+
+ Represents the number pad 3 key.
+
+
+
+
+ Represents the number pad 4 key.
+
+
+
+
+ Represents the number pad 5 key.
+
+
+
+
+ Represents the number pad 6 key.
+
+
+
+
+ Represents the number pad 7 key.
+
+
+
+
+ Represents the number pad 8 key.
+
+
+
+
+ Represents the number pad 9 key.
+
+
+
+
+ Represents the number pad multiplication key.
+
+
+
+
+ Represents the number pad addition key.
+
+
+
+
+ Represents the number pad thousands separator key.
+
+
+
+
+ Represents the number pad subtraction key.
+
+
+
+
+ Represents the number pad decimal separator key.
+
+
+
+
+ Represents the number pad division key.
+
+
+
+
+ Represents the function key F1.
+
+
+
+
+ Represents the function key F2.
+
+
+
+
+ Represents the function key F3.
+
+
+
+
+ Represents the function key F4.
+
+
+
+
+ Represents the function key F5.
+
+
+
+
+ Represents the function key F6.
+
+
+
+
+ Represents the function key F7.
+
+
+
+
+ Represents the function key F8.
+
+
+
+
+ Represents the function key F9.
+
+
+
+
+ Represents the function key F10.
+
+
+
+
+ Represents the function key F11.
+
+
+
+
+ Represents the function key F12.
+
+
+
+
+ Represents the function key META.
+
+
+
+
+ Represents the function key COMMAND.
+
+
+
+
+ Gets the description of a specific key.
+
+ The key value for which to get the description.
+ The description of the key.
+
+
+
+ Represents an entry in a log from a driver instance.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the timestamp value of the log entry.
+
+
+
+
+ Gets the logging level of the log entry.
+
+
+
+
+ Gets the message of the log entry.
+
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Creates a from a dictionary as deserialized from JSON.
+
+ The from
+ which to create the .
+ A with the values in the dictionary.
+
+
+
+ Represents the levels of logging available to driver instances.
+
+
+
+
+ Show all log messages.
+
+
+
+
+ Show messages with information useful for debugging.
+
+
+
+
+ Show informational messages.
+
+
+
+
+ Show messages corresponding to non-critical issues.
+
+
+
+
+ Show messages corresponding to critical issues.
+
+
+
+
+ Show no log messages.
+
+
+
+
+ Class containing names of common log types.
+
+
+
+
+ Log messages from the client language bindings.
+
+
+
+
+ Logs from the current WebDriver instance.
+
+
+
+
+ Logs from the browser.
+
+
+
+
+ Logs from the server.
+
+
+
+
+ Profiling logs.
+
+
+
+
+ The exception that is thrown when an alert is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when a frame is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when a window is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an item is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Provides a mechanism to write tests against Opera
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new OperaDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ }
+ }
+
+
+
+
+
+ Accept untrusted SSL Certificates
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified options.
+
+ The to be used with the Opera driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing OperaDriver.exe.
+
+ The full path to the directory containing OperaDriver.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing OperaDriver.exe and options.
+
+ The full path to the directory containing OperaDriver.exe.
+ The to be used with the Opera driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing OperaDriver.exe, options, and command timeout.
+
+ The full path to the directory containing OperaDriver.exe.
+ The to be used with the Opera driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use.
+ The to be used with the Opera driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The Opera driver does not allow a file detector to be set,
+ as the server component of the Opera driver (OperaDriver.exe) only
+ allows uploads from the local computer environment. Attempting to set
+ this property has no effect, but does not throw an exception. If you
+ are attempting to run the Opera driver remotely, use
+ in conjunction with a standalone WebDriver server.
+
+
+
+ Exposes the service provided by the native OperaDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the OperaDriver executable.
+ The file name of the OperaDriver executable.
+ The port on which the OperaDriver executable should listen.
+
+
+
+ Gets or sets the location of the log file written to by the OperaDriver executable.
+
+
+
+
+ Gets or sets the base URL path prefix for commands (e.g., "wd/url").
+
+
+
+
+ Gets or sets the address of a server to contact for reserving a port.
+
+
+
+
+ Gets or sets the port on which the Android Debug Bridge is listening for commands.
+
+
+
+
+ Gets or sets a value indicating whether to enable verbose logging for the OperaDriver executable.
+ Defaults to .
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the OperaDriverService.
+
+ A OperaDriverService that implements default settings.
+
+
+
+ Creates a default instance of the OperaDriverService using a specified path to the OperaDriver executable.
+
+ The directory containing the OperaDriver executable.
+ A OperaDriverService using a random port.
+
+
+
+ Creates a default instance of the OperaDriverService using a specified path to the OperaDriver executable with the given name.
+
+ The directory containing the OperaDriver executable.
+ The name of the OperaDriver executable file.
+ A OperaDriverService using a random port.
+
+
+
+ Class to manage options specific to
+
+ Used with OperaDriver.exe for Chromium v0.1.0 and higher.
+
+
+
+ OperaOptions options = new OperaOptions();
+ options.AddExtensions("\path\to\extension.crx");
+ options.BinaryLocation = "\path\to\opera";
+
+
+ For use with OperaDriver:
+
+
+ OperaDriver driver = new OperaDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Gets the name of the capability used to store Opera options in
+ a object.
+
+
+
+
+ Gets or sets the location of the Opera browser's binary executable file.
+
+
+
+
+ Gets or sets a value indicating whether Opera should be left running after the
+ OperaDriver instance is exited. Defaults to .
+
+
+
+
+ Gets the list of arguments appended to the Opera command line as a string array.
+
+
+
+
+ Gets the list of extensions to be installed as an array of base64-encoded strings.
+
+
+
+
+ Gets or sets the address of a Opera debugger server to connect to.
+ Should be of the form "{hostname|IP address}:port".
+
+
+
+
+ Gets or sets the directory in which to store minidump files.
+
+
+
+
+ Adds a single argument to the list of arguments to be appended to the Opera.exe command line.
+
+ The argument to add.
+
+
+
+ Adds arguments to be appended to the Opera.exe command line.
+
+ An array of arguments to add.
+
+
+
+ Adds arguments to be appended to the Opera.exe command line.
+
+ An object of arguments to add.
+
+
+
+ Adds a single argument to be excluded from the list of arguments passed by default
+ to the Opera.exe command line by operadriver.exe.
+
+ The argument to exclude.
+
+
+
+ Adds arguments to be excluded from the list of arguments passed by default
+ to the Opera.exe command line by operadriver.exe.
+
+ An array of arguments to exclude.
+
+
+
+ Adds arguments to be excluded from the list of arguments passed by default
+ to the Opera.exe command line by operadriver.exe.
+
+ An object of arguments to exclude.
+
+
+
+ Adds a path to a packed Opera extension (.crx file) to the list of extensions
+ to be installed in the instance of Opera.
+
+ The full path to the extension to add.
+
+
+
+ Adds a list of paths to packed Opera extensions (.crx files) to be installed
+ in the instance of Opera.
+
+ An array of full paths to the extensions to add.
+
+
+
+ Adds a list of paths to packed Opera extensions (.crx files) to be installed
+ in the instance of Opera.
+
+ An of full paths to the extensions to add.
+
+
+
+ Adds a base64-encoded string representing a Opera extension to the list of extensions
+ to be installed in the instance of Opera.
+
+ A base64-encoded string representing the extension to add.
+
+
+
+ Adds a list of base64-encoded strings representing Opera extensions to the list of extensions
+ to be installed in the instance of Opera.
+
+ An array of base64-encoded strings representing the extensions to add.
+
+
+
+ Adds a list of base64-encoded strings representing Opera extensions to be installed
+ in the instance of Opera.
+
+ An of base64-encoded strings
+ representing the extensions to add.
+
+
+
+ Adds a preference for the user-specific profile or "user data directory."
+ If the specified preference already exists, it will be overwritten.
+
+ The name of the preference to set.
+ The value of the preference to set.
+
+
+
+ Adds a preference for the local state file in the user's data directory for Opera.
+ If the specified preference already exists, it will be overwritten.
+
+ The name of the preference to set.
+ The value of the preference to set.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Opera driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+ Also, by default, calling this method adds capabilities to the options object passed to
+ operadriver.exe.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Opera driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+ Indicates whether the capability is to be set as a global
+ capability for the driver instead of a Opera-specific option.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for Opera with these options included as
+ capabilities. This does not copy the options. Further changes will be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for Opera with these options.
+
+
+
+ Provides a mechanism to get elements off the page for test
+
+
+
+
+ Initializes a new instance of the class
+
+ Driver in use
+ Id of the element
+
+
+
+ Represents the known and supported Platforms that WebDriver runs on.
+
+ The class maps closely to the Operating System,
+ but differs slightly, because this class is used to extract information such as
+ program locations and line endings.
+
+
+
+ Any platform. This value is never returned by a driver, but can be used to find
+ drivers with certain capabilities.
+
+
+
+
+ Any version of Microsoft Windows. This value is never returned by a driver,
+ but can be used to find drivers with certain capabilities.
+
+
+
+
+ Any Windows NT-based version of Microsoft Windows. This value is never returned
+ by a driver, but can be used to find drivers with certain capabilities. This value
+ is equivalent to PlatformType.Windows.
+
+
+
+
+ Versions of Microsoft Windows that are compatible with Windows XP.
+
+
+
+
+ Versions of Microsoft Windows that are compatible with Windows Vista.
+
+
+
+
+ Any version of the Macintosh OS
+
+
+
+
+ Any version of the Unix operating system.
+
+
+
+
+ Any version of the Linux operating system.
+
+
+
+
+ A version of the Android mobile operating system.
+
+
+
+
+ Represents the platform on which tests are to be run.
+
+
+
+
+ Initializes a new instance of the class for a specific platform type.
+
+ The platform type.
+
+
+
+ Gets the current platform.
+
+
+
+
+ Gets the major version of the platform operating system.
+
+
+
+
+ Gets the major version of the platform operating system.
+
+
+
+
+ Gets the type of the platform.
+
+
+
+
+ Gets the value of the platform type for transmission using the JSON Wire Protocol.
+
+
+
+
+ Compares the platform to the specified type.
+
+ A value to compare to.
+
+ if the platforms match; otherwise .
+
+
+
+ Returns the string value for this platform type.
+
+ The string value for this platform type.
+
+
+
+ Creates a object from a string name of the platform.
+
+ The name of the platform to create.
+ The Platform object represented by the string name.
+
+
+
+ Describes the kind of proxy.
+
+
+ Keep these in sync with the Firefox preferences numbers:
+ http://kb.mozillazine.org/Network.proxy.type
+
+
+
+
+ Direct connection, no proxy (default on Windows).
+
+
+
+
+ Manual proxy settings (e.g., for httpProxy).
+
+
+
+
+ Proxy automatic configuration from URL.
+
+
+
+
+ Use proxy automatic detection.
+
+
+
+
+ Use the system values for proxy settings (default on Linux).
+
+
+
+
+ No proxy type is specified.
+
+
+
+
+ Describes proxy settings to be used with a driver instance.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with the given proxy settings.
+
+ A dictionary of settings to use with the proxy.
+
+
+
+ Gets or sets the type of proxy.
+
+
+
+
+ Gets the type of proxy as a string for JSON serialization.
+
+
+
+
+ Gets or sets a value indicating whether the proxy uses automatic detection.
+
+
+
+
+ Gets or sets the value of the proxy for the FTP protocol.
+
+
+
+
+ Gets or sets the value of the proxy for the HTTP protocol.
+
+
+
+
+ Gets or sets the value for bypass proxy addresses.
+
+
+
+
+ Gets the semicolon delimited list of address for which to bypass the proxy.
+
+
+
+
+ Gets or sets the URL used for proxy automatic configuration.
+
+
+
+
+ Gets or sets the value of the proxy for the SSL protocol.
+
+
+
+
+ Gets or sets the value of the proxy for the SOCKS protocol.
+
+
+
+
+ Gets or sets the value of username for the SOCKS proxy.
+
+
+
+
+ Gets or sets the value of password for the SOCKS proxy.
+
+
+
+
+ Adds a single address to the list of addresses against which the proxy will not be used.
+
+ The address to add.
+
+
+
+ Adds addresses to the list of addresses against which the proxy will not be used.
+
+ An array of addresses to add.
+
+
+
+ Adds addresses to the list of addresses against which the proxy will not be used.
+
+ An object of arguments to add.
+
+
+
+ Returns a dictionary suitable for serializing to the W3C Specification
+ dialect of the wire protocol.
+
+ A dictionary suitable for serializing to the W3C Specification
+ dialect of the wire protocol.
+
+
+
+ Returns a dictionary suitable for serializing to the OSS dialect of the
+ wire protocol.
+
+ A dictionary suitable for serializing to the OSS dialect of the
+ wire protocol.
+
+
+
+ Base class for managing options specific to a browser driver.
+
+
+
+
+ Creates a new instance of the class.
+
+
+
+
+ Creates a new instance of the class,
+ containing the specified to use in the remote
+ session.
+
+
+ A object that contains values that must be matched
+ by the remote end to create the remote session.
+
+
+ A list of objects that contain values that may be matched
+ by the remote end to create the remote session.
+
+
+
+
+ Gets a value indicating the options that must be matched by the remote end to create a session.
+
+
+
+
+ Gets a value indicating the number of options that may be matched by the remote end to create a session.
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Add a metadata setting to this set of remote session settings.
+
+ The name of the setting to set.
+ The value of the setting.
+
+ The value to be set must be serializable to JSON for transmission
+ across the wire to the remote end. To be JSON-serializable, the value
+ must be a string, a numeric value, a boolean value, an object that
+ implmeents that contains JSON-serializable
+ objects, or a where the keys
+ are strings and the values are JSON-serializable.
+
+
+ Thrown if the setting name is null, the empty string, or one of the
+ reserved names of metadata settings; or if the setting value is not
+ JSON serializable.
+
+
+
+
+ Adds a object to the list of options containing values to be
+ "first matched" by the remote end.
+
+ The to add to the list of "first matched" options.
+
+
+
+ Adds a object containing values that must be matched
+ by the remote end to successfully create a session.
+
+ The that must be matched by
+ the remote end to successfully create a session.
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if this set of capabilities has the capability;
+ otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set in this set of capabilities.
+
+
+
+ Return a dictionary representation of this .
+
+ A representation of this .
+
+
+
+ Return a string representation of the remote session settings to be sent.
+
+ String representation of the remote session settings to be sent.
+
+
+
+ Provides a way to access Safari to run your tests by creating a SafariDriver instance
+
+
+ When the WebDriver object has been instantiated the browser will load. The test can then navigate to the URL under test and
+ start your test.
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new SafariDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ driver.Dispose();
+ }
+ }
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use for this instance.
+
+
+
+ Initializes a new instance of the class using the specified driver service.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe.
+
+ The full path to the directory containing SafariDriver executable.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe and options.
+
+ The full path to the directory containing SafariDriver executable.
+ The to be used with the Safari driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe, options, and command timeout.
+
+ The full path to the directory containing SafariDriver executable.
+ The to be used with the Safari driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use.
+ The to be used with the Safari driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The Safari driver does not allow a file detector to be set,
+ as the server component of the Safari driver (the Safari extension) only
+ allows uploads from the local computer environment. Attempting to set
+ this property has no effect, but does not throw an exception. If you
+ are attempting to run the Safari driver remotely, use
+ in conjunction with a standalone WebDriver server.
+
+
+
+ Exposes the service provided by the native SafariDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the SafariDriver executable.
+ The file name of the SafariDriver executable.
+ The port on which the SafariDriver executable should listen.
+
+
+
+ Gets or sets a value indicating whether to use the default open-source project
+ dialect of the protocol instead of the default dialect compliant with the
+ W3C WebDriver Specification.
+
+
+ This is only valid for versions of the driver for Safari that target Safari 12
+ or later, and will result in an error if used with prior versions of the driver.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
+ For the Safari driver, there is no time for termination
+
+
+
+
+ Gets a value indicating whether the service has a shutdown API that can be called to terminate
+ it gracefully before forcing a termination.
+
+
+
+
+ Gets a value indicating whether the service is responding to HTTP requests.
+
+
+
+
+ Creates a default instance of the SafariDriverService.
+
+ A SafariDriverService that implements default settings.
+
+
+
+ Creates a default instance of the SafariDriverService using a specified path to the ChromeDriver executable.
+
+ The directory containing the ChromeDriver executable.
+ A ChromeDriverService using a random port.
+
+
+
+ Creates a default instance of the SafariDriverService using a specified path to the ChromeDriver executable with the given name.
+
+ The directory containing the ChromeDriver executable.
+ The name of the ChromeDriver executable file.
+ A ChromeDriverService using a random port.
+
+
+
+ Class to manage options specific to
+
+
+ SafariOptions options = new SafariOptions();
+ options.SkipExtensionInstallation = true;
+
+
+ For use with SafariDriver:
+
+
+ SafariDriver driver = new SafariDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets a value indicating whether to have the driver preload the
+ Web Inspector and JavaScript debugger in the background.
+
+
+
+
+ Gets or sets a value indicating whether to have the driver preload the
+ Web Inspector and start a timeline recording in the background.
+
+
+
+
+ Gets or sets a value indicating whether the browser is the technology preview.
+
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Safari driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling where
+ has already been added will overwrite the existing value with the new value in
+
+
+
+ Returns ICapabilities for Safari with these options included as
+ capabilities. This copies the options. Further changes will not be
+ reflected in the returned capabilities.
+
+ The ICapabilities for Safari with these options.
+
+
+
+ Represents possible screen orientations.
+
+
+
+
+ Represents a portrait mode, where the screen is vertical.
+
+
+
+
+ Represents Landscape mode, where the screen is horizontal.
+
+
+
+
+ File format for saving screenshots.
+
+
+
+
+ W3C Portable Network Graphics image format.
+
+
+
+
+ Joint Photgraphic Experts Group image format.
+
+
+
+
+ Graphics Interchange Format image format.
+
+
+
+
+ Tagged Image File Format image format.
+
+
+
+
+ Bitmap image format.
+
+
+
+
+ Represents an image of the page currently loaded in the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The image of the page as a Base64-encoded string.
+
+
+
+ Gets the value of the screenshot image as a Base64-encoded string.
+
+
+
+
+ Gets the value of the screenshot image as an array of bytes.
+
+
+
+
+ Saves the screenshot to a Portable Network Graphics (PNG) file, overwriting the
+ file if it already exists.
+
+ The full path and file name to save the screenshot to.
+
+
+
+ Saves the screenshot to a file, overwriting the file if it already exists.
+
+ The full path and file name to save the screenshot to.
+ A value indicating the format
+ to save the image to.
+
+
+
+ Returns a String that represents the current Object.
+
+ A String that represents the current Object.
+
+
+
+ The exception that is thrown when a reference to an element is no longer valid.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ An implementation of the interface that may have its timeout and polling interval
+ configured on the fly.
+
+ The type of object on which the wait it to be applied.
+
+
+
+ Initializes a new instance of the class.
+
+ The input value to pass to the evaluated conditions.
+
+
+
+ Initializes a new instance of the class.
+
+ The input value to pass to the evaluated conditions.
+ The clock to use when measuring the timeout.
+
+
+
+ Gets or sets how long to wait for the evaluated condition to be true. The default timeout is 500 milliseconds.
+
+
+
+
+ Gets or sets how often the condition should be evaluated. The default timeout is 500 milliseconds.
+
+
+
+
+ Gets or sets the message to be displayed when time expires.
+
+
+
+
+ Configures this instance to ignore specific types of exceptions while waiting for a condition.
+ Any exceptions not whitelisted will be allowed to propagate, terminating the wait.
+
+ The types of exceptions to ignore.
+
+
+
+ Repeatedly applies this instance's input value to the given function until one of the following
+ occurs:
+ the function returns neither null nor falsethe function throws an exception that is not in the list of ignored exception typesthe timeout expires
+ The delegate's expected return type.
+ A delegate taking an object of type T as its parameter, and returning a TResult.
+ The delegate's return value.
+
+
+
+ Throws a with the given message.
+
+ The message of the exception.
+ The last exception thrown by the condition.
+ This method may be overridden to throw an exception that is
+ idiomatic for a particular test infrastructure.
+
+
+
+ An interface describing time handling functions for timeouts.
+
+
+
+
+ Gets the current date and time values.
+
+
+
+
+ Gets the at a specified offset in the future.
+
+ The offset to use.
+ The at the specified offset in the future.
+
+
+
+ Gets a value indicating whether the current date and time is before the specified date and time.
+
+ The date and time values to compare the current date and time values to.
+
+ if the current date and time is before the specified date and time; otherwise, .
+
+
+
+ Interface describing a class designed to wait for a condition.
+
+ The type of object used to detect the condition.
+
+
+
+ Gets or sets how long to wait for the evaluated condition to be true.
+
+
+
+
+ Gets or sets how often the condition should be evaluated.
+
+
+
+
+ Gets or sets the message to be displayed when time expires.
+
+
+
+
+ Configures this instance to ignore specific types of exceptions while waiting for a condition.
+ Any exceptions not whitelisted will be allowed to propagate, terminating the wait.
+
+ The types of exceptions to ignore.
+
+
+
+ Waits until a condition is true or times out.
+
+ The type of result to expect from the condition.
+ A delegate taking a TSource as its parameter, and returning a TResult.
+ If TResult is a boolean, the method returns when the condition is true, and otherwise.
+ If TResult is an object, the method returns the object when the condition evaluates to a value other than .
+ Thrown when TResult is not boolean or an object type.
+
+
+
+ Uses the system clock to calculate time for timeouts.
+
+
+
+
+ Gets the current date and time values.
+
+
+
+
+ Calculates the date and time values after a specific delay.
+
+ The delay after to calculate.
+ The future date and time values.
+
+
+
+ Gets a value indicating whether the current date and time is before the specified date and time.
+
+ The date and time values to compare the current date and time values to.
+
+ if the current date and time is before the specified date and time; otherwise, .
+
+
+
+ Provides the ability to wait for an arbitrary condition during test execution.
+
+
+
+ IWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(3))
+ IWebElement element = wait.Until(driver => driver.FindElement(By.Name("q")));
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The WebDriver instance used to wait.
+ The timeout value indicating how long to wait for the condition.
+
+
+
+ Initializes a new instance of the class.
+
+ An object implementing the interface used to determine when time has passed.
+ The WebDriver instance used to wait.
+ The timeout value indicating how long to wait for the condition.
+ A value indicating how often to check for the condition to be true.
+
+
+
+ The exception that is thrown when the user is unable to set a cookie.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an unhandled alert is present.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and alert text.
+
+ The message that describes the error.
+ The text of the unhandled alert.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Gets the text of the unhandled alert.
+
+
+
+
+ Populates a SerializationInfo with the data needed to serialize the target object.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Represents exceptions that are thrown when an error occurs during actions.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Specifies return values for actions in the driver.
+
+
+
+
+ The action was successful.
+
+
+
+
+ The index specified for the action was out of the acceptable range.
+
+
+
+
+ No collection was specified.
+
+
+
+
+ No string was specified.
+
+
+
+
+ No string length was specified.
+
+
+
+
+ No string wrapper was specified.
+
+
+
+
+ No driver matching the criteria exists.
+
+
+
+
+ No element matching the criteria exists.
+
+
+
+
+ No frame matching the criteria exists.
+
+
+
+
+ The functionality is not supported.
+
+
+
+
+ The specified element is no longer valid.
+
+
+
+
+ The specified element is not displayed.
+
+
+
+
+ The specified element is not enabled.
+
+
+
+
+ An unhandled error occurred.
+
+
+
+
+ An error occurred, but it was expected.
+
+
+
+
+ The specified element is not selected.
+
+
+
+
+ No document matching the criteria exists.
+
+
+
+
+ An unexpected JavaScript error occurred.
+
+
+
+
+ No result is available from the JavaScript execution.
+
+
+
+
+ The result from the JavaScript execution is not recognized.
+
+
+
+
+ No collection matching the criteria exists.
+
+
+
+
+ A timeout occurred.
+
+
+
+
+ A null pointer was received.
+
+
+
+
+ No window matching the criteria exists.
+
+
+
+
+ An illegal attempt was made to set a cookie under a different domain than the current page.
+
+
+
+
+ A request to set a cookie's value could not be satisfied.
+
+
+
+
+ An alert was found open unexpectedly.
+
+
+
+
+ A request was made to switch to an alert, but no alert is currently open.
+
+
+
+
+ An asynchronous JavaScript execution timed out.
+
+
+
+
+ The coordinates of the element are invalid.
+
+
+
+
+ The selector used (CSS/XPath) was invalid.
+
+
+
+
+ A session was not created by the driver
+
+
+
+
+ The requested move was outside the active view port
+
+
+
+
+ The XPath selector was invalid.
+
+
+
+
+ An insecure SSl certificate was specified.
+
+
+
+
+ The element was not interactable
+
+
+
+
+ An invalid argument was passed to the command.
+
+
+
+
+ No cookie was found matching the name requested.
+
+
+
+
+ The driver was unable to capture the screen.
+
+
+
+
+ The click on the element was intercepted by a different element.
+
+
+
+
+ Represents exceptions that are thrown when an error occurs during actions.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an error occurs during an XPath lookup.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Unique class for compression/decompression file. Represents a Zip file.
+
+
+
+
+ Compression method enumeration.
+
+
+
+ Uncompressed storage.
+
+
+ Deflate compression method.
+
+
+
+ Gets a value indicating whether file names and comments should be encoded using UTF-8.
+
+
+
+
+ Gets a value indicating whether to force using the deflate algorithm,
+ even if doing so inflates the stored file.
+
+
+
+
+ Create a new zip storage in a stream.
+
+ The stream to use to create the Zip file.
+ General comment for Zip file.
+ A valid ZipStorer object.
+
+
+
+ Open the existing Zip storage in a stream.
+
+ Already opened stream with zip contents.
+ File access mode for stream operations.
+ A valid ZipStorer object.
+
+
+
+ Add full contents of a file into the Zip storage.
+
+ Compression method used to store the file.
+ Full path of file to add to Zip storage.
+ File name and path as desired in Zip directory.
+ Comment for stored file.
+
+
+
+ Add full contents of a stream into the Zip storage.
+
+ Compression method used to store the stream.
+ Stream object containing the data to store in Zip.
+ File name and path as desired in Zip directory.
+ Modification time of the data to store.
+ Comment for stored file.
+
+
+
+ Updates central directory (if needed) and close the Zip storage.
+
+ This is a required step, unless automatic dispose is used.
+
+
+
+ Read all the file records in the central directory.
+
+ List of all entries in directory.
+
+
+
+ Copy the contents of a stored file into a physical file.
+
+ Entry information of file to extract.
+ Name of file to store uncompressed data.
+
+ if the file is successfully extracted; otherwise, .
+ Unique compression methods are Store and Deflate.
+
+
+
+ Copy the contents of a stored file into an open stream.
+
+ Entry information of file to extract.
+ Stream to store the uncompressed data.
+
+ if the file is successfully extracted; otherwise, .
+ Unique compression methods are Store and Deflate.
+
+
+
+ Closes the Zip file stream.
+
+
+
+
+ Represents an entry in Zip file directory
+
+
+
+ Compression method
+
+
+ Full path and filename as stored in Zip
+
+
+ Original file size
+
+
+ Compressed file size
+
+
+ Offset of header information inside Zip storage
+
+
+ Offset of file inside Zip storage
+
+
+ Size of header information
+
+
+ 32-bit checksum of entire file
+
+
+ Last modification time of file
+
+
+ User comment for file
+
+
+ True if UTF8 encoding for filename and comments, false if default (CP 437)
+
+
+ Overriden method
+ Filename in Zip
+
+
+
\ No newline at end of file
diff --git a/packages/Selenium.WebDriver.3.141.0/lib/net40/WebDriver.dll b/packages/Selenium.WebDriver.3.141.0/lib/net40/WebDriver.dll
new file mode 100644
index 0000000..5046f0a
Binary files /dev/null and b/packages/Selenium.WebDriver.3.141.0/lib/net40/WebDriver.dll differ
diff --git a/packages/Selenium.WebDriver.3.141.0/lib/net40/WebDriver.xml b/packages/Selenium.WebDriver.3.141.0/lib/net40/WebDriver.xml
new file mode 100644
index 0000000..bfcf869
--- /dev/null
+++ b/packages/Selenium.WebDriver.3.141.0/lib/net40/WebDriver.xml
@@ -0,0 +1,12041 @@
+
+
+
+ WebDriver
+
+
+
+
+ Provides a mechanism by which to find elements within a document.
+
+ It is possible to create your own locating mechanisms for finding documents.
+ In order to do this,subclass this class and override the protected methods. However,
+ it is expected that that all subclasses rely on the basic finding mechanisms provided
+ through static methods of this class. An example of this can be found in OpenQA.Support.ByIdOrName
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the given functions to find elements.
+
+ A function that takes an object implementing
+ and returns the found .
+ A function that takes an object implementing
+ and returns a of the foundIWebElements.
+ IWebElements/>.
+
+
+
+ Gets or sets the value of the description for this class instance.
+
+
+
+
+ Gets or sets the method used to find a single element matching specified criteria.
+
+
+
+
+ Gets or sets the method used to find all elements matching specified criteria.
+
+
+
+
+ Determines if two instances are equal.
+
+ One instance to compare.
+ The other instance to compare.
+
+ if the two instances are equal; otherwise, .
+
+
+
+ Determines if two instances are unequal.
+ s
+ One instance to compare.The other instance to compare. if the two instances are not equal; otherwise, .
+
+
+ Gets a mechanism to find elements by their ID.
+
+ The ID to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their link text.
+
+ The link text to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their name.
+
+ The name to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by an XPath query.
+ When searching within a WebElement using xpath be aware that WebDriver follows standard conventions:
+ a search prefixed with "//" will search the entire document, not just the children of this current node.
+ Use ".//" to limit your search to the children of this WebElement.
+
+ The XPath query to use.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their CSS class.
+
+ The CSS class to find.
+ A object the driver can use to find the elements.
+ If an element has many classes then this will match against each of them.
+ For example if the value is "one two onone", then the following values for the
+ className parameter will match: "one" and "two".
+
+
+
+ Gets a mechanism to find elements by a partial match on their link text.
+
+ The partial link text to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their tag name.
+
+ The tag name to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their cascading style sheet (CSS) selector.
+
+ The CSS selector to find.
+ A object the driver can use to find the elements.
+
+
+
+ Finds the first element matching the criteria.
+
+ An object to use to search for the elements.
+ The first matching on the current context.
+
+
+
+ Finds all elements matching the criteria.
+
+ An object to use to search for the elements.
+ A of all WebElements
+ matching the current criteria, or an empty list if nothing matches.
+
+
+
+ Gets a string representation of the finder.
+
+ The string displaying the finder content.
+
+
+
+ Determines whether the specified Object is equal
+ to the current Object.
+
+ The Object to compare with the
+ current Object.
+
+ if the specified Object
+ is equal to the current Object; otherwise,
+ .
+
+
+
+ Serves as a hash function for a particular type.
+
+ A hash code for the current Object.
+
+
+
+ Provides a mechanism to write tests against Chrome
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new ChromeDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ }
+ }
+
+
+
+
+
+ Accept untrusted SSL Certificates
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified options.
+
+ The to be used with the Chrome driver.
+
+
+
+ Initializes a new instance of the class using the specified driver service.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe.
+
+ The full path to the directory containing ChromeDriver.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe and options.
+
+ The full path to the directory containing ChromeDriver.exe.
+ The to be used with the Chrome driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe, options, and command timeout.
+
+ The full path to the directory containing ChromeDriver.exe.
+ The to be used with the Chrome driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use.
+ The to be used with the Chrome driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The Chrome driver does not allow a file detector to be set,
+ as the server component of the Chrome driver (ChromeDriver.exe) only
+ allows uploads from the local computer environment. Attempting to set
+ this property has no effect, but does not throw an exception. If you
+ are attempting to run the Chrome driver remotely, use
+ in conjunction with a standalone WebDriver server.
+
+
+
+ Gets or sets the network condition emulation for Chrome.
+
+
+
+
+ Executes a custom Chrome command.
+
+ Name of the command to execute.
+ Parameters of the command to execute.
+
+
+
+ Exposes the service provided by the native ChromeDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the ChromeDriver executable.
+ The file name of the ChromeDriver executable.
+ The port on which the ChromeDriver executable should listen.
+
+
+
+ Gets or sets the location of the log file written to by the ChromeDriver executable.
+
+
+
+
+ Gets or sets the base URL path prefix for commands (e.g., "wd/url").
+
+
+
+
+ Gets or sets the address of a server to contact for reserving a port.
+
+
+
+
+ Gets or sets the port on which the Android Debug Bridge is listening for commands.
+
+
+
+
+ Gets or sets a value indicating whether to enable verbose logging for the ChromeDriver executable.
+ Defaults to .
+
+
+
+
+ Gets or sets the comma-delimited list of IP addresses that are approved to
+ connect to this instance of the Chrome driver. Defaults to an empty string,
+ which means only the local loopback address can connect.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the ChromeDriverService.
+
+ A ChromeDriverService that implements default settings.
+
+
+
+ Creates a default instance of the ChromeDriverService using a specified path to the ChromeDriver executable.
+
+ The directory containing the ChromeDriver executable.
+ A ChromeDriverService using a random port.
+
+
+
+ Creates a default instance of the ChromeDriverService using a specified path to the ChromeDriver executable with the given name.
+
+ The directory containing the ChromeDriver executable.
+ The name of the ChromeDriver executable file.
+ A ChromeDriverService using a random port.
+
+
+
+ Returns the Chrome driver filename for the currently running platform
+
+ The file name of the Chrome driver service executable.
+
+
+
+ Represents the type-safe options for setting settings for emulating a
+ mobile device in the Chrome browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The user agent string to be used by the browser when emulating
+ a mobile device.
+
+
+
+ Gets or sets the user agent string to be used by the browser when emulating
+ a mobile device.
+
+
+
+
+ Gets or sets the width in pixels to be used by the browser when emulating
+ a mobile device.
+
+
+
+
+ Gets or sets the height in pixels to be used by the browser when emulating
+ a mobile device.
+
+
+
+
+ Gets or sets the pixel ratio to be used by the browser when emulating
+ a mobile device.
+
+
+
+
+ Gets or sets a value indicating whether touch events should be enabled by
+ the browser when emulating a mobile device. Defaults to .
+
+
+
+
+ Provides manipulation of getting and setting network conditions from Chrome.
+
+
+
+
+ Gets or sets a value indicating whether the network is offline. Defaults to .
+
+
+
+
+ Gets or sets the simulated latency of the connection. Typically given in milliseconds.
+
+
+
+
+ Gets or sets the throughput of the network connection in kb/second for downloading.
+
+
+
+
+ Gets or sets the throughput of the network connection in kb/second for uploading.
+
+
+
+
+ Class to manage options specific to
+
+ Used with ChromeDriver.exe v17.0.963.0 and higher.
+
+
+
+ ChromeOptions options = new ChromeOptions();
+ options.AddExtensions("\path\to\extension.crx");
+ options.BinaryLocation = "\path\to\chrome";
+
+
+ For use with ChromeDriver:
+
+
+ ChromeDriver driver = new ChromeDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Gets the name of the capability used to store Chrome options in
+ a object.
+
+
+
+
+ Gets or sets the location of the Chrome browser's binary executable file.
+
+
+
+
+ Gets or sets a value indicating whether Chrome should be left running after the
+ ChromeDriver instance is exited. Defaults to .
+
+
+
+
+ Gets the list of arguments appended to the Chrome command line as a string array.
+
+
+
+
+ Gets the list of extensions to be installed as an array of base64-encoded strings.
+
+
+
+
+ Gets or sets the address of a Chrome debugger server to connect to.
+ Should be of the form "{hostname|IP address}:port".
+
+
+
+
+ Gets or sets the directory in which to store minidump files.
+
+
+
+
+ Gets or sets the performance logging preferences for the driver.
+
+
+
+
+ Gets or sets a value indicating whether the instance
+ should use the legacy OSS protocol dialect or a dialect compliant with the W3C
+ WebDriver Specification.
+
+
+
+
+ Adds a single argument to the list of arguments to be appended to the Chrome.exe command line.
+
+ The argument to add.
+
+
+
+ Adds arguments to be appended to the Chrome.exe command line.
+
+ An array of arguments to add.
+
+
+
+ Adds arguments to be appended to the Chrome.exe command line.
+
+ An object of arguments to add.
+
+
+
+ Adds a single argument to be excluded from the list of arguments passed by default
+ to the Chrome.exe command line by chromedriver.exe.
+
+ The argument to exclude.
+
+
+
+ Adds arguments to be excluded from the list of arguments passed by default
+ to the Chrome.exe command line by chromedriver.exe.
+
+ An array of arguments to exclude.
+
+
+
+ Adds arguments to be excluded from the list of arguments passed by default
+ to the Chrome.exe command line by chromedriver.exe.
+
+ An object of arguments to exclude.
+
+
+
+ Adds a path to a packed Chrome extension (.crx file) to the list of extensions
+ to be installed in the instance of Chrome.
+
+ The full path to the extension to add.
+
+
+
+ Adds a list of paths to packed Chrome extensions (.crx files) to be installed
+ in the instance of Chrome.
+
+ An array of full paths to the extensions to add.
+
+
+
+ Adds a list of paths to packed Chrome extensions (.crx files) to be installed
+ in the instance of Chrome.
+
+ An of full paths to the extensions to add.
+
+
+
+ Adds a base64-encoded string representing a Chrome extension to the list of extensions
+ to be installed in the instance of Chrome.
+
+ A base64-encoded string representing the extension to add.
+
+
+
+ Adds a list of base64-encoded strings representing Chrome extensions to the list of extensions
+ to be installed in the instance of Chrome.
+
+ An array of base64-encoded strings representing the extensions to add.
+
+
+
+ Adds a list of base64-encoded strings representing Chrome extensions to be installed
+ in the instance of Chrome.
+
+ An of base64-encoded strings
+ representing the extensions to add.
+
+
+
+ Adds a preference for the user-specific profile or "user data directory."
+ If the specified preference already exists, it will be overwritten.
+
+ The name of the preference to set.
+ The value of the preference to set.
+
+
+
+ Adds a preference for the local state file in the user's data directory for Chrome.
+ If the specified preference already exists, it will be overwritten.
+
+ The name of the preference to set.
+ The value of the preference to set.
+
+
+
+ Allows the Chrome browser to emulate a mobile device.
+
+ The name of the device to emulate. The device name must be a
+ valid device name from the Chrome DevTools Emulation panel.
+ Specifying an invalid device name will not throw an exeption, but
+ will generate an error in Chrome when the driver starts. To unset mobile
+ emulation, call this method with as the argument.
+
+
+
+ Allows the Chrome browser to emulate a mobile device.
+
+ The
+ object containing the settings of the device to emulate.
+ Thrown if the device settings option does
+ not have a user agent string set.
+ Specifying an invalid device name will not throw an exeption, but
+ will generate an error in Chrome when the driver starts. To unset mobile
+ emulation, call this method with as the argument.
+
+
+
+ Adds a type of window that will be listed in the list of window handles
+ returned by the Chrome driver.
+
+ The name of the window type to add.
+ This method can be used to allow the driver to access {webview}
+ elements by adding "webview" as a window type.
+
+
+
+ Adds a list of window types that will be listed in the list of window handles
+ returned by the Chrome driver.
+
+ An array of window types to add.
+
+
+
+ Adds a list of window types that will be listed in the list of window handles
+ returned by the Chrome driver.
+
+ An of window types to add.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Chrome driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+ Also, by default, calling this method adds capabilities to the options object passed to
+ chromedriver.exe.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Chrome driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+ Indicates whether the capability is to be set as a global
+ capability for the driver instead of a Chrome-specific option.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for Chrome with these options included as
+ capabilities. This does not copy the options. Further changes will be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for Chrome with these options.
+
+
+
+ Represents the type-safe options for setting preferences for performance
+ logging in the Chrome browser.
+
+
+
+
+ Gets or sets a value indicating whether Chrome will collect events from the Network domain.
+ Defaults to .
+
+
+
+
+ Gets or sets a value indicating whether Chrome will collect events from the Page domain.
+ Defaults to .
+
+
+
+
+ Gets or sets the interval between Chrome DevTools trace buffer usage events.
+ Defaults to 1000 milliseconds.
+
+ Thrown when an attempt is made to set
+ the value to a time span of less tnan or equal to zero milliseconds.
+
+
+
+ Gets a comma-separated list of the categories for which tracing is enabled.
+
+
+
+
+ Adds a single category to the list of Chrome tracing categories for which events should be collected.
+
+ The category to add.
+
+
+
+ Adds categories to the list of Chrome tracing categories for which events should be collected.
+
+ An array of categories to add.
+
+
+
+ Adds categories to the list of Chrome tracing categories for which events should be collected.
+
+ An object of categories to add.
+
+
+
+ Provides a mechanism to get elements off the page for test
+
+
+
+
+ Initializes a new instance of the class.
+
+ Driver in use
+ Id of the element
+
+
+
+ Represents a cookie in the browser.
+
+
+
+
+ Initializes a new instance of the class with a specific name,
+ value, domain, path and expiration date.
+
+ The name of the cookie.
+ The value of the cookie.
+ The domain of the cookie.
+ The path of the cookie.
+ The expiration date of the cookie.
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value is .
+
+
+
+ Initializes a new instance of the class with a specific name,
+ value, path and expiration date.
+
+ The name of the cookie.
+ The value of the cookie.
+ The path of the cookie.
+ The expiration date of the cookie.
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value is .
+
+
+
+ Initializes a new instance of the class with a specific name,
+ value, and path.
+
+ The name of the cookie.
+ The value of the cookie.
+ The path of the cookie.
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value is .
+
+
+
+ Initializes a new instance of the class with a specific name and value.
+
+ The name of the cookie.
+ The value of the cookie.
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value is .
+
+
+
+ Gets the name of the cookie.
+
+
+
+
+ Gets the value of the cookie.
+
+
+
+
+ Gets the domain of the cookie.
+
+
+
+
+ Gets the path of the cookie.
+
+
+
+
+ Gets a value indicating whether the cookie is secure.
+
+
+
+
+ Gets a value indicating whether the cookie is an HTTP-only cookie.
+
+
+
+
+ Gets the expiration date of the cookie.
+
+
+
+
+ Gets the cookie expiration date in seconds from the defined zero date (01 January 1970 00:00:00 UTC).
+
+ This property only exists so that the JSON serializer can serialize a
+ cookie without resorting to a custom converter.
+
+
+
+ Converts a Dictionary to a Cookie.
+
+ The Dictionary object containing the cookie parameters.
+ A object with the proper parameters set.
+
+
+
+ Creates and returns a string representation of the cookie.
+
+ A string representation of the cookie.
+
+
+
+ Determines whether the specified Object is equal
+ to the current Object.
+
+ The Object to compare with the
+ current Object.
+
+ if the specified Object
+ is equal to the current Object; otherwise,
+ .
+
+
+
+ Serves as a hash function for a particular type.
+
+ A hash code for the current Object.
+
+
+
+ Represents the default file detector for determining whether a file
+ must be uploaded to a remote server.
+
+
+
+
+ Returns a value indicating whether a specified key sequence represents
+ a file name and path.
+
+ The sequence to test for file existence.
+ This method always returns in this implementation.
+
+
+
+ Specifies the behavior of handling unexpected alerts in the IE driver.
+
+
+
+
+ Indicates the behavior is not set.
+
+
+
+
+ Ignore unexpected alerts, such that the user must handle them.
+
+
+
+
+ Accept unexpected alerts.
+
+
+
+
+ Dismiss unexpected alerts.
+
+
+
+
+ Accepts unexpected alerts and notifies the user that the alert has
+ been accepted by throwing an
+
+
+
+ Dismisses unexpected alerts and notifies the user that the alert has
+ been dismissed by throwing an
+
+
+
+ Specifies the behavior of waiting for page loads in the driver.
+
+
+
+
+ Indicates the behavior is not set.
+
+
+
+
+ Waits for pages to load and ready state to be 'complete'.
+
+
+
+
+ Waits for pages to load and for ready state to be 'interactive' or 'complete'.
+
+
+
+
+ Does not wait for pages to load, returning immediately.
+
+
+
+
+ Base class for managing options specific to a browser driver.
+
+
+
+
+ Gets or sets the name of the browser.
+
+
+
+
+ Gets or sets the version of the browser.
+
+
+
+
+ Gets or sets the name of the platform on which the browser is running.
+
+
+
+
+ Gets or sets a value indicating whether the browser should accept self-signed
+ SSL certificates.
+
+
+
+
+ Gets or sets the value for describing how unexpected alerts are to be handled in the browser.
+ Defaults to .
+
+
+
+
+ Gets or sets the value for describing how the browser is to wait for pages to load in the browser.
+ Defaults to .
+
+
+
+
+ Gets or sets the to be used with this browser.
+
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the specific browser driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+
+
+
+
+ Returns the for the specific browser driver with these
+ options included as capabilities. This does not copy the options. Further
+ changes will be reflected in the returned capabilities.
+
+ The for browser driver with these options.
+
+
+
+ Compares this object with another to see if there
+ are merge conflicts between them.
+
+ The object to compare with.
+ A object containing the status of the attempted merge.
+
+
+
+ Sets the logging preferences for this driver.
+
+ The type of log for which to set the preference.
+ Known log types can be found in the class.
+ The value to which to set the log level.
+
+
+
+ Returns a string representation of this .
+
+ A string representation of this .
+
+
+
+ Returns the current options as a .
+
+ The current options as a .
+
+
+
+ Adds a known capability to the list of known capabilities and associates it
+ with the type-safe property name of the options class to be used instead.
+
+ The name of the capability.
+ The name of the option property or method to be used instead.
+
+
+
+ Gets a value indicating whether the specified capability name is a known capability name which has a type-safe option.
+
+ The name of the capability to check.
+
+ if the capability name is known; otherwise .
+
+
+
+ Gets the name of the type-safe option for a given capability name.
+
+ The name of the capability to check.
+ The name of the type-safe option for the given capability name.
+
+
+
+ Generates the logging preferences dictionary for transmission as a desired capability.
+
+ The dictionary containing the logging preferences.
+
+
+
+ Generates the current options as a capabilities object for further processing.
+
+ A value indicating whether to generate capabilities compliant with the W3C WebDriver Specification.
+ A object representing the current options for further processing.
+
+
+
+ Gets or sets a value indicating whether the DriverOptions would conflict when merged with another option
+
+
+
+
+ Gets or sets the name of the name of the option that is in conflict.
+
+
+
+
+ Provides types of capabilities for the DesiredCapabilities object.
+
+
+
+
+ Capability name used for the browser name.
+
+
+
+
+ Capability name used for the browser version.
+
+
+
+
+ Capability name used for the platform name.
+
+
+
+
+ Capability name used for the browser platform.
+
+
+
+
+ Capability name used for the browser version.
+
+
+
+
+ Capability name used to indicate whether JavaScript is enabled for the browser.
+
+
+
+
+ Capability name used to indicate whether the browser can take screenshots.
+
+
+
+
+ Capability name used to indicate whether the browser can handle alerts.
+
+
+
+
+ Capability name used to indicate whether the browser can find elements via CSS selectors.
+
+
+
+
+ Capability name used for the browser proxy.
+
+
+
+
+ Capability name used to indicate whether the browser supports rotation.
+
+
+
+
+ Capability name used to indicate whether the browser accepts SSL certificates.
+
+
+
+
+ Capability name used to indicate whether the browser accepts SSL certificates on W3C Endpoints
+
+
+
+
+ Capability name used to indicate whether the browser uses native events.
+
+
+
+
+ Capability name used to indicate how the browser handles unexpected alerts.
+
+
+
+
+ Capability name used to indicate how the browser handles unhandled user prompts.
+
+
+
+
+ Capability name used to indicate the page load strategy for the browser.
+
+
+
+
+ Capability name used to indicate the logging preferences for the session.
+
+
+
+
+ Capability name used to disable the check for overlapping elements.
+
+
+
+
+ Capability name used to enable the profiling log for the session.
+
+
+
+
+ Capability name used to indicate whether the driver supports geolocation context.
+
+
+
+
+ Capability name used to indicate whether the driver supports application cache.
+
+
+
+
+ Capability name used to indicate whether the driver supports web storage.
+
+
+
+
+ Capability name used to indicate whether the driver supports setting the browser window's size and position.
+
+
+
+
+ Capability name used to get or set timeout values when creating a session.
+
+
+
+
+ Provides a way to send commands to the remote server
+
+
+
+
+ Initializes a new instance of the class using a command name and a JSON-encoded string for the parameters.
+
+ Name of the command
+ Parameters for the command as a JSON-encoded string.
+
+
+
+ Initializes a new instance of the class for a Session
+
+ Session ID the driver is using
+ Name of the command
+ Parameters for that command
+
+
+
+ Gets the SessionID of the command
+
+
+
+
+ Gets the command name
+
+
+
+
+ Gets the parameters of the command
+
+
+
+
+ Gets the parameters of the command as a JSON-encoded string.
+
+
+
+
+ Returns a string of the Command object
+
+ A string representation of the Command Object
+
+
+
+ Gets the command parameters as a , with a string key, and an object value.
+
+ The JSON-encoded string representing the command parameters.
+ A with a string keys, and an object value.
+
+
+
+ Provides the execution information for a .
+
+
+
+
+ POST verb for the command info
+
+
+
+
+ GET verb for the command info
+
+
+
+
+ DELETE verb for the command info
+
+
+
+
+ Initializes a new instance of the class
+
+ Method of the Command
+ Relative URL path to the resource used to execute the command
+
+
+
+ Gets the URL representing the path to the resource.
+
+
+
+
+ Gets the HTTP method associated with the command.
+
+
+
+
+ Creates the full URI associated with this command, substituting command
+ parameters for tokens in the URI template.
+
+ The base URI associated with the command.
+ The command containing the parameters with which
+ to substitute the tokens in the template.
+ The full URI for the command, with the parameters of the command
+ substituted for the tokens in the template.
+
+
+
+ Holds the information about all commands specified by the JSON wire protocol.
+ This class cannot be inherited, as it is intended to be a singleton, and
+ allowing subclasses introduces the possibility of multiple instances.
+
+
+
+
+ Initializes a new instance of the class.
+ Protected accessibility prevents a default instance from being created.
+
+
+
+
+ Gets the level of the W3C WebDriver specification that this repository supports.
+
+
+
+
+ Gets the for a .
+
+ The for which to get the information.
+ The for the specified command.
+
+
+
+ Tries to add a command to the list of known commands.
+
+ Name of the command.
+ The command information.
+
+ if the new command has been added successfully; otherwise, .
+
+ This method is used by WebDriver implementations to add additional custom driver-specific commands.
+ This method will not overwrite existing commands for a specific name, and will return
+ in that case.
+
+
+
+
+ Initializes the dictionary of commands for the CommandInfoRepository
+
+
+
+
+ Class to Create the capabilities of the browser you require for .
+ If you wish to use default values use the static methods
+
+
+
+
+ Initializes a new instance of the class
+
+ Name of the browser e.g. firefox, internet explorer, safari
+ Version of the browser
+ The platform it works on
+
+
+
+ Initializes a new instance of the class
+
+
+
+
+ Initializes a new instance of the class
+
+ Dictionary of items for the remote driver
+
+
+ DesiredCapabilities capabilities = new DesiredCapabilities(new Dictionary]]>(){["browserName","firefox"],["version",string.Empty],["javaScript",true]});
+
+
+
+
+
+ Initializes a new instance of the class
+
+ Name of the browser e.g. firefox, internet explorer, safari
+ Version of the browser
+ The platform it works on
+ Sets a value indicating whether the capabilities are
+ compliant with the W3C WebDriver specification.
+
+
+
+ Gets the browser name
+
+
+
+
+ Gets or sets the platform
+
+
+
+
+ Gets the browser version
+
+
+
+
+ Gets or sets a value indicating whether the browser accepts SSL certificates.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if the browser has the capability; otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set on the browser.
+
+
+
+ Sets a capability of the browser.
+
+ The capability to get.
+ The value for the capability.
+
+
+
+ Return HashCode for the DesiredCapabilities that has been created
+
+ Integer of HashCode generated
+
+
+
+ Return a string of capabilities being used
+
+ String of capabilities being used
+
+
+
+ Compare two DesiredCapabilities and will return either true or false
+
+ DesiredCapabilities you wish to compare
+ true if they are the same or false if they are not
+
+
+
+ Returns a read-only version of this capabilities object.
+
+ A read-only version of this capabilities object.
+
+
+
+ Values describing the list of commands understood by a remote server using the JSON wire protocol.
+
+
+
+
+ Represents the Define Driver Mapping command
+
+
+
+
+ Represents the Status command.
+
+
+
+
+ Represents a New Session command
+
+
+
+
+ Represents the Get Session List command
+
+
+
+
+ Represents the Get Session Capabilities command
+
+
+
+
+ Represents a Browser close command
+
+
+
+
+ Represents a browser quit command
+
+
+
+
+ Represents a GET command
+
+
+
+
+ Represents a Browser going back command
+
+
+
+
+ Represents a Browser going forward command
+
+
+
+
+ Represents a Browser refreshing command
+
+
+
+
+ Represents adding a cookie command
+
+
+
+
+ Represents getting all cookies command
+
+
+
+
+ Represents getting cookie command
+
+
+
+
+ Represents deleting a cookie command
+
+
+
+
+ Represents Deleting all cookies command
+
+
+
+
+ Represents FindElement command
+
+
+
+
+ Represents FindElements command
+
+
+
+
+ Represents FindChildElement command
+
+
+
+
+ Represents FindChildElements command
+
+
+
+
+ Describes an element
+
+
+
+
+ Represents ClearElement command
+
+
+
+
+ Represents ClickElement command
+
+
+
+
+ Represents SendKeysToElements command
+
+
+
+
+ Represents TapElement command
+
+
+
+
+ Represents SubmitElement command
+
+
+
+
+ Represents GetCurrentWindowHandle command
+
+
+
+
+ Represents GetWindowHandles command
+
+
+
+
+ Represents SwitchToWindow command
+
+
+
+
+ Represents SwitchToFrame command
+
+
+
+
+ Represents SwitchToParentFrame command
+
+
+
+
+ Represents GetActiveElement command
+
+
+
+
+ Represents GetCurrentUrl command
+
+
+
+
+ Represents GetPageSource command
+
+
+
+
+ Represents GetTitle command
+
+
+
+
+ Represents ExecuteScript command
+
+
+
+
+ Represents ExecuteAsyncScript command
+
+
+
+
+ Represents GetElementText command
+
+
+
+
+ Represents GetElementTagName command
+
+
+
+
+ Represents IsElementSelected command
+
+
+
+
+ Represents IsElementEnabled command
+
+
+
+
+ Represents IsElementDisplayed command
+
+
+
+
+ Represents GetElementLocation command
+
+
+
+
+ Represents GetElementLocationOnceScrolledIntoView command
+
+
+
+
+ Represents GetElementSize command
+
+
+
+
+ Represents GetElementRect command
+
+
+
+
+ Represents GetElementAttribute command
+
+
+
+
+ Represents GetElementProperty command
+
+
+
+
+ Represents GetElementValueOfCSSProperty command
+
+
+
+
+ Represents ElementEquals command
+
+
+
+
+ Represents Screenshot command
+
+
+
+
+ Represents the ElementScreenshot command
+
+
+
+
+ Represents GetOrientation command
+
+
+
+
+ Represents SetOrientation command
+
+
+
+
+ Represents GetWindowSize command
+
+
+
+
+ Represents SetWindowSize command
+
+
+
+
+ Represents GetWindowPosition command
+
+
+
+
+ Represents SetWindowPosition command
+
+
+
+
+ Represents GetWindowRect command
+
+
+
+
+ Represents SetWindowRect command
+
+
+
+
+ Represents MaximizeWindow command
+
+
+
+
+ Represents MinimizeWindow command
+
+
+
+
+ Represents FullScreenWindow command
+
+
+
+
+ Represents the DismissAlert command
+
+
+
+
+ Represents the AcceptAlert command
+
+
+
+
+ Represents the GetAlertText command
+
+
+
+
+ Represents the SetAlertValue command
+
+
+
+
+ Represents the Authenticate command
+
+
+
+
+ Represents the ImplicitlyWait command
+
+
+
+
+ Represents the SetAsyncScriptTimeout command
+
+
+
+
+ Represents the SetTimeout command
+
+
+
+
+ Represents the SetTimeout command
+
+
+
+
+ Represents the Actions command.
+
+
+
+
+ Represents the CancelActions command.
+
+
+
+
+ Represents the MouseClick command.
+
+
+
+
+ Represents the MouseDoubleClick command.
+
+
+
+
+ Represents the MouseDown command.
+
+
+
+
+ Represents the MouseUp command.
+
+
+
+
+ Represents the MouseMoveTo command.
+
+
+
+
+ Represents the SendKeysToActiveElement command.
+
+
+
+
+ Represents the UploadFile command.
+
+
+
+
+ Represents the TouchSingleTap command.
+
+
+
+
+ Represents the TouchPress command.
+
+
+
+
+ Represents the TouchRelease command.
+
+
+
+
+ Represents the TouchMove command.
+
+
+
+
+ Represents the TouchScroll command.
+
+
+
+
+ Represents the TouchDoubleTap command.
+
+
+
+
+ Represents the TouchLongPress command.
+
+
+
+
+ Represents the TouchFlick command.
+
+
+
+
+ Represents the GetLocation command.
+
+
+
+
+ Represents the SetLocation command.
+
+
+
+
+ Represents the GetAppCache command.
+
+
+
+
+ Represents the application cache GetStatus command.
+
+
+
+
+ Represents the ClearAppCache command.
+
+
+
+
+ Represents the GetLocalStorageItem command.
+
+
+
+
+ Represents the GetLocalStorageKeys command.
+
+
+
+
+ Represents the SetLocalStorageItem command.
+
+
+
+
+ Represents the RemoveLocalStorageItem command.
+
+
+
+
+ Represents the ClearLocalStorage command.
+
+
+
+
+ Represents the GetLocalStorageSize command.
+
+
+
+
+ Represents the GetSessionStorageItem command.
+
+
+
+
+ Represents the GetSessionStorageKeys command.
+
+
+
+
+ Represents the SetSessionStorageItem command.
+
+
+
+
+ Represents the RemoveSessionStorageItem command.
+
+
+
+
+ Represents the ClearSessionStorage command.
+
+
+
+
+ Represents the GetSessionStorageSize command.
+
+
+
+
+ Represents the GetAvailableLogTypes command.
+
+
+
+
+ Represents the GetLog command.
+
+
+
+
+ Provides a mechanism to execute commands on the browser
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that drives the browser.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class.
+
+ The that drives the browser.
+ The maximum amount of time to wait for each command.
+
+ if the KeepAlive header should be sent
+ with HTTP requests; otherwise, .
+
+
+
+ Gets the object associated with this executor.
+
+
+
+
+ Gets the that sends commands to the remote
+ end WebDriver implementation.
+
+
+
+
+ Executes a command
+
+ The command you wish to execute
+ A response from the browser
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Releases the unmanaged resources used by the and
+ optionally releases the managed resources.
+
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Provides a way to store errors from a response
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified values.
+
+ A containing names and values of
+ the properties of this .
+
+
+
+ Gets or sets the message from the response
+
+
+
+
+ Gets or sets the class name that threw the error
+
+
+
+
+ Gets or sets the screenshot of the error
+
+
+
+
+ Gets or sets the stack trace of the error
+
+
+
+
+ Provides a way of executing Commands over HTTP
+
+
+
+
+ Initializes a new instance of the class
+
+ Address of the WebDriver Server
+ The timeout within which the server must respond.
+
+
+
+ Initializes a new instance of the class
+
+ Address of the WebDriver Server
+ The timeout within which the server must respond.
+
+ if the KeepAlive header should be sent
+ with HTTP requests; otherwise, .
+
+
+
+ Gets the repository of objects containin information about commands.
+
+
+
+
+ Gets or sets an object to be used to proxy requests
+ between this and the remote end WebDriver
+ implementation.
+
+
+
+
+ Gets or sets a value indicating whether keep-alive is enabled for HTTP
+ communication between this and the
+ remote end WebDriver implementation.
+
+
+
+
+ Executes a command
+
+ The command you wish to execute
+ A response from the browser
+
+
+
+ Raises the event.
+
+ A that contains the event data.
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Releases the unmanaged resources used by the and
+ optionally releases the managed resources.
+
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Provides a way to send commands to the remote server
+
+
+
+
+ Gets the repository of objects containin information about commands.
+
+
+
+
+ Executes a command
+
+ The command you wish to execute
+ A response from the browser
+
+
+
+ Provides a way to start a server that understands remote commands
+
+
+
+
+ Starts the server.
+
+
+
+
+ Interface indicating the driver has a Session ID.
+
+
+
+
+ Gets the session ID of the current session.
+
+
+
+
+ Provides a way to convert a Char array to JSON
+
+
+
+
+ Checks if the object can be converted
+
+ Type of the object to see if can be converted
+ True if can be converted else false
+
+
+
+ Writes the Object to JSON
+
+ A JSON Writer object
+ Object to be converted
+ JSON Serializer object instance
+
+
+
+ Method not implemented
+
+ JSON Reader instance
+ Object type being read
+ Existing Value to be read
+ JSON Serializer instance
+ Object from JSON
+
+
+
+ Converts the response to JSON
+
+
+
+
+ Checks if the object can be converted
+
+ The object to be converted
+ True if it can be converted or false if can't be
+
+
+
+ Process the reader to return an object from JSON
+
+ A JSON reader
+ Type of the object
+ The existing value of the object
+ JSON Serializer
+ Object created from JSON
+
+
+
+ Writes objects to JSON. Currently not implemented
+
+ JSON Writer Object
+ Value to be written
+ JSON Serializer
+
+
+
+ Represents a file detector for determining whether a file
+ must be uploaded to a remote server.
+
+
+
+
+ Returns a value indicating whether a specified key sequence represents
+ a file name and path.
+
+ The sequence to test for file existence.
+
+ if the key sequence represents a file; otherwise, .
+
+
+
+ Class to Create the capabilities of the browser you require for .
+ If you wish to use default values use the static methods
+
+
+
+
+ Prevents a default instance of the class.
+
+
+
+
+ Gets the browser name
+
+
+
+
+ Gets or sets the platform
+
+
+
+
+ Gets the browser version
+
+
+
+
+ Gets or sets a value indicating whether the browser accepts SSL certificates.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if the browser has the capability; otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set on the browser.
+
+
+
+ Converts the object to a .
+
+ The containing the capabilities.
+
+
+
+ Return HashCode for the DesiredCapabilities that has been created
+
+ Integer of HashCode generated
+
+
+
+ Return a string of capabilities being used
+
+ String of capabilities being used
+
+
+
+ Compare two DesiredCapabilities and will return either true or false
+
+ DesiredCapabilities you wish to compare
+ true if they are the same or false if they are not
+
+
+
+ Defines the interface through which the user can manipulate JavaScript alerts.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the alerts will be managed.
+
+
+
+ Gets the text of the alert.
+
+
+
+
+ Dismisses the alert.
+
+
+
+
+ Accepts the alert.
+
+
+
+
+ Sends keys to the alert.
+
+ The keystrokes to send.
+
+
+
+ Sets the user name and password in an alert prompting for credentials.
+
+ The user name to set.
+ The password to set.
+
+
+
+ Defines the interface through which the user can manipulate application cache.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the application cache will be managed.
+
+
+
+ Gets the current state of the application cache.
+
+
+
+
+ Defines an interface allowing the user to manipulate cookies on the current page.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The driver that is currently in use
+
+
+
+ Gets all cookies defined for the current page.
+
+
+
+
+ Method for creating a cookie in the browser
+
+
+ that represents a cookie in the browser
+
+
+
+ Delete the cookie by passing in the name of the cookie
+
+ The name of the cookie that is in the browser
+
+
+
+ Delete a cookie in the browser by passing in a copy of a cookie
+
+ An object that represents a copy of the cookie that needs to be deleted
+
+
+
+ Delete All Cookies that are present in the browser
+
+
+
+
+ Method for returning a getting a cookie by name
+
+ name of the cookie that needs to be returned
+ A Cookie from the name
+
+
+
+ Method for getting a Collection of Cookies that are present in the browser
+
+ ReadOnlyCollection of Cookies in the browser
+
+
+
+ Defines the interface through which the user can discover where an element is on the screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to be located.
+
+
+
+ Gets the location of an element in absolute screen coordinates.
+
+
+
+
+ Gets the location of an element relative to the origin of the view port.
+
+
+
+
+ Gets the location of an element's position within the HTML DOM.
+
+
+
+
+ Gets a locator providing a user-defined location for this element.
+
+
+
+
+ Defines the interface through which the user can execute advanced keyboard interactions.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the keyboard will be managed.
+
+
+
+ Sends a sequence of keystrokes to the target.
+
+ A string representing the keystrokes to send.
+
+
+
+ Presses a key.
+
+ The key value representing the key to press.
+ The key value must be one of the values from the class.
+
+
+
+ Releases a key.
+
+ The key value representing the key to release.
+ The key value must be one of the values from the class.
+
+
+
+ Defines the interface through which the user can manipulate local storage.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the application cache will be managed.
+
+
+
+ Gets the number of items in local storage.
+
+
+
+
+ Returns local storage value given a key.
+
+ The key value for the item in storage.
+ A local storage value given a key, if present, otherwise returns null.
+
+
+
+ Returns a read-only list of local storage keys.
+
+ A read-only list of local storage keys.
+
+
+
+ Sets local storage entry using given key/value pair.
+
+ local storage key
+ local storage value
+
+
+
+ Removes local storage entry for the given key.
+
+ key to be removed from the list
+ Response value for the given key.
+
+
+
+ Removes all entries from the local storage.
+
+
+
+
+ Defines the interface through which the user can manipulate browser location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the application cache will be managed.
+
+
+
+ Gets or sets a value indicating the physical location of the browser.
+
+
+
+
+ Provides a mechanism for examining logs for the driver during the test.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Instance of the driver currently in use
+
+
+
+ Gets the list of available log types for this driver.
+
+
+
+
+ Gets the set of objects for a specified log.
+
+ The log for which to retrieve the log entries.
+ Log types can be found in the class.
+ The list of objects for the specified log.
+
+
+
+ Defines the interface through which the user can execute advanced mouse interactions.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the mouse will be managed.
+
+
+
+ Clicks at a set of coordinates using the primary mouse button.
+
+ An describing where to click.
+
+
+
+ Double-clicks at a set of coordinates.
+
+ A describing where to double-click.
+
+
+
+ Presses the primary mouse button at a set of coordinates.
+
+ A describing where to press the mouse button down.
+
+
+
+ Releases the primary mouse button at a set of coordinates.
+
+ A describing where to release the mouse button.
+
+
+
+ Moves the mouse to the specified set of coordinates.
+
+ A describing where to move the mouse to.
+
+
+
+ Moves the mouse to the specified set of coordinates.
+
+ A describing where to click.
+ A horizontal offset from the coordinates specified in .
+ A vertical offset from the coordinates specified in .
+
+
+
+ Clicks at a set of coordinates using the secondary mouse button.
+
+ A describing where to click.
+
+
+
+ Provides a mechanism for Navigating with the driver.
+
+
+
+
+ Initializes a new instance of the class
+
+ Driver in use
+
+
+
+ Move the browser back
+
+
+
+
+ Move the browser forward
+
+
+
+
+ Navigate to a url for your test
+
+ String of where you want the browser to go to
+
+
+
+ Navigate to a url for your test
+
+ Uri object of where you want the browser to go to
+
+
+
+ Refresh the browser
+
+
+
+
+ Provides a mechanism for setting options needed for the driver during the test.
+
+
+
+
+ Initializes a new instance of the class
+
+ Instance of the driver currently in use
+
+
+
+ Gets an object allowing the user to manipulate cookies on the page.
+
+
+
+
+ Gets an object allowing the user to manipulate the currently-focused browser window.
+
+ "Currently-focused" is defined as the browser window having the window handle
+ returned when IWebDriver.CurrentWindowHandle is called.
+
+
+
+ Gets an object allowing the user to examine the logs of the current driver instance.
+
+
+
+
+ Provides access to the timeouts defined for this driver.
+
+ An object implementing the interface.
+
+
+
+ Defines the interface through which the user can manipulate session storage.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The driver instance.
+
+
+
+ Gets the number of items in session storage.
+
+
+
+
+ Returns session storage value given a key.
+
+ The key of the item in storage.
+ A session storage value given a key, if present, otherwise return null.
+
+
+
+ Returns a read-only list of session storage keys.
+
+ A read-only list of session storage keys.
+
+
+
+ Sets session storage entry using given key/value pair.
+
+ Session storage key
+ Session storage value
+
+
+
+ Removes session storage entry for the given key.
+
+ key to be removed from the list
+ Response value for the given key.
+
+
+
+ Removes all entries from the session storage.
+
+
+
+
+ Provides a mechanism for finding elements on the page with locators.
+
+
+
+
+ Initializes a new instance of the class
+
+ The driver that is currently in use
+
+
+
+ Move to a different frame using its index
+
+ The index of the
+ A WebDriver instance that is currently in use
+
+
+
+ Move to different frame using its name
+
+ name of the frame
+ A WebDriver instance that is currently in use
+
+
+
+ Move to a frame element.
+
+ a previously found FRAME or IFRAME element.
+ A WebDriver instance that is currently in use.
+
+
+
+ Select the parent frame of the currently selected frame.
+
+ An instance focused on the specified frame.
+
+
+
+ Change to the Window by passing in the name
+
+ Window handle or name of the window that you wish to move to
+ A WebDriver instance that is currently in use
+
+
+
+ Change the active frame to the default
+
+ Element of the default
+
+
+
+ Finds the active element on the page and returns it
+
+ Element that is active
+
+
+
+ Switches to the currently active modal dialog for this particular driver instance.
+
+ A handle to the dialog.
+
+
+
+ Defines the interface through which the user can define timeouts.
+
+
+
+
+ Initializes a new instance of the class
+
+ The driver that is currently in use
+
+
+
+ Gets or sets the implicit wait timeout, which is the amount of time the
+ driver should wait when searching for an element if it is not immediately
+ present.
+
+
+ When searching for a single element, the driver should poll the page
+ until the element has been found, or this timeout expires before throwing
+ a . When searching for multiple elements,
+ the driver should poll the page until at least one element has been found
+ or this timeout has expired.
+
+ Increasing the implicit wait timeout should be used judiciously as it
+ will have an adverse effect on test run time, especially when used with
+ slower location strategies like XPath.
+
+
+
+
+ Gets or sets the asynchronous script timeout, which is the amount
+ of time the driver should wait when executing JavaScript asynchronously.
+ This timeout only affects the
+ method.
+
+
+
+
+ Gets or sets the page load timeout, which is the amount of time the driver
+ should wait for a page to load when setting the
+ property.
+
+
+
+
+ Defines the interface through which the user can execute advanced touch screen interactions.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the touch screen will be managed.
+
+
+
+ Allows the execution of single tap on the screen, analogous to click using a Mouse.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Allows the execution of the gesture 'down' on the screen. It is typically the first of a
+ sequence of touch gestures.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Allows the execution of the gesture 'up' on the screen. It is typically the last of a
+ sequence of touch gestures.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Allows the execution of the gesture 'move' on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Creates a scroll gesture that starts on a particular screen location.
+
+ The object representing the location on the screen
+ where the scroll starts, usually an .
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Creates a scroll gesture for a particular x and y offset.
+
+ The horizontal offset relative to the view port.
+ The vertical offset relative to the view port.
+
+
+
+ Allows the execution of double tap on the screen, analogous to click using a Mouse.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Allows the execution of a long press gesture on the screen.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Creates a flick gesture for the current view.
+
+ The horizontal speed in pixels per second.
+ The vertical speed in pixels per second.
+
+
+
+ Creates a flick gesture for the current view starting at a specific location.
+
+ The object representing the location on the screen
+ where the scroll starts, usually an .
+ The x offset relative to the viewport.
+ The y offset relative to the viewport.
+ The speed in pixels per second.
+
+
+
+ Provides a way to use the driver through
+
+ ///
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new RemoteWebDriver(new Uri("http://127.0.0.1:4444/wd/hub"),DesiredCapabilities.InternetExplorer());
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ }
+ }
+
+
+
+ The default command timeout for HTTP requests in a RemoteWebDriver instance.
+
+
+
+
+ Initializes a new instance of the class. This constructor defaults proxy to http://127.0.0.1:4444/wd/hub
+
+ An object containing the desired capabilities of the browser.
+
+
+
+ Initializes a new instance of the class. This constructor defaults proxy to http://127.0.0.1:4444/wd/hub
+
+ An object containing the desired capabilities of the browser.
+
+
+
+ Initializes a new instance of the class. This constructor defaults proxy to http://127.0.0.1:4444/wd/hub
+
+ URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
+ An object containing the desired capabilities of the browser.
+
+
+
+ Initializes a new instance of the class
+
+ URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
+ An object containing the desired capabilities of the browser.
+
+
+
+ Initializes a new instance of the class using the specified remote address, desired capabilities, and command timeout.
+
+ URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
+ An object containing the desired capabilities of the browser.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class
+
+ An object which executes commands for the driver.
+ An object containing the desired capabilities of the browser.
+
+
+
+ Gets or sets the URL the browser is currently displaying.
+
+
+
+
+
+
+
+ Gets the title of the current browser window.
+
+
+
+
+ Gets the source of the page last loaded by the browser.
+
+
+
+
+ Gets the current window handle, which is an opaque handle to this
+ window that uniquely identifies it within this driver instance.
+
+
+
+
+ Gets the window handles of open browser windows.
+
+
+
+
+ Gets an object for sending keystrokes to the browser.
+
+
+
+
+ Gets an object for sending mouse commands to the browser.
+
+
+
+
+ Gets a value indicating whether web storage is supported for this driver.
+
+
+
+
+ Gets an object for managing web storage.
+
+
+
+
+ Gets a value indicating whether manipulating the application cache is supported for this driver.
+
+
+
+
+ Gets an object for managing application cache.
+
+
+
+
+ Gets a value indicating whether manipulating geolocation is supported for this driver.
+
+
+
+
+ Gets an object for managing browser location.
+
+
+
+
+ Gets the capabilities that the RemoteWebDriver instance is currently using
+
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+
+
+
+ Gets the for the current session of this driver.
+
+
+
+
+ Gets a value indicating whether this object is a valid action executor.
+
+
+
+
+ Gets a value indicating whether or not the driver is compliant with the W3C WebDriver specification.
+
+
+
+
+ Gets the which executes commands for this driver.
+
+
+
+
+ Gets or sets the factory object used to create instances of
+ or its subclasses.
+
+
+
+
+ Finds the first element in the page that matches the object
+
+ By mechanism to find the object
+ IWebElement object so that you can interact with that object
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ IWebElement elem = driver.FindElement(By.Name("q"));
+
+
+
+
+
+ Finds the elements on the page by using the object and returns a ReadOnlyCollection of the Elements on the page
+
+ By mechanism to find the element
+ ReadOnlyCollection of IWebElement
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ ReadOnlyCollection]]> classList = driver.FindElements(By.ClassName("class"));
+
+
+
+
+
+ Closes the Browser
+
+
+
+
+ Close the Browser and Dispose of WebDriver
+
+
+
+
+ Method For getting an object to set the Speed
+
+ Returns an IOptions object that allows the driver to set the speed and cookies and getting cookies
+
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ driver.Manage().GetCookies();
+
+
+
+
+
+ Method to allow you to Navigate with WebDriver
+
+ Returns an INavigation Object that allows the driver to navigate in the browser
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+
+
+
+
+
+ Method to give you access to switch frames and windows
+
+ Returns an Object that allows you to Switch Frames and Windows
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ driver.SwitchTo().Frame("FrameName");
+
+
+
+
+
+ Executes JavaScript in the context of the currently selected frame or window
+
+ The JavaScript code to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+
+ Executes JavaScript asynchronously in the context of the currently selected frame or window.
+
+ The JavaScript code to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+
+ Finds the first element in the page that matches the ID supplied
+
+ ID of the element
+ IWebElement object so that you can interact with that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementById("id")
+
+
+
+
+
+ Finds the first element in the page that matches the ID supplied
+
+ ID of the Element
+ ReadOnlyCollection of Elements that match the object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsById("id")
+
+
+
+
+
+ Finds the first element in the page that matches the CSS Class supplied
+
+ className of the
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementByClassName("classname")
+
+
+
+
+
+ Finds a list of elements that match the class name supplied
+
+ CSS class Name on the element
+ ReadOnlyCollection of IWebElement object so that you can interact with those objects
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByClassName("classname")
+
+
+
+
+
+ Finds the first of elements that match the link text supplied
+
+ Link text of element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByLinkText("linktext")
+
+
+
+
+
+ Finds a list of elements that match the link text supplied
+
+ Link text of element
+ ReadOnlyCollection]]> object so that you can interact with those objects
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByClassName("classname")
+
+
+
+
+
+ Finds the first of elements that match the part of the link text supplied
+
+ part of the link text
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByPartialLinkText("partOfLink")
+
+
+
+
+
+ Finds a list of elements that match the class name supplied
+
+ part of the link text
+ ReadOnlyCollection]]> objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByPartialLinkText("partOfTheLink")
+
+
+
+
+
+ Finds the first of elements that match the name supplied
+
+ Name of the element on the page
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ elem = driver.FindElementsByName("name")
+
+
+
+
+
+ Finds a list of elements that match the name supplied
+
+ Name of element
+ ReadOnlyCollect of IWebElement objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByName("name")
+
+
+
+
+
+ Finds the first of elements that match the DOM Tag supplied
+
+ DOM tag Name of the element being searched
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByTagName("tag")
+
+
+
+
+
+ Finds a list of elements that match the DOM Tag supplied
+
+ DOM tag Name of element being searched
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByTagName("tag")
+
+
+
+
+
+ Finds the first of elements that match the XPath supplied
+
+ xpath to the element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByXPath("//table/tbody/tr/td/a");
+
+
+
+
+
+ Finds a list of elements that match the XPath supplied
+
+ xpath to the element
+ ReadOnlyCollection of IWebElement objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByXpath("//tr/td/a")
+
+
+
+
+
+ Finds the first element matching the specified CSS selector.
+
+ The CSS selector to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified CSS selector.
+
+ The CSS selector to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Gets a object representing the image of the page on the screen.
+
+ A object containing the image.
+
+
+
+ Dispose the RemoteWebDriver Instance
+
+
+
+
+ Performs the specified list of actions with this action executor.
+
+ The list of action sequences to perform.
+
+
+
+ Resets the input state of the action executor.
+
+
+
+
+ Escapes invalid characters in a CSS selector.
+
+ The selector to escape.
+ The selector with invalid characters escaped.
+
+
+
+ Executes commands with the driver
+
+ Command that needs executing
+ Parameters needed for the command
+ WebDriver Response
+
+
+
+ Find the element in the response
+
+ Response from the browser
+ Element from the page
+
+
+
+ Finds the elements that are in the response
+
+ Response from the browser
+ Collection of elements
+
+
+
+ Stops the client from running
+
+ if its in the process of disposing
+
+
+
+ Starts a session with the driver
+
+ Capabilities of the browser
+
+
+
+ Gets the capabilities as a dictionary supporting legacy drivers.
+
+ The dictionary to return.
+ A Dictionary consisting of the capabilities requested.
+ This method is only transitional. Do not rely on it. It will be removed
+ once browser driver capability formats stabilize.
+
+
+
+ Gets the capabilities as a dictionary.
+
+ The dictionary to return.
+ A Dictionary consisting of the capabilities requested.
+ This method is only transitional. Do not rely on it. It will be removed
+ once browser driver capability formats stabilize.
+
+
+
+ Executes a command with this driver .
+
+ A value representing the command to execute.
+ A containing the names and values of the parameters of the command.
+ A containing information about the success or failure of the command and any data returned by the command.
+
+
+
+ Starts the command executor, enabling communication with the browser.
+
+
+
+
+ Stops the command executor, ending further communication with the browser.
+
+
+
+
+ Finds an element matching the given mechanism and value.
+
+ The mechanism by which to find the element.
+ The value to use to search for the element.
+ The first matching the given criteria.
+
+
+
+ Finds all elements matching the given mechanism and value.
+
+ The mechanism by which to find the elements.
+ The value to use to search for the elements.
+ A collection of all of the IWebElements matching the given criteria.
+
+
+
+ Executes JavaScript in the context of the currently selected frame or window using a specific command.
+
+ The JavaScript code to execute.
+ The name of the command to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+
+ Converts the arguments to JavaScript objects.
+
+ The arguments.
+ The list of the arguments converted to JavaScript objects.
+
+
+
+ RemoteWebElement allows you to have access to specific items that are found on the page
+
+
+
+
+
+
+ The property name that represents a web element in the wire protocol.
+
+
+
+
+ The property name that represents a web element in the legacy dialect of the wire protocol.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The instance hosting this element.
+ The ID assigned to the element.
+
+
+
+ Gets the used to find this element.
+
+
+
+
+ Gets the tag name of this element.
+
+
+ The property returns the tag name of the
+ element, not the value of the name attribute. For example, it will return
+ "input" for an element specified by the HTML markup <input name="foo" />.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the innerText of this element, without any leading or trailing whitespace,
+ and with other whitespace collapsed.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is enabled.
+
+ The property will generally
+ return for everything except explicitly disabled input elements.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is selected.
+
+ This operation only applies to input elements such as checkboxes,
+ options in a select element and radio buttons.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a object containing the coordinates of the upper-left corner
+ of this element relative to the upper-left corner of the page.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a object containing the height and width of this element.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is displayed.
+
+ The property avoids the problem
+ of having to parse an element's "style" attribute to determine
+ visibility of an element.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the point where the element would be when scrolled into view.
+
+
+
+
+ Gets the coordinates identifying the location of this element using
+ various frames of reference.
+
+
+
+
+ Gets the internal ID of the element.
+
+
+
+
+ Gets the ID of the element
+
+ This property is internal to the WebDriver instance, and is
+ not intended to be used in your code. The element's ID has no meaning
+ outside of internal WebDriver usage, so it would be improper to scope
+ it as public. However, both subclasses of
+ and the parent driver hosting the element have a need to access the
+ internal element ID. Therefore, we have two properties returning the
+ same value, one scoped as internal, the other as protected.
+
+
+
+ Clears the content of this element.
+
+ If this element is a text entry element, the
+ method will clear the value. It has no effect on other elements. Text entry elements
+ are defined as elements with INPUT or TEXTAREA tags.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Simulates typing text into the element.
+
+ The text to type into the element.
+ The text to be typed may include special characters like arrow keys,
+ backspaces, function keys, and so on. Valid special keys are defined in
+ .
+
+ Thrown when the target element is not enabled.
+ Thrown when the target element is not visible.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Submits this element to the web server.
+
+ If this current element is a form, or an element within a form,
+ then this will be submitted to the web server. If this causes the current
+ page to change, then this method will attempt to block until the new page
+ is loaded.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Clicks this element.
+
+
+ Click this element. If the click causes a new page to load, the
+ method will attempt to block until the page has loaded. After calling the
+ method, you should discard all references to this
+ element unless you know that the element and the page will still be present.
+ Otherwise, any further operations performed on this element will have an undefined
+ behavior.
+
+ Thrown when the target element is not enabled.
+ Thrown when the target element is not visible.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of the specified attribute for this element.
+
+ The name of the attribute.
+ The attribute's current value. Returns a if the
+ value is not set.
+ The method will return the current value
+ of the attribute, even if the value has been modified after the page has been
+ loaded. Note that the value of the following attributes will be returned even if
+ there is no explicit attribute on the element:
+ Attribute nameValue returned if not explicitly specifiedValid element typescheckedcheckedCheck BoxselectedselectedOptions in Select elementsdisableddisabledInput and other UI elements
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of a JavaScript property of this element.
+
+ The name JavaScript the JavaScript property to get the value of.
+ The JavaScript property's current value. Returns a if the
+ value is not set or the property does not exist.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of a CSS property of this element.
+
+ The name of the CSS property to get the value of.
+ The value of the specified CSS property.
+ The value returned by the
+ method is likely to be unpredictable in a cross-browser environment.
+ Color values should be returned as hex strings. For example, a
+ "background-color" property set as "green" in the HTML source, will
+ return "#008000" for its value.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Finds all IWebElements within the current context
+ using the given mechanism.
+
+ The locating mechanism to use.
+ A of all WebElements
+ matching the current criteria, or an empty list if nothing matches.
+
+
+
+ Finds the first using the given method.
+
+ The locating mechanism to use.
+ The first matching on the current context.
+ If no element matches the criteria.
+
+
+
+ Finds the first of elements that match the link text supplied
+
+ Link text of element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementByLinkText("linktext")
+
+
+
+
+
+ Finds the first of elements that match the link text supplied
+
+ Link text of element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByLinkText("linktext")
+
+
+
+
+
+ Finds the first element in the page that matches the ID supplied
+
+ ID of the element
+ IWebElement object so that you can interact with that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementById("id")
+
+
+
+
+
+ Finds the first element in the page that matches the ID supplied
+
+ ID of the Element
+ ReadOnlyCollection of Elements that match the object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsById("id")
+
+
+
+
+
+ Finds the first of elements that match the name supplied
+
+ Name of the element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ elem = driver.FindElementsByName("name")
+
+
+
+
+
+ Finds a list of elements that match the name supplied
+
+ Name of element
+ ReadOnlyCollect of IWebElement objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByName("name")
+
+
+
+
+
+ Finds the first of elements that match the DOM Tag supplied
+
+ tag name of the element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByTagName("tag")
+
+
+
+
+
+ Finds a list of elements that match the DOM Tag supplied
+
+ DOM Tag of the element on the page
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByTagName("tag")
+
+
+
+
+
+ Finds the first element in the page that matches the CSS Class supplied
+
+ CSS class name of the element on the page
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementByClassName("classname")
+
+
+
+
+
+ Finds a list of elements that match the class name supplied
+
+ CSS class name of the elements on the page
+ ReadOnlyCollection of IWebElement object so that you can interact with those objects
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByClassName("classname")
+
+
+
+
+
+ Finds the first of elements that match the XPath supplied
+
+ xpath to the element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByXPath("//table/tbody/tr/td/a");
+
+
+
+
+
+ Finds a list of elements that match the XPath supplied
+
+ xpath to element on the page
+ ReadOnlyCollection of IWebElement objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByXpath("//tr/td/a")
+
+
+
+
+
+ Finds the first of elements that match the part of the link text supplied
+
+ part of the link text
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByPartialLinkText("partOfLink")
+
+
+
+
+
+ Finds a list of elements that match the link text supplied
+
+ part of the link text
+ ReadOnlyCollection]]> objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByPartialLinkText("partOfTheLink")
+
+
+
+
+
+ Finds the first element matching the specified CSS selector.
+
+ The id to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified CSS selector.
+
+ The CSS selector to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Gets a object representing the image of this element on the screen.
+
+ A object containing the image.
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Method to get the hash code of the element
+
+ Integer of the hash code for the element
+
+
+
+ Compares if two elements are equal
+
+ Object to compare against
+ A boolean if it is equal or not
+
+
+
+ Converts an object into an object that represents an element for the wire protocol.
+
+ A that represents an element in the wire protocol.
+
+
+
+ Finds a child element matching the given mechanism and value.
+
+ The mechanism by which to find the element.
+ The value to use to search for the element.
+ The first matching the given criteria.
+
+
+
+ Finds all child elements matching the given mechanism and value.
+
+ The mechanism by which to find the elements.
+ The value to use to search for the elements.
+ A collection of all of the IWebElements matching the given criteria.
+
+
+
+ Executes a command on this element using the specified parameters.
+
+ The to execute against this element.
+ A containing names and values of the parameters for the command.
+ The object containing the result of the command execution.
+
+
+
+ Creates a from a dictionary containing a reference to an element.
+
+ The dictionary containing the element reference.
+ A containing the information from the specified dictionary.
+
+
+
+ Gets a value indicating wether the specified dictionary represents a reference to a web element.
+
+ The dictionary to check.
+
+ if the dictionary contains an element reference; otherwise, .
+
+
+
+ Provides remote access to the API.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The driver instance.
+
+
+
+ Gets the local storage for the site currently opened in the browser.
+
+
+
+
+ Gets the session storage for the site currently opened in the browser.
+
+
+
+
+ Defines the interface through which the user can manipulate the browser window.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Instance of the driver currently in use
+
+
+
+ Gets or sets the position of the browser window relative to the upper-left corner of the screen.
+
+ When setting this property, it should act as the JavaScript window.moveTo() method.
+
+
+
+ Gets or sets the size of the outer browser window, including title bars and window borders.
+
+ When setting this property, it should act as the JavaScript window.resizeTo() method.
+
+
+
+ Maximizes the current window if it is not already maximized.
+
+
+
+
+ Minimizes the current window if it is not already maximized.
+
+
+
+
+ Sets the current window to full screen if it is not already in that state.
+
+
+
+
+ Handles reponses from the browser
+
+
+
+
+ Initializes a new instance of the class
+
+
+
+
+ Initializes a new instance of the class
+
+ Session ID in use
+
+
+
+ Gets or sets the value from JSON.
+
+
+
+
+ Gets or sets the session ID.
+
+
+
+
+ Gets or sets the status value of the response.
+
+
+
+
+ Gets a value indicating whether this response is compliant with the WebDriver specification.
+
+
+
+
+ Returns a new from a JSON-encoded string.
+
+ The JSON string to deserialize into a .
+ A object described by the JSON string.
+
+
+
+ Returns this object as a JSON-encoded string.
+
+ A JSON-encoded string representing this object.
+
+
+
+ Returns the object as a string.
+
+ A string with the Session ID, status value, and the value from JSON.
+
+
+
+ Provides a mechanism for maintaining a session for a test
+
+
+
+
+ Initializes a new instance of the class
+
+ Key for the session in use
+
+
+
+ Get the value of the key
+
+ The key in use
+
+
+
+ Get the hash code of the key
+
+ The hash code of the key
+
+
+
+ Compares two Sessions
+
+ Session to compare
+ True if they are equal or False if they are not
+
+
+
+ Gives properties to get a stack trace
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the given property values.
+
+ A containing the names and values for the properties of this .
+
+
+
+ Gets or sets the value of the filename in the stack
+
+
+
+
+ Gets or sets the value of the Class name in the stack trace
+
+
+
+
+ Gets or sets the line number
+
+
+
+
+ Gets or sets the Method name in the stack trace
+
+
+
+
+ Gets a string representation of the object.
+
+ A string representation of the object.
+
+
+
+ Holds the information about all commands specified by the JSON wire protocol.
+ This class cannot be inherited, as it is intended to be a singleton, and
+ allowing subclasses introduces the possibility of multiple instances.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the level of the W3C WebDriver specification that this repository supports.
+
+
+
+
+ Initializes the dictionary of commands for the CommandInfoRepository
+
+
+
+
+ Represents an error condition from a remote end using the W3C specification
+ dialect of the wire protocol.
+
+
+
+
+ Represents the element click intercepted error.
+
+
+
+
+ Represents the element not selectable error.
+
+
+
+
+ Represents the element not interactable error.
+
+
+
+
+ Represents the element not visible error.
+
+ TODO: Remove this string; it is no longer valid in the specification.
+
+
+
+ Represents the insecure certificate error.
+
+
+
+
+ Represents the invalid argument error.
+
+
+
+
+ Represents the invalid cookie domain error.
+
+
+
+
+ Represents the invalid coordinates error.
+
+
+
+
+ Represents the invalid element coordinates error.
+
+ TODO: Remove this string; it is no longer valid in the specification.
+
+
+
+ Represents the invalid element state error.
+
+
+
+
+ Represents the invalid selector error.
+
+
+
+
+ Represents the invalid session ID error.
+
+
+
+
+ Represents the unhandled JavaScript error.
+
+
+
+
+ Represents the move target out of bounds error.
+
+
+
+
+ Represents the no such alert error.
+
+
+
+
+ Represents the no such cookie error.
+
+
+
+
+ Represents the no such element error.
+
+
+
+
+ Represents the no such alert frame.
+
+
+
+
+ Represents the no such alert window.
+
+
+
+
+ Represents the script timeout error.
+
+
+
+
+ Represents the session not created error.
+
+
+
+
+ Represents the stale element reference error.
+
+
+
+
+ Represents the timeout error.
+
+
+
+
+ Represents the unable to set cookie error.
+
+
+
+
+ Represents the unable to capture screen error.
+
+
+
+
+ Represents the unexpected alert open error.
+
+
+
+
+ Represents the unknown command error.
+
+
+
+
+ Represents an unknown error.
+
+
+
+
+ Represents the unknown method error.
+
+
+
+
+ Represents the unsupported operation error.
+
+
+
+
+ Converts a string error to a value.
+
+ The error string to convert.
+ The converted value.
+
+
+
+ Holds the information about all commands specified by the JSON wire protocol.
+ This class cannot be inherited, as it is intended to be a singleton, and
+ allowing subclasses introduces the possibility of multiple instances.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the level of the W3C WebDriver specification that this repository supports.
+
+
+
+
+ Initializes the dictionary of commands for the CommandInfoRepository
+
+
+
+
+ Exposes the service provided by a native WebDriver server executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the directory containing the executable providing the service to drive the browser.
+ The port on which the driver executable should listen.
+ The file name of the driver service executable.
+ A URL at which the driver service executable may be downloaded.
+
+ If the path specified is or an empty string.
+
+
+ If the specified driver service executable does not exist in the specified directory.
+
+
+
+
+ Gets the Uri of the service.
+
+
+
+
+ Gets or sets the host name of the service. Defaults to "localhost."
+
+
+ Most driver service executables do not allow connections from remote
+ (non-local) machines. This property can be used as a workaround so
+ that an IP address (like "127.0.0.1" or "::1") can be used instead.
+
+
+
+
+ Gets or sets the port of the service.
+
+
+
+
+ Gets or sets a value indicating whether the initial diagnostic information is suppressed
+ when starting the driver server executable. Defaults to , meaning
+ diagnostic information should be shown by the driver server executable.
+
+
+
+
+ Gets a value indicating whether the service is running.
+
+
+
+
+ Gets or sets a value indicating whether the command prompt window of the service should be hidden.
+
+
+
+
+ Gets the process ID of the running driver service executable. Returns 0 if the process is not running.
+
+
+
+
+ Gets the executable file name of the driver service.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Gets a value indicating the time to wait for an initial connection before timing out.
+
+
+
+
+ Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
+
+
+
+
+ Gets a value indicating whether the service has a shutdown API that can be called to terminate
+ it gracefully before forcing a termination.
+
+
+
+
+ Gets a value indicating whether the service is responding to HTTP requests.
+
+
+
+
+ Releases all resources associated with this .
+
+
+
+
+ Starts the DriverService.
+
+
+
+
+ Finds the specified driver service executable.
+
+ The file name of the executable to find.
+ A URL at which the driver service executable may be downloaded.
+ The directory containing the driver service executable.
+
+ If the specified driver service executable does not exist in the current directory or in a directory on the system path.
+
+
+
+
+ Releases all resources associated with this .
+
+
+ if the Dispose method was explicitly called; otherwise, .
+
+
+
+ Stops the DriverService.
+
+
+
+
+ Waits until a the service is initialized, or the timeout set
+ by the property is reached.
+
+
+ if the service is properly started and receiving HTTP requests;
+ otherwise; .
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Provides a mechanism to write tests against Edge
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified options.
+
+ The to be used with the Edge driver.
+
+
+
+ Initializes a new instance of the class using the specified driver service.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing EdgeDriver.exe.
+
+ The full path to the directory containing EdgeDriver.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing EdgeDriver.exe and options.
+
+ The full path to the directory containing EdgeDriver.exe.
+ The to be used with the Edge driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing EdgeDriver.exe, options, and command timeout.
+
+ The full path to the directory containing EdgeDriver.exe.
+ The to be used with the Edge driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use.
+ The to be used with the Edge driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Exposes the service provided by the native MicrosoftWebDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the EdgeDriver executable.
+ The file name of the EdgeDriver executable.
+ The port on which the EdgeDriver executable should listen.
+
+
+
+ Gets or sets the value of the host adapter on which the Edge driver service should listen for connections.
+
+
+
+
+ Gets or sets the value of the package the Edge driver service will launch and automate.
+
+
+
+
+ Gets or sets a value indicating whether the service should use verbose logging.
+
+
+
+
+ Gets or sets a value indicating whether the instance
+ should use the a protocol dialect compliant with the W3C WebDriver Specification.
+
+
+ Setting this property to a non- value for driver
+ executables matched to versions of Windows before the 2018 Fall Creators
+ Update will result in a the driver executable shutting down without
+ execution, and all commands will fail. Do not set this property unless
+ you are certain your version of the MicrosoftWebDriver.exe supports the
+ --w3c and --jwp command-line arguments.
+
+
+
+
+ Gets a value indicating whether the service has a shutdown API that can be called to terminate
+ it gracefully before forcing a termination.
+
+
+
+
+ Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the EdgeDriverService.
+
+ A EdgeDriverService that implements default settings.
+
+
+
+ Creates a default instance of the EdgeDriverService using a specified path to the EdgeDriver executable.
+
+ The directory containing the EdgeDriver executable.
+ A EdgeDriverService using a random port.
+
+
+
+ Creates a default instance of the EdgeDriverService using a specified path to the EdgeDriver executable with the given name.
+
+ The directory containing the EdgeDriver executable.
+ The name of the EdgeDriver executable file.
+ A EdgeDriverService using a random port.
+
+
+
+ Creates a default instance of the EdgeDriverService using a specified path to the EdgeDriver executable with the given name and listening port.
+
+ The directory containing the EdgeDriver executable.
+ The name of the EdgeDriver executable file
+ The port number on which the driver will listen
+ A EdgeDriverService using the specified port.
+
+
+
+ Specifies the behavior of waiting for page loads in the Edge driver.
+
+
+
+
+ Indicates the behavior is not set.
+
+
+
+
+ Waits for pages to load and ready state to be 'complete'.
+
+
+
+
+ Waits for pages to load and for ready state to be 'interactive' or 'complete'.
+
+
+
+
+ Does not wait for pages to load, returning immediately.
+
+
+
+
+ Class to manage options specific to
+
+
+ EdgeOptions options = new EdgeOptions();
+
+
+ For use with EdgeDriver:
+
+
+ EdgeDriver driver = new EdgeDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Gets or sets a value indicating whether the browser should be launched using
+ InPrivate browsing.
+
+
+
+
+ Gets or sets the URL of the page with which the browser will be navigated to on launch.
+
+
+
+
+ Adds a path to an extension that is to be used with the Edge driver.
+
+ The full path and file name of the extension.
+
+
+
+ Adds a list of paths to an extensions that are to be used with the Edge driver.
+
+ An array of full paths with file names of extensions to add.
+
+
+
+ Adds a list of paths to an extensions that are to be used with the Edge driver.
+
+ An of full paths with file names of extensions to add.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Edge driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling where
+ has already been added will overwrite the existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for Edge with these options included as
+ capabilities. This copies the options. Further changes will not be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for Edge with these options.
+
+
+
+ Provides a mechanism to get elements off the page for test
+
+
+
+
+ Initializes a new instance of the class
+
+ Driver in use
+ Id of the element
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Represents the binary associated with Firefox.
+
+ The class is responsible for instantiating the
+ Firefox process, and the operating system environment in which it runs.
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class located at a specific file location.
+
+ Full path and file name to the Firefox executable.
+
+
+
+ Gets or sets the timeout to wait for Firefox to be available for command execution.
+
+
+
+
+ Gets the associated with this .
+
+
+
+
+ Gets a value indicating whether the current operating system is Linux.
+
+
+
+
+ Gets a containing string key-value pairs
+ representing any operating system environment variables beyond the defaults.
+
+
+
+
+ Starts Firefox using the specified profile and command-line arguments.
+
+ The to use with this instance of Firefox.
+ The command-line arguments to use in starting Firefox.
+
+
+
+ Sets a variable to be used in the Firefox execution environment.
+
+ The name of the environment variable to set.
+ The value of the environment variable to set.
+
+
+
+ Waits for the process to complete execution.
+
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Returns a String that represents the current Object.
+
+ A String that represents the current Object.
+
+
+
+ Starts the Firefox process.
+
+
+
+
+ Releases the unmanaged resources used by the and optionally
+ releases the managed resources.
+
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Provides a way to access Firefox to run tests.
+
+
+ When the FirefoxDriver object has been instantiated the browser will load. The test can then navigate to the URL under test and
+ start your test.
+
+ In the case of the FirefoxDriver, you can specify a named profile to be used, or you can let the
+ driver create a temporary, anonymous profile. A custom extension allowing the driver to communicate
+ to the browser will be installed into the profile.
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new FirefoxDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ }
+ }
+
+
+
+
+
+ The name of the ICapabilities setting to use to define a custom Firefox profile.
+
+
+
+
+ The name of the ICapabilities setting to use to define a custom location for the
+ Firefox executable.
+
+
+
+
+ The default port on which to communicate with the Firefox extension.
+
+
+
+
+ Indicates whether native events is enabled by default for this platform.
+
+
+
+
+ Indicates whether the driver will accept untrusted SSL certificates.
+
+
+
+
+ Indicates whether the driver assume the issuer of untrusted certificates is untrusted.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified options. Uses the Mozilla-provided Marionette driver implementation.
+
+ The to be used with the Firefox driver.
+
+
+
+ Initializes a new instance of the class using the specified driver service. Uses the Mozilla-provided Marionette driver implementation.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing geckodriver.exe.
+
+ The full path to the directory containing geckodriver.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing geckodriver.exe and options.
+
+ The full path to the directory containing geckodriver.exe.
+ The to be used with the Firefox driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing geckodriver.exe, options, and command timeout.
+
+ The full path to the directory containing geckodriver.exe.
+ The to be used with the Firefox driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified options, driver service, and timeout. Uses the Mozilla-provided Marionette driver implementation.
+
+ The to use.
+ The to be used with the Firefox driver.
+
+
+
+ Initializes a new instance of the class using the specified options, driver service, and timeout. Uses the Mozilla-provided Marionette driver implementation.
+
+ The to use.
+ The to be used with the Firefox driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The Firefox driver does not allow a file detector to be set,
+ as the server component of the Firefox driver only allows uploads from
+ the local computer environment. Attempting to set this property has no
+ effect, but does not throw an exception. If you are attempting to run
+ the Firefox driver remotely, use in
+ conjunction with a standalone WebDriver server.
+
+
+
+ Gets a value indicating whether the Firefox driver instance uses
+ Mozilla's Marionette implementation. This is a temporary property
+ and will be removed when Marionette is available for the release
+ channel of Firefox.
+
+
+
+
+ In derived classes, the method prepares the environment for test execution.
+
+
+
+
+ Provides a way of executing Commands using the FirefoxDriver.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The on which to make the connection.
+ The creating the connection.
+ The name of the host on which to connect to the Firefox extension (usually "localhost").
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets the repository of objects containin information about commands.
+
+
+
+
+ Executes a command
+
+ The command you wish to execute
+ A response from the browser
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Releases the unmanaged resources used by the and
+ optionally releases the managed resources.
+
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Represents the valid values of logging levels available with the Firefox driver (geckodriver.exe).
+
+
+
+
+ Represents the Trace value, the most detailed logging level available.
+
+
+
+
+ Represents the Debug value
+
+
+
+
+ Represents the Config value
+
+
+
+
+ Represents the Info value
+
+
+
+
+ Represents the Warn value
+
+
+
+
+ Represents the Error value
+
+
+
+
+ Represents the Fatal value, the least detailed logging level available.
+
+
+
+
+ Represents that the logging value is unspecified, and should be the default level.
+
+
+
+
+ Provides methods for launching Firefox with the WebDriver extension installed.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The on which to make the connection.
+ The creating the connection.
+ The name of the host on which to connect to the Firefox extension (usually "localhost").
+
+
+
+ Gets the for communicating with this server.
+
+
+
+
+ Starts the server.
+
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Releases the unmanaged resources used by the and optionally
+ releases the managed resources.
+
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Exposes the service provided by the native FirefoxDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the Firefox driver executable.
+ The file name of the Firefox driver executable.
+ The port on which the Firefox driver executable should listen.
+
+
+
+ Gets or sets the location of the Firefox binary executable.
+
+
+
+
+ Gets or sets the port used by the driver executable to communicate with the browser.
+
+
+
+
+ Gets or sets the value of the IP address of the host adapter on which the
+ service should listen for connections.
+
+
+
+
+ Gets or sets a value indicating whether to connect to an already-running
+ instance of Firefox.
+
+
+
+
+ Gets or sets a value indicating whether to open the Firefox Browser Toolbox
+ when Firefox is launched.
+
+
+
+
+ Gets a value indicating the time to wait for an initial connection before timing out.
+
+
+
+
+ Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
+
+
+
+
+ Gets a value indicating whether the service has a shutdown API that can be called to terminate
+ it gracefully before forcing a termination.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the FirefoxDriverService.
+
+ A FirefoxDriverService that implements default settings.
+
+
+
+ Creates a default instance of the FirefoxDriverService using a specified path to the Firefox driver executable.
+
+ The directory containing the Firefox driver executable.
+ A FirefoxDriverService using a random port.
+
+
+
+ Creates a default instance of the FirefoxDriverService using a specified path to the Firefox driver executable with the given name.
+
+ The directory containing the Firefox driver executable.
+ The name of the Firefox driver executable file.
+ A FirefoxDriverService using a random port.
+
+
+
+ Returns the Firefox driver filename for the currently running platform
+
+ The file name of the Firefox driver service executable.
+
+
+
+ Provides the ability to install extensions into a .
+
+
+
+
+ Initializes a new instance of the class.
+
+ The name of the file containing the Firefox extension.
+ WebDriver attempts to resolve the parameter
+ by looking first for the specified file in the directory of the calling assembly,
+ then using the full path to the file, if a full path is provided.
+
+
+
+ Initializes a new instance of the class.
+
+ The name of the file containing the Firefox extension.
+ The ID of the resource within the assembly containing the extension
+ if the file is not present in the file system.
+ WebDriver attempts to resolve the parameter
+ by looking first for the specified file in the directory of the calling assembly,
+ then using the full path to the file, if a full path is provided. If the file is
+ not found in the file system, WebDriver attempts to locate a resource in the
+ executing assembly with the name specified by the
+ parameter.
+
+
+
+ Installs the extension into a profile directory.
+
+ The Firefox profile directory into which to install the extension.
+
+
+
+ Class to manage options specific to
+
+ Used with the marionette executable wires.exe.
+
+
+
+ FirefoxOptions options = new FirefoxOptions();
+
+
+ For use with FirefoxDriver:
+
+
+ FirefoxDriver driver = new FirefoxDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class for the given profile and binary.
+
+ The to use in the options.
+ The to use in the options.
+ The to copy into the options.
+
+
+
+ Gets or sets a value indicating whether to use the legacy driver implementation.
+
+
+
+
+ Gets or sets the object to be used with this instance.
+
+
+
+
+ Gets or sets the path and file name of the Firefox browser executable.
+
+
+
+
+ Gets or sets the logging level of the Firefox driver.
+
+
+
+
+ Adds an argument to be used in launching the Firefox browser.
+
+ The argument to add.
+ Arguments must be preceeded by two dashes ("--").
+
+
+
+ Adds a list arguments to be used in launching the Firefox browser.
+
+ An array of arguments to add.
+ Each argument must be preceeded by two dashes ("--").
+
+
+
+ Adds a list arguments to be used in launching the Firefox browser.
+
+ An array of arguments to add.
+ Each argument must be preceeded by two dashes ("--").
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Firefox driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+ Also, by default, calling this method adds capabilities to the options object passed to
+ geckodriver.exe.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Firefox driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+ Indicates whether the capability is to be set as a global
+ capability for the driver instead of a Firefox-specific option.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for Firefox with these options included as
+ capabilities. This does not copy the options. Further changes will be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for Firefox with these options.
+
+
+
+ Provides the ability to edit the preferences associated with a Firefox profile.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using a
+ specific profile directory.
+
+ The directory containing the profile.
+
+
+
+ Initializes a new instance of the class using a
+ specific profile directory.
+
+ The directory containing the profile.
+ Delete the source directory of the profile upon cleaning.
+
+
+
+ Gets or sets the port on which the profile connects to the WebDriver extension.
+
+
+
+
+ Gets the directory containing the profile.
+
+
+
+
+ Gets or sets a value indicating whether to delete this profile after use with
+ the .
+
+
+
+
+ Gets or sets a value indicating whether native events are enabled.
+
+
+
+
+ Gets or sets a value indicating whether to always load the library for allowing Firefox
+ to execute commands without its window having focus.
+
+ The property is only used on Linux.
+
+
+
+ Gets or sets a value indicating whether Firefox should accept SSL certificates which have
+ expired, signed by an unknown authority or are generally untrusted. Set to true
+ by default.
+
+
+
+
+ Gets or sets a value indicating whether Firefox assume untrusted SSL certificates
+ come from an untrusted issuer or are self-signed. Set to true by default.
+
+
+
+ Due to limitations within Firefox, it is easy to find out if a certificate has expired
+ or does not match the host it was served for, but hard to find out if the issuer of the
+ certificate is untrusted. By default, it is assumed that the certificates were not
+ issued from a trusted certificate authority.
+
+
+ If you receive an "untrusted site" prompt it Firefox when using a certificate that was
+ issued by valid issuer, but the certificate has expired or is being served served for
+ a different host (e.g. production certificate served in a testing environment) set this
+ to false.
+
+
+
+
+
+ Converts a base64-encoded string into a .
+
+ The base64-encoded string containing the profile contents.
+ The constructed .
+
+
+
+ Adds a Firefox Extension to this profile
+
+ The path to the new extension
+
+
+
+ Sets a preference in the profile.
+
+ The name of the preference to add.
+ A value to add to the profile.
+
+
+
+ Sets a preference in the profile.
+
+ The name of the preference to add.
+ A value to add to the profile.
+
+
+
+ Sets a preference in the profile.
+
+ The name of the preference to add.
+ A value to add to the profile.
+
+
+
+ Set proxy preferences for this profile.
+
+ The object defining the proxy
+ preferences for the profile.
+
+
+
+ Writes this in-memory representation of a profile to disk.
+
+
+
+
+ Cleans this Firefox profile.
+
+ If this profile is a named profile that existed prior to
+ launching Firefox, the method removes the WebDriver
+ Firefox extension. If the profile is an anonymous profile, the profile
+ is deleted.
+
+
+
+ Converts the profile into a base64-encoded string.
+
+ A base64-encoded string containing the contents of the profile.
+
+
+
+ Adds the WebDriver extension for Firefox to the profile.
+
+
+
+
+ Removes the WebDriver extension for Firefox to the profile, for use with non-legacy
+ FirefoxDriver instances that use geckodriver.
+
+
+
+
+ Internal implementation to set proxy preferences for this profile.
+
+ The object defining the proxy
+ preferences for the profile.
+
+
+
+ Generates a random directory name for the profile.
+
+ A random directory name for the profile.
+
+
+
+ Deletes the lock files for a profile.
+
+
+
+
+ Installs all extensions in the profile in the directory on disk.
+
+
+
+
+ Deletes the cache of extensions for this profile, if the cache exists.
+
+ If the extensions cache does not exist for this profile, the
+ method performs no operations, but
+ succeeds.
+
+
+
+ Writes the user preferences to the profile.
+
+
+
+
+ Reads the existing preferences from the profile.
+
+ A containing key-value pairs representing the preferences.
+ Assumes that we only really care about the preferences, not the comments
+
+
+
+ Sets a preference for a manually specified proxy.
+
+ The protocol for which to set the proxy.
+ The setting for the proxy.
+
+
+
+ Allows the user to enumerate and access existing named Firefox profiles.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets a containing FirefoxProfiles
+ representing the existing named profiles for Firefox.
+
+
+
+
+ Gets a with a given name.
+
+ The name of the profile to get.
+ A with a given name.
+ Returns if no profile with the given name exists.
+
+
+
+ Allows the user to control elements on a page in Firefox.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The instance hosting this element.
+ The ID assigned to the element.
+
+
+
+ Determines whether two instances are equal.
+
+ The to compare with the current .
+
+ if the specified is equal to the
+ current ; otherwise, .
+
+
+
+ Serves as a hash function for a .
+
+ A hash code for the current .
+
+
+
+ Represents the executable file for Firefox.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The path and file name to the Firefox executable.
+
+
+
+ Gets the full path to the executable.
+
+
+
+
+ Sets the library path for the Firefox executable environment.
+
+ The used to execute the binary.
+
+
+
+ Locates the Firefox binary by platform.
+
+ The full path to the binary.
+
+
+
+ Retrieves an environment variable
+
+ Name of the variable.
+ Default value of the variable.
+ The value of the variable. If no variable with that name is set, returns the default.
+
+
+
+ Retrieves the platform specific environment property name which contains the library path.
+
+ The platform specific environment property name which contains the library path.
+
+
+
+ Walk a PATH to locate binaries with a specified name. Binaries will be searched for in the
+ order they are provided.
+
+ The binary names to search for.
+ The first binary found matching that name.
+
+
+
+ Defines the interface through which the mutex port for establishing communication
+ with the WebDriver extension can be locked.
+
+
+
+
+ Locks the mutex port.
+
+ The describing the amount of time to wait for
+ the mutex port to become available.
+
+
+
+ Unlocks the mutex port.
+
+
+
+
+ Parses and reads an INI file.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the .INI file to be read.
+
+
+
+ Gets a containing the names of the sections in the .INI file.
+
+
+
+
+ Gets a value from the .INI file.
+
+ The section in which to find the key-value pair.
+ The key of the key-value pair.
+ The value associated with the given section and key.
+
+
+
+ Provides a mutex-like lock on a socket.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Port to use to acquire the lock.
+ The class will attempt to acquire the
+ specified port number, and wait for it to become free.
+
+
+
+ Locks the mutex port.
+
+ The describing the amount of time to wait for
+ the mutex port to become available.
+
+
+
+ Unlocks the mutex port.
+
+
+
+
+ Releases all resources associated with this
+
+
+
+ Represents the preferences used by a profile in Firefox.
+
+
+
+
+ Initializes a new instance of the class.
+
+ A set of preferences that cannot be modified once set.
+ A set of default preferences.
+
+
+
+ Sets a preference.
+
+ The name of the preference to set.
+ A value give the preference.
+ If the preference already exists in the currently-set list of preferences,
+ the value will be updated.
+
+
+
+ Sets a preference.
+
+ The name of the preference to set.
+ A value give the preference.
+ If the preference already exists in the currently-set list of preferences,
+ the value will be updated.
+
+
+
+ Sets a preference.
+
+ The name of the preference to set.
+ A value give the preference.
+ If the preference already exists in the currently-set list of preferences,
+ the value will be updated.
+
+
+
+ Gets a preference from the list of preferences.
+
+ The name of the preference to retrieve.
+ The value of the preference, or an empty string if the preference is not set.
+
+
+
+ Appends this set of preferences to the specified set of preferences.
+
+ A dictionary containing the preferences to which to
+ append these values.
+ If the preference already exists in ,
+ the value will be updated.
+
+
+
+ Writes the preferences to a file.
+
+ The full path to the file to be written.
+
+
+
+ Represents the application cache status.
+
+
+
+
+ AppCache status is uncached
+
+
+
+
+ AppCache status is idle
+
+
+
+
+ AppCache status is checkint
+
+
+
+
+ AppCache status is downloading
+
+
+
+
+ AppCache status is updated-ready
+
+
+
+
+ AppCache status is obsolete
+
+
+
+
+ Defines an interface allowing the user to access application cache status
+
+
+
+
+ Gets the current state of the application cache.
+
+
+
+
+ Interface allowing the user to determine if the driver instance supports application cache.
+
+
+
+
+ Gets a value indicating whether manipulating the application cache is supported for this driver.
+
+
+
+
+ Gets an object for managing application cache.
+
+
+
+
+ Interface allowing the user to determine if the driver instance supports geolocation.
+
+
+
+
+ Gets a value indicating whether manipulating geolocation is supported for this driver.
+
+
+
+
+ Gets an object for managing browser location.
+
+
+
+
+ Interface allowing the user to determine if the driver instance supports web storage.
+
+
+
+
+ Gets a value indicating whether web storage is supported for this driver.
+
+
+
+
+ Gets an object for managing web storage.
+
+
+
+
+ Represents the local storage for the site currently opened in the browser.
+ Each site has its own separate storage area.
+
+
+
+
+ Gets the number of items in local storage.
+
+
+
+
+ Returns value of the local storage given a key.
+
+ key to for a local storage entry
+ Value of the local storage entry as given a key.
+
+
+
+ Returns the set of keys associated with local storage.
+
+ Returns the set of keys associated with local storage as .
+
+
+
+ Adds key/value pair to local storage.
+
+ storage key
+ storage value
+
+
+
+ Removes key/value pair from local storage.
+
+ key to remove from storage
+ Value from local storage as string for the given key.
+
+
+
+ Clears local storage.
+
+
+
+
+ Interface for location context
+
+
+
+
+ Gets or sets a value indicating the physical location of the browser.
+
+
+
+
+ Represents the session storage for the site currently opened in the browser.
+ Each site has its own separate storage area.
+
+
+
+
+ Gets the number of items in session storage.
+
+
+
+
+ Returns value of the session storage given a key.
+
+ key to for a session storage entry
+ Value of the session storage entry as given a key.
+
+
+
+ Returns the set of keys associated with session storage.
+
+ Returns the set of keys associated with session storage as .
+
+
+
+ Adds key/value pair to session storage.
+
+ storage key
+ storage value
+
+
+
+ Removes key/value pair from session storage.
+
+ key to remove from storage
+ Value from session storage as string for the given key.
+
+
+
+ Clears local storage.
+
+
+
+
+ Represents both local and session storage for the site currently opened in the browser.
+
+
+
+
+ Gets the local storage for the site currently opened in the browser.
+
+
+
+
+ Gets the session storage for the site currently opened in the browser.
+
+
+
+
+ Represents the physical location of the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ latitude for current location
+ longitude for current location
+ altitude for current location
+
+
+
+ Gets the latitude of the current location.
+
+
+
+
+ Gets the longitude of the current location.
+
+
+
+
+ Gets the altitude of the current location.
+
+
+
+
+ Retuns string represenation for current location.
+
+ Returns string reprsentation for current location.
+
+
+
+ Defines the interface through which the user can manipulate JavaScript alerts.
+
+
+
+
+ Gets the text of the alert.
+
+
+
+
+ Dismisses the alert.
+
+
+
+
+ Accepts the alert.
+
+
+
+
+ Sends keys to the alert.
+
+ The keystrokes to send.
+
+
+
+ Sets the user name and password in an alert prompting for credentials.
+
+ The user name to set.
+ The password to set.
+
+
+
+ Interface determining whether the driver implementation allows detection of files
+ when sending keystrokes to a file upload element.
+
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+
+
+
+ Capabilities of the browser that you are going to use
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if the browser has the capability; otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set on the browser.
+
+
+
+ Defines an interface allowing the user to manipulate cookies on the current page.
+
+
+
+
+ Gets all cookies defined for the current page.
+
+
+
+
+ Adds a cookie to the current page.
+
+ The object to be added.
+
+
+
+ Gets a cookie with the specified name.
+
+ The name of the cookie to retrieve.
+ The containing the name. Returns
+ if no cookie with the specified name is found.
+
+
+
+ Deletes the specified cookie from the page.
+
+ The to be deleted.
+
+
+
+ Deletes the cookie with the specified name from the page.
+
+ The name of the cookie to be deleted.
+
+
+
+ Deletes all cookies from the page.
+
+
+
+
+ Provides a way to access Internet Explorer to run your tests by creating a InternetExplorerDriver instance
+
+
+ When the WebDriver object has been instantiated the browser will load. The test can then navigate to the URL under test and
+ start your test.
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new InternetExplorerDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ driver.Dispose();
+ }
+ }
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with the desired
+ options.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified driver service.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing IEDriverServer.exe.
+
+ The full path to the directory containing IEDriverServer.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing IEDriverServer.exe and options.
+
+ The full path to the directory containing IEDriverServer.exe.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing IEDriverServer.exe, options, and command timeout.
+
+ The full path to the directory containing IEDriverServer.exe.
+ The used to initialize the driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified
+ , , and command timeout.
+
+ The to use.
+ The used to initialize the driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The IE driver does not allow a file detector to be set,
+ as the server component of the IE driver (IEDriverServer.exe) only
+ allows uploads from the local computer environment. Attempting to set
+ this property has no effect, but does not throw an exception. If you
+ are attempting to run the IE driver remotely, use
+ in conjunction with a standalone WebDriver server.
+
+
+
+ Gets the capabilities as a dictionary supporting legacy drivers.
+
+ The dictionary to return.
+ A Dictionary consisting of the capabilities requested.
+ This method is only transitional. Do not rely on it. It will be removed
+ once browser driver capability formats stabilize.
+
+
+
+ Represents the valid values of logging levels available with the IEDriverServer.exe.
+
+
+
+
+ Represents the Trace value, the most detailed logging level available.
+
+
+
+
+ Represents the Debug value
+
+
+
+
+ Represents the Info value
+
+
+
+
+ Represents the Warn value
+
+
+
+
+ Represents the Error value
+
+
+
+
+ Represents the Fatal value, the least detailed logging level available.
+
+
+
+
+ Exposes the service provided by the native IEDriverServer executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the IEDriverServer executable.
+ The file name of the IEDriverServer executable.
+ The port on which the IEDriverServer executable should listen.
+
+
+
+ Gets or sets the value of the host adapter on which the IEDriverServer should listen for connections.
+
+
+
+
+ Gets or sets the location of the log file written to by the IEDriverServer.
+
+
+
+
+ Gets or sets the logging level used by the IEDriverServer.
+
+
+
+
+ Gets or sets the path to which the supporting library of the IEDriverServer.exe is extracted.
+ Defaults to the temp directory if this property is not set.
+
+
+ The IEDriverServer.exe requires extraction of a supporting library to perform some of its functions. Setting
+ This library is extracted to the temp directory if this property is not set. If the property is set, it must
+ be set to a valid directory.
+
+
+
+
+ Gets or sets the comma-delimited list of IP addresses that are approved to
+ connect to this instance of the IEDriverServer. Defaults to an empty string,
+ which means only the local loopback address can connect.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the InternetExplorerDriverService.
+
+ A InternetExplorerDriverService that implements default settings.
+
+
+
+ Creates a default instance of the InternetExplorerDriverService using a specified path to the IEDriverServer executable.
+
+ The directory containing the IEDriverServer executable.
+ A InternetExplorerDriverService using a random port.
+
+
+
+ Creates a default instance of the InternetExplorerDriverService using a specified path to the IEDriverServer executable with the given name.
+
+ The directory containing the IEDriverServer executable.
+ The name of the IEDriverServer executable file.
+ A InternetExplorerDriverService using a random port.
+
+
+
+ Specifies the scroll behavior of elements scrolled into view in the IE driver.
+
+
+
+
+ Indicates the behavior is unspecified.
+
+
+
+
+ Scrolls elements to align with the top of the viewport.
+
+
+
+
+ Scrolls elements to align with the bottom of the viewport.
+
+
+
+
+ Class to manage options specific to
+
+
+ InternetExplorerOptions options = new InternetExplorerOptions();
+ options.IntroduceInstabilityByIgnoringProtectedModeSettings = true;
+
+
+ For use with InternetExplorerDriver:
+
+
+ InternetExplorerDriver driver = new InternetExplorerDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Gets the name of the capability used to store IE options in
+ a object.
+
+
+
+
+ Gets or sets a value indicating whether to ignore the settings of the Internet Explorer Protected Mode.
+
+
+
+
+ Gets or sets a value indicating whether to ignore the zoom level of Internet Explorer .
+
+
+
+
+ Gets or sets a value indicating whether to use native events in interacting with elements.
+
+
+
+
+ Gets or sets a value indicating whether to require the browser window to have focus before interacting with elements.
+
+
+
+
+ Gets or sets the initial URL displayed when IE is launched. If not set, the browser launches
+ with the internal startup page for the WebDriver server.
+
+
+ By setting the to
+ and this property to a correct URL, you can launch IE in the Internet Protected Mode zone. This can be helpful
+ to avoid the flakiness introduced by ignoring the Protected Mode settings. Nevertheless, setting Protected Mode
+ zone settings to the same value in the IE configuration is the preferred method.
+
+
+
+
+ Gets or sets the value for describing how elements are scrolled into view in the IE driver. Defaults
+ to scrolling the element to the top of the viewport.
+
+
+
+
+ Gets or sets a value indicating whether to enable persistently sending WM_MOUSEMOVE messages
+ to the IE window during a mouse hover.
+
+
+
+
+ Gets or sets the amount of time the driver will attempt to look for a newly launched instance
+ of Internet Explorer.
+
+
+
+
+ Gets or sets the amount of time the driver will attempt to look for the file selection
+ dialog when attempting to upload a file.
+
+
+
+
+ Gets or sets a value indicating whether to force the use of the Windows CreateProcess API
+ when launching Internet Explorer. The default value is .
+
+
+
+
+ Gets or sets a value indicating whether to force the use of the Windows ShellWindows API
+ when attaching to Internet Explorer. The default value is .
+
+
+
+
+ Gets or sets the command line arguments used in launching Internet Explorer when the
+ Windows CreateProcess API is used. This property only has an effect when the
+ is .
+
+
+
+
+ Gets or sets a value indicating whether to use the supplied
+ settings on a per-process basis, not updating the system installed proxy setting.
+ This property is only valid when setting a , where the
+ property is either ,
+ , or , and is
+ otherwise ignored. Defaults to .
+
+
+
+
+ Gets or sets a value indicating whether to clear the Internet Explorer cache
+ before launching the browser. When set to , clears the
+ system cache for all instances of Internet Explorer, even those already running
+ when the driven instance is launched. Defaults to .
+
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Internet Explorer driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+ Also, by default, calling this method adds capabilities to the options object passed to
+ IEDriverServer.exe.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Internet Explorer driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+ Indicates whether the capability is to be set as a global
+ capability for the driver instead of a IE-specific option.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling where
+ has already been added will overwrite the existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for IE with these options included as
+ capabilities. This copies the options. Further changes will not be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for IE with these options.
+
+
+
+ InternetExplorerWebElement allows you to have access to specific items that are found on the page.
+
+
+
+
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver = new InternetExplorerDriver();
+ InternetExplorerWebElement elem = driver.FindElement(By.Name("q"));
+ elem.SendKeys("Cheese please!");
+ }
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ Driver in use.
+ ID of the element.
+
+
+
+ Defines an object responsible for detecting sequences of keystrokes
+ representing file paths and names.
+
+
+
+
+ Returns a value indicating whether a specified key sequence represents
+ a file name and path.
+
+ The sequence to test for file existence.
+
+ if the key sequence represents a file; otherwise, .
+
+
+
+ Defines the interface through which the user can determine the capabilities of a driver.
+
+
+
+
+ Gets the object describing the driver's capabilities.
+
+
+
+
+ Provides access to input devices for advanced user interactions.
+
+
+
+
+ Gets an object for sending keystrokes to the browser.
+
+
+
+
+ Gets an object for sending mouse commands to the browser.
+
+
+
+
+ Interface implemented by each driver that allows access to touch screen capabilities.
+
+
+
+
+ Gets the device representing the touch screen.
+
+
+
+
+ Defines the interface through which the user can execute JavaScript.
+
+
+
+
+ Executes JavaScript in the context of the currently selected frame or window.
+
+ The JavaScript code to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+ The method executes JavaScript in the context of
+ the currently selected frame or window. This means that "document" will refer
+ to the current document. If the script has a return value, then the following
+ steps will be taken:
+
+
+
+
+ For an HTML element, this method returns a
+
+
+ For a number, a is returned
+
+
+ For a boolean, a is returned
+
+
+ For all other cases a is returned.
+
+
+ For an array,we check the first element, and attempt to return a
+ of that type, following the rules above. Nested lists are not
+ supported.
+
+
+ If the value is null or there is no return value,
+ is returned.
+
+
+
+
+ Arguments must be a number (which will be converted to a ),
+ a , a or a .
+ An exception will be thrown if the arguments do not meet these criteria.
+ The arguments will be made available to the JavaScript via the "arguments" magic
+ variable, as if the function were called via "Function.apply"
+
+
+
+
+
+ Executes JavaScript asynchronously in the context of the currently selected frame or window.
+
+ The JavaScript code to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+
+ Provides methods representing basic keyboard actions.
+
+
+
+
+ Sends a sequence of keystrokes to the target.
+
+ A string representing the keystrokes to send.
+
+
+
+ Presses a key.
+
+ The key value representing the key to press.
+ The key value must be one of the values from the class.
+
+
+
+ Releases a key.
+
+ The key value representing the key to release.
+ The key value must be one of the values from the class.
+
+
+
+ Defines the interface through which the user can discover where an element is on the screen.
+
+
+
+
+ Gets the location of an element on the screen, scrolling it into view
+ if it is not currently on the screen.
+
+
+
+
+ Gets the coordinates identifying the location of this element using
+ various frames of reference.
+
+
+
+
+ Interface allowing handling of driver logs.
+
+
+
+
+ Gets the list of available log types for this driver.
+
+
+
+
+ Gets the set of objects for a specified log.
+
+ The log for which to retrieve the log entries.
+ Log types can be found in the class.
+ The list of objects for the specified log.
+
+
+
+ Provides methods representing basic mouse actions.
+
+
+
+
+ Clicks at a set of coordinates using the primary mouse button.
+
+ An describing where to click.
+
+
+
+ Double-clicks at a set of coordinates.
+
+ A describing where to double-click.
+
+
+
+ Presses the primary mouse button at a set of coordinates.
+
+ A describing where to press the mouse button down.
+
+
+
+ Releases the primary mouse button at a set of coordinates.
+
+ A describing where to release the mouse button.
+
+
+
+ Moves the mouse to the specified set of coordinates.
+
+ A describing where to move the mouse to.
+
+
+
+ Moves the mouse to the specified set of coordinates.
+
+ A describing where to click.
+ A horizontal offset from the coordinates specified in .
+ A vertical offset from the coordinates specified in .
+
+
+
+ Clicks at a set of coordinates using the secondary mouse button.
+
+ A describing where to click.
+
+
+
+ Defines an interface allowing the user to access the browser's history and to
+ navigate to a given URL.
+
+
+
+
+ Move back a single entry in the browser's history.
+
+
+
+
+ Move a single "item" forward in the browser's history.
+
+ Does nothing if we are on the latest page viewed.
+
+
+
+ Load a new web page in the current browser window.
+
+ The URL to load. It is best to use a fully qualified URL
+
+ Calling the method will load a new web page in the current browser window.
+ This is done using an HTTP GET operation, and the method will block until the
+ load is complete. This will follow redirects issued either by the server or
+ as a meta-redirect from within the returned HTML. Should a meta-redirect "rest"
+ for any duration of time, it is best to wait until this timeout is over, since
+ should the underlying page change while your test is executing the results of
+ future calls against this interface will be against the freshly loaded page.
+
+
+
+
+ Load a new web page in the current browser window.
+
+ The URL to load.
+
+ Calling the method will load a new web page in the current browser window.
+ This is done using an HTTP GET operation, and the method will block until the
+ load is complete. This will follow redirects issued either by the server or
+ as a meta-redirect from within the returned HTML. Should a meta-redirect "rest"
+ for any duration of time, it is best to wait until this timeout is over, since
+ should the underlying page change while your test is executing the results of
+ future calls against this interface will be against the freshly loaded page.
+
+
+
+
+ Refreshes the current page.
+
+
+
+
+ Provides methods that allow the creation of action sequences to enable
+ advanced user interactions.
+
+
+
+
+ Adds an action to the built set of actions. Adding an action will
+ add a "tick" to the set of all actions to be executed.
+
+ The action to add to the set of actions
+ A self reference.
+
+
+
+ Adds an action to the built set of actions. Adding an action will
+ add a "tick" to the set of all actions to be executed. Only one action
+ for each input device may be added for a single tick.
+
+ The set actions to add to the existing set of actions.
+ A self reference.
+
+
+
+ Converts the set of actions in this to a .
+
+ A suitable for transmission across the wire.
+ The collection returned is read-only.
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Provides values that indicate from where element offsets for MoveToElement
+ are calculated.
+
+
+
+
+ Offsets are calculated from the top-left corner of the element.
+
+
+
+
+ Offsets are calcuated from the center of the element.
+
+
+
+
+ Provides a mechanism for building advanced interactions with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The object on which the actions built will be performed.
+
+
+
+ Sends a modifier key down message to the browser.
+
+ The key to be sent.
+ A self-reference to this .
+ If the key sent is not is not one
+ of , , ,
+ , ,,
+ ,.
+
+
+
+ Sends a modifier key down message to the specified element in the browser.
+
+ The element to which to send the key command.
+ The key to be sent.
+ A self-reference to this .
+ If the key sent is not is not one
+ of , , ,
+ , ,,
+ ,.
+
+
+
+ Sends a modifier key up message to the browser.
+
+ The key to be sent.
+ A self-reference to this .
+ If the key sent is not is not one
+ of , , ,
+ , ,,
+ ,.
+
+
+
+ Sends a modifier up down message to the specified element in the browser.
+
+ The element to which to send the key command.
+ The key to be sent.
+ A self-reference to this .
+ If the key sent is not is not one
+ of , , ,
+ , ,,
+ ,.
+
+
+
+ Sends a sequence of keystrokes to the browser.
+
+ The keystrokes to send to the browser.
+ A self-reference to this .
+
+
+
+ Sends a sequence of keystrokes to the specified element in the browser.
+
+ The element to which to send the keystrokes.
+ The keystrokes to send to the browser.
+ A self-reference to this .
+
+
+
+ Clicks and holds the mouse button down on the specified element.
+
+ The element on which to click and hold.
+ A self-reference to this .
+
+
+
+ Clicks and holds the mouse button at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Releases the mouse button on the specified element.
+
+ The element on which to release the button.
+ A self-reference to this .
+
+
+
+ Releases the mouse button at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Clicks the mouse on the specified element.
+
+ The element on which to click.
+ A self-reference to this .
+
+
+
+ Clicks the mouse at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Double-clicks the mouse on the specified element.
+
+ The element on which to double-click.
+ A self-reference to this .
+
+
+
+ Double-clicks the mouse at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Moves the mouse to the specified element.
+
+ The element to which to move the mouse.
+ A self-reference to this .
+
+
+
+ Moves the mouse to the specified offset of the top-left corner of the specified element.
+
+ The element to which to move the mouse.
+ The horizontal offset to which to move the mouse.
+ The vertical offset to which to move the mouse.
+ A self-reference to this .
+
+
+
+ Moves the mouse to the specified offset of the top-left corner of the specified element.
+
+ The element to which to move the mouse.
+ The horizontal offset to which to move the mouse.
+ The vertical offset to which to move the mouse.
+ The value from which to calculate the offset.
+ A self-reference to this .
+
+
+
+ Moves the mouse to the specified offset of the last known mouse coordinates.
+
+ The horizontal offset to which to move the mouse.
+ The vertical offset to which to move the mouse.
+ A self-reference to this .
+
+
+
+ Right-clicks the mouse on the specified element.
+
+ The element on which to right-click.
+ A self-reference to this .
+
+
+
+ Right-clicks the mouse at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Performs a drag-and-drop operation from one element to another.
+
+ The element on which the drag operation is started.
+ The element on which the drop is performed.
+ A self-reference to this .
+
+
+
+ Performs a drag-and-drop operation on one element to a specified offset.
+
+ The element on which the drag operation is started.
+ The horizontal offset to which to move the mouse.
+ The vertical offset to which to move the mouse.
+ A self-reference to this .
+
+
+
+ Builds the sequence of actions.
+
+ A composite which can be used to perform the actions.
+
+
+
+ Performs the currently built action.
+
+
+
+
+ Gets the instance of the specified .
+
+ The to get the location of.
+ The of the .
+
+
+
+ Adds an action to current list of actions to be performed.
+
+ The to be added.
+
+
+
+ Represents a sequence of actions to be performed in the target browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The input device that executes this sequence of actions.
+
+
+
+ Initializes a new instance of the class.
+
+ The input device that executes this sequence of actions.
+ the initial size of the sequence.
+
+
+
+ Gets the count of actions in the sequence.
+
+
+
+
+ Adds an action to the sequence.
+
+ The action to add to the sequence.
+ A self-reference to this sequence of actions.
+
+
+
+ Converts this action sequence into an object suitable for serializing across the wire.
+
+ A containing the actions in this sequence.
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Defines an action for releasing the currently held mouse button.
+
+
+ This action can be called for an element different than the one
+ ClickAndHoldAction was called for. However, if this action is
+ performed out of sequence (without holding down the mouse button,
+ for example) the results will be different.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action for clicking on an element.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action for clicking and holding the mouse button on an element.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action that consists of a list of other actions to be performed in the browser.
+
+
+
+
+ Adds an action to the list of actions to be performed.
+
+ An to be appended to the
+ list of actions to be performed.
+ A self reference.
+
+
+
+ Performs the actions defined in this list of actions.
+
+
+
+
+ Defines an action for clicking the secondary mouse button on an element, displaying a context menu.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action for double-clicking on an element.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Creates a double tap gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs the action.
+
+
+
+
+ Creates a flick gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The horizontal speed in pixels per second.
+ The vertical speed in pixels per second.
+
+
+
+ Initializes a new instance of the class for use with the specified element.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+ The x offset relative to the viewport.
+ The y offset relative to the viewport.
+ The speed in pixels per second.
+
+
+
+ Performs the action.
+
+
+
+
+ Provides methods by which an interaction with the browser can be performed.
+
+
+
+
+ Performs this action on the browser.
+
+
+
+
+ Provides location of the element using various frames of reference.
+
+
+
+
+ Gets the location of an element in absolute screen coordinates.
+
+
+
+
+ Gets the location of an element relative to the origin of the view port.
+
+
+
+
+ Gets the location of an element's position within the HTML DOM.
+
+
+
+
+ Gets a locator providing a user-defined location for this element.
+
+
+
+
+ Defines an action for keyboard interaction with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+
+
+
+ Gets the keyboard with which to perform the action.
+
+
+
+
+ Focuses on the element on which the action is to be performed.
+
+
+
+
+ Defines an action for mouse interaction with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Gets the coordinates at which to perform the mouse action.
+
+
+
+
+ Gets the mouse with which to perform the action.
+
+
+
+
+ Moves the mouse to the location at which to perform the action.
+
+
+
+
+ Defines an action for keyboard interaction with the browser using a single modifier key.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+ The modifier key (, , ) to use in the action.
+
+
+
+ Gets the key with which to perform the action.
+
+
+
+
+ Defines an action for keyboard interaction with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ An object providing the element on which to perform the action.
+
+
+
+ Gets the touch screen with which to perform the action.
+
+
+
+
+ Gets the location at which to perform the action.
+
+
+
+
+ Defines an action for keyboard and mouse interaction with the browser.
+
+
+
+
+ Initializes a new instance of the class for the given element.
+
+ An object that provides coordinates for this action.
+
+
+
+ Initializes a new instance of the class.
+
+ This action will take place in the context of the previous action's coordinates.
+
+
+
+ Gets the target of the action providing coordinates of the action.
+
+
+
+
+ Base class for all input devices for actions.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The unique name of the input device represented by this class.
+
+
+
+ Gets the unique name of this input device.
+
+
+
+
+ Gets the kind of device for this input device.
+
+
+
+
+ Returns a value for this input device that can be transmitted across the wire to a remote end.
+
+ A representing this action.
+
+
+
+ Creates a pause action for synchronization with other action sequences.
+
+ The representing the action.
+
+
+
+ Creates a pause action for synchronization with other action sequences.
+
+ A representing the duration
+ of the pause. Note that pauses to synchronize
+ with other action sequences for other devices.
+ The representing the action.
+
+
+
+ Returns a hash code for the current .
+
+ A hash code for the current .
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Enumerated values for the kinds of devices available.
+
+
+
+
+ Represents the null device.
+
+
+
+
+ Represents a key-based device, primarily for entering text.
+
+
+
+
+ Represents a pointer-based device, such as a mouse, pen, or stylus.
+
+
+
+
+ Represents a single interaction for a given input device.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The input device which performs this action.
+
+
+
+ Gets the device for which this action is intended.
+
+
+
+
+ Returns a value for this action that can be transmitted across the wire to a remote end.
+
+ A representing this action.
+
+
+
+ Gets a value indicating whether this action is valid for the specified type of input device.
+
+ The type of device to check.
+
+ if the action is valid for the specified type of input device;
+ otherwise, .
+
+
+
+ Defines an action for pressing a modifier key (Shift, Alt, or Control) on the keyboard.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+ The modifier key (, , ,
+ , ,,
+ ,) to use in the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Represents a key input device, such as a keyboard.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class, given the device's name.
+
+ The unique name of this input device.
+
+
+
+ Gets the type of device for this input device.
+
+
+
+
+ Converts this input device into an object suitable for serializing across the wire.
+
+ A representing this input device.
+
+
+
+ Creates a key-down action for simulating a press of a key.
+
+ The unicode character to be sent.
+ The representing the action.
+
+
+
+ Creates a key-up action for simulating a release of a key.
+
+ The unicode character to be sent.
+ The representing the action.
+
+
+
+ Defines an action for releasing a modifier key (Shift, Alt, or Control) on the keyboard.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+ The modifier key (, , ,
+ , ,,
+ ,) to use in the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Creates a long press gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs the action.
+
+
+
+
+ Defines an action for moving the mouse to a specified location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action for moving the mouse to a specified offset from its current location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+ The horizontal offset from the origin of the target to which to move the mouse.
+ The vertical offset from the origin of the target to which to move the mouse.
+
+
+
+ Performs this action.
+
+
+
+
+ Represents a pause action.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The input device on which to execute the pause.
+
+
+
+ Initializes a new instance of the class.
+
+ The input device on which to execute the pause.
+ The length of time to pause for.
+
+
+
+ Returns a value for this action that can be transmitted across the wire to a remote end.
+
+ A representing this action.
+
+
+
+ Gets a value indicating whether this action is valid for the specified type of input device.
+
+ The type of device to check.
+
+ if the action is valid for the specified type of input device;
+ otherwise, .
+
+
+
+ Represents the origin of the coordinates for mouse movement.
+
+
+
+
+ The coordinate origin is the origin of the view port of the browser.
+
+
+
+
+ The origin of the movement is the most recent pointer location.
+
+
+
+
+ The origin of the movement is the center of the element specified.
+
+
+
+
+ Specifies the type of pointer a pointer device represents.
+
+
+
+
+ The pointer device is a mouse.
+
+
+
+
+ The pointer device is a pen or stylus.
+
+
+
+
+ The pointer device is a touch screen device.
+
+
+
+
+ Specifies the button used during a pointer down or up action.
+
+
+
+
+ The button used is the primary button.
+
+
+
+
+ The button used is the middle button or mouse wheel.
+
+
+
+
+ The button used is the secondary button.
+
+
+
+
+ Represents a pointer input device, such as a stylus, mouse, or finger on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The kind of pointer represented by this input device.
+
+
+
+ Initializes a new instance of the class.
+
+ The kind of pointer represented by this input device.
+ The unique name for this input device.
+
+
+
+ Gets the type of device for this input device.
+
+
+
+
+ Returns a value for this input device that can be transmitted across the wire to a remote end.
+
+ A representing this action.
+
+
+
+ Creates a pointer down action.
+
+ The button of the pointer that should be pressed.
+ The action representing the pointer down gesture.
+
+
+
+ Creates a pointer up action.
+
+ The button of the pointer that should be released.
+ The action representing the pointer up gesture.
+
+
+
+ Creates a pointer move action to a specific element.
+
+ The used as the target for the move.
+ The horizontal offset from the origin of the move.
+ The vertical offset from the origin of the move.
+ The length of time the move gesture takes to complete.
+ The action representing the pointer move gesture.
+
+
+
+ Creates a pointer move action to an absolute coordinate.
+
+ The origin of coordinates for the move. Values can be relative to
+ the view port origin, or the most recent pointer position.
+ The horizontal offset from the origin of the move.
+ The vertical offset from the origin of the move.
+ The length of time the move gesture takes to complete.
+ The action representing the pointer move gesture.
+ Thrown when passing CoordinateOrigin.Element into origin.
+ Users should us the other CreatePointerMove overload to move to a specific element.
+
+
+
+ Creates a pointer cancel action.
+
+ The action representing the pointer cancel gesture.
+
+
+
+ Presses a touch screen at a given location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Performs the action.
+
+
+
+
+ Presses a touch screen at a given location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Performs the action.
+
+
+
+
+ Presses a touch screen at a given location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Performs the action.
+
+
+
+
+ Creates a double tap gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The horizontal offset relative to the view port.
+ The vertical offset relative to the view port.
+
+
+
+ Initializes a new instance of the class for use with the specified element.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Performs the action.
+
+
+
+
+ Defines an action for sending a sequence of keystrokes to an element.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+ The key sequence to send.
+
+
+
+ Performs this action.
+
+
+
+
+ Creates a single tap gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs the action.
+
+
+
+
+ Provides a mechanism for building advanced interactions with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The object on which the actions built will be performed.
+
+
+
+ Taps the touch screen on the specified element.
+
+ The element on which to tap.
+ A self-reference to this .
+
+
+
+ Presses down at the specified location on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+ A self-reference to this .
+
+
+
+ Releases a press at the specified location on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+ A self-reference to this .
+
+
+
+ Moves to the specified location on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+ A self-reference to this .
+
+
+
+ Scrolls the touch screen beginning at the specified element.
+
+ The element on which to begin scrolling.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+ A self-reference to this .
+
+
+
+ Double-taps the touch screen on the specified element.
+
+ The element on which to double-tap.
+ A self-reference to this .
+
+
+
+ Presses and holds on the touch screen on the specified element.
+
+ The element on which to press and hold
+ A self-reference to this .
+
+
+
+ Scrolls the touch screen to the specified offset.
+
+ The horizontal offset relative to the view port.
+ The vertical offset relative to the view port.
+ A self-reference to this .
+
+
+
+ Flicks the current view.
+
+ The horizontal speed in pixels per second.
+ The vertical speed in pixels per second.
+ A self-reference to this .
+
+
+
+ Flicks the current view starting at a specific location.
+
+ The element at which to start the flick.
+ The x offset relative to the viewport.
+ The y offset relative to the viewport.
+ The speed in pixels per second.
+ A self-reference to this .
+
+
+
+ Utility class used to execute "asynchronous" scripts. This class should
+ only be used by browsers that do not natively support asynchronous
+ script execution.
+ Warning: this class is intended for internal use
+ only. This class will be removed without warning after all
+ native asynchronous implementations have been completed.
+
+
+
+
+ Initializes a new instance of the class.
+
+ An object capable of executing JavaScript.
+
+
+
+ Gets or sets the timeout for the script executor.
+
+
+
+
+ Executes a JavaScript script asynchronously.
+
+ The script to execute.
+ An array of objects used as arguments in the script.
+ The object which is the return value of the script.
+ if the object executing the function doesn't support JavaScript.
+ if the page reloads during the JavaScript execution.
+ if the timeout expires during the JavaScript execution.
+
+
+
+ Encapsulates methods for working with files.
+
+
+
+
+ Recursively copies a directory.
+
+ The source directory to copy.
+ The destination directory.
+
+ if the copy is completed; otherwise .
+
+
+
+ Recursively deletes a directory, retrying on error until a timeout.
+
+ The directory to delete.
+ This method does not throw an exception if the delete fails.
+
+
+
+ Searches for a file with the specified name.
+
+ The name of the file to find.
+ The full path to the directory where the file can be found,
+ or an empty string if the file does not exist in the locations searched.
+
+ This method looks first in the directory of the currently executing
+ assembly. If the specified file is not there, the method then looks in
+ each directory on the PATH environment variable, in order.
+
+
+
+
+ Gets the directory of the currently executing assembly.
+
+ The directory of the currently executing assembly.
+
+
+
+ Generates the full path to a random directory name in the temporary directory, following a naming pattern..
+
+ The pattern to use in creating the directory name, following standard
+ .NET string replacement tokens.
+ The full path to the random directory name in the temporary directory.
+
+
+
+ Interface allowing execution of W3C Specification-compliant actions.
+
+
+
+
+ Gets a value indicating whether this object is a valid action executor.
+
+
+
+
+ Performs the specified list of actions with this action executor.
+
+ The list of action sequences to perform.
+
+
+
+ Resets the input state of the action executor.
+
+
+
+
+ Defines the interface through which the user finds elements by their CSS class.
+
+
+
+
+ Finds the first element matching the specified CSS class.
+
+ The CSS class to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified CSS class.
+
+ The CSS class to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their cascading style sheet (CSS) selector.
+
+
+
+
+ Finds the first element matching the specified CSS selector.
+
+ The id to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified CSS selector.
+
+ The CSS selector to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their ID.
+
+
+
+
+ Finds the first element matching the specified id.
+
+ The id to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified id.
+
+ The id to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their link text.
+
+
+
+
+ Finds the first element matching the specified link text.
+
+ The link text to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified link text.
+
+ The link text to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their name.
+
+
+
+
+ Finds the first element matching the specified name.
+
+ The name to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified name.
+
+ The name to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by a partial match on their link text.
+
+
+
+
+ Finds the first element matching the specified partial link text.
+
+ The partial link text to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified partial link text.
+
+ The partial link text to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their tag name.
+
+
+
+
+ Finds the first element matching the specified tag name.
+
+ The tag name to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified tag name.
+
+ The tag name to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by XPath.
+
+
+
+
+ Finds the first element matching the specified XPath query.
+
+ The XPath query to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified XPath query.
+
+ The XPath query to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user can access the driver used to find an element.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Defines the interface through which the framework can serialize an element to the wire protocol.
+
+
+
+
+ Gets the internal ID of the element.
+
+
+
+
+ Converts an object into an object that represents an element for the wire protocol.
+
+ A that represents an element in the wire protocol.
+
+
+
+ Defines the interface through which the user can access the driver used to find an element.
+
+
+
+
+ Gets the used to find this element.
+
+
+
+
+ Defines the interface through which the user can discover if there is an underlying element to be used.
+
+
+
+
+ Gets the wrapped by this object.
+
+
+
+
+ Encapsulates methods for working with ports.
+
+
+
+
+ Finds a random, free port to be listened on.
+
+ A random, free port to be listened on.
+
+
+
+ Encapsulates methods for finding and extracting WebDriver resources.
+
+
+
+
+ Gets a string representing the version of the Selenium assembly.
+
+
+
+
+ Gets a string representing the platform family on which the Selenium assembly is executing.
+
+
+
+
+ Gets a that contains the resource to use.
+
+ A file name in the file system containing the resource to use.
+ A string representing the resource name embedded in the
+ executing assembly, if it is not found in the file system.
+ A Stream from which the resource can be read.
+ Thrown if neither the file nor the embedded resource can be found.
+
+ The GetResourceStream method searches for the specified resource using the following
+ algorithm:
+ In the same directory as the calling assembly.In the full path specified by the argument.Inside the calling assembly as an embedded resource.
+
+
+
+ Returns a value indicating whether a resource exists with the specified ID.
+
+ ID of the embedded resource to check for.
+
+ if the resource exists in the calling assembly; otherwise .
+
+
+
+ Class to Create the capabilities of the browser you require for .
+ If you wish to use default values use the static methods
+
+
+
+
+ Initializes a new instance of the class
+
+
+
+
+ Initializes a new instance of the class
+
+ Dictionary of items for the remote driver
+
+
+
+ Gets the browser name
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the internal capabilities dictionary.
+
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if the browser has the capability; otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set on the browser.
+
+
+
+ Converts the object to a .
+
+ The containing the capabilities.
+
+
+
+ Return a string of capabilities being used
+
+ String of capabilities being used
+
+
+
+ Represents a cookie returned to the driver by the browser.
+
+
+
+
+ Initializes a new instance of the class with a specific name,
+ value, domain, path and expiration date.
+
+ The name of the cookie.
+ The value of the cookie.
+ The domain of the cookie.
+ The path of the cookie.
+ The expiration date of the cookie.
+
+ if the cookie is secure; otherwise
+
+ if the cookie is an HTTP-only cookie; otherwise
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value or currentUrl is .
+
+
+
+ Gets a value indicating whether the cookie is secure.
+
+
+
+
+ Gets a value indicating whether the cookie is an HTTP-only cookie.
+
+
+
+
+ Creates and returns a string representation of the current cookie.
+
+ A string representation of the current cookie.
+
+
+
+ Provides entry points into needed unmanaged APIs.
+
+
+
+
+ Values for flags for setting information about a native operating system handle.
+
+
+
+
+ No flags are to be set for the handle.
+
+
+
+
+ If this flag is set, a child process created with the bInheritHandles
+ parameter of CreateProcess set to TRUE will inherit the object handle.
+
+
+
+
+ If this flag is set, calling the CloseHandle function will not close the
+ object handle.
+
+
+
+
+ Sets the handle information for a Windows object.
+
+ Handle to the object.
+ The handle information to set.
+ The flags for the handle.
+
+ if the information is set; otherwise .
+
+
+
+ The exception that is thrown when the users attempts to set a cookie with an invalid domain.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when a reference to an element is no longer valid.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Defines an interface allowing the user to set options on the browser.
+
+
+
+
+ Gets an object allowing the user to manipulate cookies on the page.
+
+
+
+
+ Gets an object allowing the user to manipulate the currently-focused browser window.
+
+ "Currently-focused" is defined as the browser window having the window handle
+ returned when IWebDriver.CurrentWindowHandle is called.
+
+
+
+ Gets an object allowing the user to examing the logs for this driver instance.
+
+
+
+
+ Provides access to the timeouts defined for this driver.
+
+ An object implementing the interface.
+
+
+
+ Represents rotation of the browser view for orientation-sensitive devices.
+ When using this with a real device, the device should not be moved so that
+ the built-in sensors do not interfere.
+
+
+
+
+ Gets or sets the screen orientation of the browser on the device.
+
+
+
+
+ Defines the interface used to search for elements.
+
+
+
+
+ Finds the first using the given method.
+
+ The locating mechanism to use.
+ The first matching on the current context.
+ If no element matches the criteria.
+
+
+
+ Finds all IWebElements within the current context
+ using the given mechanism.
+
+ The locating mechanism to use.
+ A of all WebElements
+ matching the current criteria, or an empty list if nothing matches.
+
+
+
+ Defines the interface used to take screen shot images of the screen.
+
+
+
+
+ Gets a object representing the image of the page on the screen.
+
+ A object containing the image.
+
+
+
+ Defines the interface through which the user can locate a given frame or window.
+
+
+
+
+ Select a frame by its (zero-based) index.
+
+ The zero-based index of the frame to select.
+ An instance focused on the specified frame.
+ If the frame cannot be found.
+
+
+
+ Select a frame by its name or ID.
+
+ The name of the frame to select.
+ An instance focused on the specified frame.
+ If the frame cannot be found.
+
+
+
+ Select a frame using its previously located
+ The frame element to switch to.
+ An instance focused on the specified frame.
+ If the element is neither a FRAME nor an IFRAME element.
+ If the element is no longer valid.
+
+
+
+ Select the parent frame of the currently selected frame.
+
+ An instance focused on the specified frame.
+
+
+
+ Switches the focus of future commands for this driver to the window with the given name.
+
+ The name of the window to select.
+ An instance focused on the given window.
+ If the window cannot be found.
+
+
+
+ Selects either the first frame on the page or the main document when a page contains iFrames.
+
+ An instance focused on the default frame.
+
+
+
+ Switches to the element that currently has the focus, or the body element
+ if no element with focus can be detected.
+
+ An instance representing the element
+ with the focus, or the body element if no element with focus can be detected.
+
+
+
+ Switches to the currently active modal dialog for this particular driver instance.
+
+ A handle to the dialog.
+
+
+
+ Defines the interface through which the user can define timeouts.
+
+
+
+
+ Gets or sets the implicit wait timeout, which is the amount of time the
+ driver should wait when searching for an element if it is not immediately
+ present.
+
+
+ When searching for a single element, the driver should poll the page
+ until the element has been found, or this timeout expires before throwing
+ a . When searching for multiple elements,
+ the driver should poll the page until at least one element has been found
+ or this timeout has expired.
+
+ Increasing the implicit wait timeout should be used judiciously as it
+ will have an adverse effect on test run time, especially when used with
+ slower location strategies like XPath.
+
+
+
+
+ Gets or sets the asynchronous script timeout, which is the amount
+ of time the driver should wait when executing JavaScript asynchronously.
+ This timeout only affects the
+ method.
+
+
+
+
+ Gets or sets the page load timeout, which is the amount of time the driver
+ should wait for a page to load when setting the
+ property.
+
+
+
+
+ Interface representing basic touch screen operations.
+
+
+
+
+ Allows the execution of single tap on the screen, analogous to click using a Mouse.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Allows the execution of the gesture 'down' on the screen. It is typically the first of a
+ sequence of touch gestures.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Allows the execution of the gesture 'up' on the screen. It is typically the last of a
+ sequence of touch gestures.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Allows the execution of the gesture 'move' on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Creates a scroll gesture that starts on a particular screen location.
+
+ The object representing the location on the screen
+ where the scroll starts, usually an .
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Creates a scroll gesture for a particular x and y offset.
+
+ The horizontal offset relative to the view port.
+ The vertical offset relative to the view port.
+
+
+
+ Allows the execution of double tap on the screen, analogous to click using a Mouse.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Allows the execution of a long press gesture on the screen.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Creates a flick gesture for the current view.
+
+ The horizontal speed in pixels per second.
+ The vertical speed in pixels per second.
+
+
+
+ Creates a flick gesture for the current view starting at a specific location.
+
+ The object representing the location on the screen
+ where the scroll starts, usually an .
+ The x offset relative to the viewport.
+ The y offset relative to the viewport.
+ The speed in pixels per second.
+
+
+
+ Defines the interface through which the user controls the browser.
+
+
+ The interface is the main interface to use for testing, which
+ represents an idealized web browser. The methods in this class fall into three categories:
+ Control of the browser itselfSelection of IWebElementsDebugging aids
+ Key properties and methods are , which is used to
+ load a new web page by setting the property, and the various methods similar
+ to , which is used to find IWebElements.
+
+ You use the interface by instantiate drivers that implement of this interface.
+ You should write your tests against this interface so that you may "swap in" a
+ more fully featured browser when there is a requirement for one.
+
+
+
+
+ Gets or sets the URL the browser is currently displaying.
+
+
+ Setting the property will load a new web page in the current browser window.
+ This is done using an HTTP GET operation, and the method will block until the
+ load is complete. This will follow redirects issued either by the server or
+ as a meta-redirect from within the returned HTML. Should a meta-redirect "rest"
+ for any duration of time, it is best to wait until this timeout is over, since
+ should the underlying page change while your test is executing the results of
+ future calls against this interface will be against the freshly loaded page.
+
+
+
+
+
+
+ Gets the title of the current browser window.
+
+
+
+
+ Gets the source of the page last loaded by the browser.
+
+
+ If the page has been modified after loading (for example, by JavaScript)
+ there is no guarantee that the returned text is that of the modified page.
+ Please consult the documentation of the particular driver being used to
+ determine whether the returned text reflects the current state of the page
+ or the text last sent by the web server. The page source returned is a
+ representation of the underlying DOM: do not expect it to be formatted
+ or escaped in the same way as the response sent from the web server.
+
+
+
+
+ Gets the current window handle, which is an opaque handle to this
+ window that uniquely identifies it within this driver instance.
+
+
+
+
+ Gets the window handles of open browser windows.
+
+
+
+
+ Close the current window, quitting the browser if it is the last window currently open.
+
+
+
+
+ Quits this driver, closing every associated window.
+
+
+
+
+ Instructs the driver to change its settings.
+
+ An object allowing the user to change
+ the settings of the driver.
+
+
+
+ Instructs the driver to navigate the browser to another location.
+
+ An object allowing the user to access
+ the browser's history and to navigate to a given URL.
+
+
+
+ Instructs the driver to send future commands to a different frame or window.
+
+ An object which can be used to select
+ a frame or window.
+
+
+
+ Defines the interface through which the user controls elements on the page.
+
+ The interface represents an HTML element.
+ Generally, all interesting operations to do with interacting with a page will
+ be performed through this interface.
+
+
+
+
+ Gets the tag name of this element.
+
+
+ The property returns the tag name of the
+ element, not the value of the name attribute. For example, it will return
+ "input" for an element specified by the HTML markup <input name="foo" />.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the innerText of this element, without any leading or trailing whitespace,
+ and with other whitespace collapsed.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is enabled.
+
+ The property will generally
+ return for everything except explicitly disabled input elements.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is selected.
+
+ This operation only applies to input elements such as checkboxes,
+ options in a select element and radio buttons.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a object containing the coordinates of the upper-left corner
+ of this element relative to the upper-left corner of the page.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a object containing the height and width of this element.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is displayed.
+
+ The property avoids the problem
+ of having to parse an element's "style" attribute to determine
+ visibility of an element.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Clears the content of this element.
+
+ If this element is a text entry element, the
+ method will clear the value. It has no effect on other elements. Text entry elements
+ are defined as elements with INPUT or TEXTAREA tags.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Simulates typing text into the element.
+
+ The text to type into the element.
+ The text to be typed may include special characters like arrow keys,
+ backspaces, function keys, and so on. Valid special keys are defined in
+ .
+
+ Thrown when the target element is not enabled.
+ Thrown when the target element is not visible.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Submits this element to the web server.
+
+ If this current element is a form, or an element within a form,
+ then this will be submitted to the web server. If this causes the current
+ page to change, then this method will block until the new page is loaded.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Clicks this element.
+
+
+
+ Click this element. If the click causes a new page to load, the
+ method will attempt to block until the page has loaded. After calling the
+ method, you should discard all references to this
+ element unless you know that the element and the page will still be present.
+ Otherwise, any further operations performed on this element will have an undefined.
+ behavior.
+
+
+ If this element is not clickable, then this operation is ignored. This allows you to
+ simulate a users to accidentally missing the target when clicking.
+
+
+ Thrown when the target element is not visible.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of the specified attribute for this element.
+
+ The name of the attribute.
+ The attribute's current value. Returns a if the
+ value is not set.
+ The method will return the current value
+ of the attribute, even if the value has been modified after the page has been
+ loaded. Note that the value of the following attributes will be returned even if
+ there is no explicit attribute on the element:
+ Attribute nameValue returned if not explicitly specifiedValid element typescheckedcheckedCheck BoxselectedselectedOptions in Select elementsdisableddisabledInput and other UI elements
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of a JavaScript property of this element.
+
+ The name JavaScript the JavaScript property to get the value of.
+ The JavaScript property's current value. Returns a if the
+ value is not set or the property does not exist.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of a CSS property of this element.
+
+ The name of the CSS property to get the value of.
+ The value of the specified CSS property.
+ The value returned by the
+ method is likely to be unpredictable in a cross-browser environment.
+ Color values should be returned as hex strings. For example, a
+ "background-color" property set as "green" in the HTML source, will
+ return "#008000" for its value.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Provides methods for getting and setting the size and position of the browser window.
+
+
+
+
+ Gets or sets the position of the browser window relative to the upper-left corner of the screen.
+
+ When setting this property, it should act as the JavaScript window.moveTo() method.
+
+
+
+ Gets or sets the size of the outer browser window, including title bars and window borders.
+
+ When setting this property, it should act as the JavaScript window.resizeTo() method.
+
+
+
+ Maximizes the current window if it is not already maximized.
+
+
+
+
+ Minimizes the current window if it is not already maximized.
+
+
+
+
+ Sets the current window to full screen if it is not already in that state.
+
+
+
+
+ Representations of keys able to be pressed that are not text keys for sending to the browser.
+
+
+
+
+ Represents the NUL keystroke.
+
+
+
+
+ Represents the Cancel keystroke.
+
+
+
+
+ Represents the Help keystroke.
+
+
+
+
+ Represents the Backspace key.
+
+
+
+
+ Represents the Tab key.
+
+
+
+
+ Represents the Clear keystroke.
+
+
+
+
+ Represents the Return key.
+
+
+
+
+ Represents the Enter key.
+
+
+
+
+ Represents the Shift key.
+
+
+
+
+ Represents the Shift key.
+
+
+
+
+ Represents the Control key.
+
+
+
+
+ Represents the Control key.
+
+
+
+
+ Represents the Alt key.
+
+
+
+
+ Represents the Alt key.
+
+
+
+
+ Represents the Pause key.
+
+
+
+
+ Represents the Escape key.
+
+
+
+
+ Represents the Spacebar key.
+
+
+
+
+ Represents the Page Up key.
+
+
+
+
+ Represents the Page Down key.
+
+
+
+
+ Represents the End key.
+
+
+
+
+ Represents the Home key.
+
+
+
+
+ Represents the left arrow key.
+
+
+
+
+ Represents the left arrow key.
+
+
+
+
+ Represents the up arrow key.
+
+
+
+
+ Represents the up arrow key.
+
+
+
+
+ Represents the right arrow key.
+
+
+
+
+ Represents the right arrow key.
+
+
+
+
+ Represents the Left arrow key.
+
+
+
+
+ Represents the Left arrow key.
+
+
+
+
+ Represents the Insert key.
+
+
+
+
+ Represents the Delete key.
+
+
+
+
+ Represents the semi-colon key.
+
+
+
+
+ Represents the equal sign key.
+
+
+
+
+ Represents the number pad 0 key.
+
+
+
+
+ Represents the number pad 1 key.
+
+
+
+
+ Represents the number pad 2 key.
+
+
+
+
+ Represents the number pad 3 key.
+
+
+
+
+ Represents the number pad 4 key.
+
+
+
+
+ Represents the number pad 5 key.
+
+
+
+
+ Represents the number pad 6 key.
+
+
+
+
+ Represents the number pad 7 key.
+
+
+
+
+ Represents the number pad 8 key.
+
+
+
+
+ Represents the number pad 9 key.
+
+
+
+
+ Represents the number pad multiplication key.
+
+
+
+
+ Represents the number pad addition key.
+
+
+
+
+ Represents the number pad thousands separator key.
+
+
+
+
+ Represents the number pad subtraction key.
+
+
+
+
+ Represents the number pad decimal separator key.
+
+
+
+
+ Represents the number pad division key.
+
+
+
+
+ Represents the function key F1.
+
+
+
+
+ Represents the function key F2.
+
+
+
+
+ Represents the function key F3.
+
+
+
+
+ Represents the function key F4.
+
+
+
+
+ Represents the function key F5.
+
+
+
+
+ Represents the function key F6.
+
+
+
+
+ Represents the function key F7.
+
+
+
+
+ Represents the function key F8.
+
+
+
+
+ Represents the function key F9.
+
+
+
+
+ Represents the function key F10.
+
+
+
+
+ Represents the function key F11.
+
+
+
+
+ Represents the function key F12.
+
+
+
+
+ Represents the function key META.
+
+
+
+
+ Represents the function key COMMAND.
+
+
+
+
+ Gets the description of a specific key.
+
+ The key value for which to get the description.
+ The description of the key.
+
+
+
+ Represents an entry in a log from a driver instance.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the timestamp value of the log entry.
+
+
+
+
+ Gets the logging level of the log entry.
+
+
+
+
+ Gets the message of the log entry.
+
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Creates a from a dictionary as deserialized from JSON.
+
+ The from
+ which to create the .
+ A with the values in the dictionary.
+
+
+
+ Represents the levels of logging available to driver instances.
+
+
+
+
+ Show all log messages.
+
+
+
+
+ Show messages with information useful for debugging.
+
+
+
+
+ Show informational messages.
+
+
+
+
+ Show messages corresponding to non-critical issues.
+
+
+
+
+ Show messages corresponding to critical issues.
+
+
+
+
+ Show no log messages.
+
+
+
+
+ Class containing names of common log types.
+
+
+
+
+ Log messages from the client language bindings.
+
+
+
+
+ Logs from the current WebDriver instance.
+
+
+
+
+ Logs from the browser.
+
+
+
+
+ Logs from the server.
+
+
+
+
+ Profiling logs.
+
+
+
+
+ The exception that is thrown when an alert is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when a frame is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when a window is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an item is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Provides a mechanism to write tests against Opera
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new OperaDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ }
+ }
+
+
+
+
+
+ Accept untrusted SSL Certificates
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified options.
+
+ The to be used with the Opera driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing OperaDriver.exe.
+
+ The full path to the directory containing OperaDriver.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing OperaDriver.exe and options.
+
+ The full path to the directory containing OperaDriver.exe.
+ The to be used with the Opera driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing OperaDriver.exe, options, and command timeout.
+
+ The full path to the directory containing OperaDriver.exe.
+ The to be used with the Opera driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use.
+ The to be used with the Opera driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The Opera driver does not allow a file detector to be set,
+ as the server component of the Opera driver (OperaDriver.exe) only
+ allows uploads from the local computer environment. Attempting to set
+ this property has no effect, but does not throw an exception. If you
+ are attempting to run the Opera driver remotely, use
+ in conjunction with a standalone WebDriver server.
+
+
+
+ Exposes the service provided by the native OperaDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the OperaDriver executable.
+ The file name of the OperaDriver executable.
+ The port on which the OperaDriver executable should listen.
+
+
+
+ Gets or sets the location of the log file written to by the OperaDriver executable.
+
+
+
+
+ Gets or sets the base URL path prefix for commands (e.g., "wd/url").
+
+
+
+
+ Gets or sets the address of a server to contact for reserving a port.
+
+
+
+
+ Gets or sets the port on which the Android Debug Bridge is listening for commands.
+
+
+
+
+ Gets or sets a value indicating whether to enable verbose logging for the OperaDriver executable.
+ Defaults to .
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the OperaDriverService.
+
+ A OperaDriverService that implements default settings.
+
+
+
+ Creates a default instance of the OperaDriverService using a specified path to the OperaDriver executable.
+
+ The directory containing the OperaDriver executable.
+ A OperaDriverService using a random port.
+
+
+
+ Creates a default instance of the OperaDriverService using a specified path to the OperaDriver executable with the given name.
+
+ The directory containing the OperaDriver executable.
+ The name of the OperaDriver executable file.
+ A OperaDriverService using a random port.
+
+
+
+ Class to manage options specific to
+
+ Used with OperaDriver.exe for Chromium v0.1.0 and higher.
+
+
+
+ OperaOptions options = new OperaOptions();
+ options.AddExtensions("\path\to\extension.crx");
+ options.BinaryLocation = "\path\to\opera";
+
+
+ For use with OperaDriver:
+
+
+ OperaDriver driver = new OperaDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Gets the name of the capability used to store Opera options in
+ a object.
+
+
+
+
+ Gets or sets the location of the Opera browser's binary executable file.
+
+
+
+
+ Gets or sets a value indicating whether Opera should be left running after the
+ OperaDriver instance is exited. Defaults to .
+
+
+
+
+ Gets the list of arguments appended to the Opera command line as a string array.
+
+
+
+
+ Gets the list of extensions to be installed as an array of base64-encoded strings.
+
+
+
+
+ Gets or sets the address of a Opera debugger server to connect to.
+ Should be of the form "{hostname|IP address}:port".
+
+
+
+
+ Gets or sets the directory in which to store minidump files.
+
+
+
+
+ Adds a single argument to the list of arguments to be appended to the Opera.exe command line.
+
+ The argument to add.
+
+
+
+ Adds arguments to be appended to the Opera.exe command line.
+
+ An array of arguments to add.
+
+
+
+ Adds arguments to be appended to the Opera.exe command line.
+
+ An object of arguments to add.
+
+
+
+ Adds a single argument to be excluded from the list of arguments passed by default
+ to the Opera.exe command line by operadriver.exe.
+
+ The argument to exclude.
+
+
+
+ Adds arguments to be excluded from the list of arguments passed by default
+ to the Opera.exe command line by operadriver.exe.
+
+ An array of arguments to exclude.
+
+
+
+ Adds arguments to be excluded from the list of arguments passed by default
+ to the Opera.exe command line by operadriver.exe.
+
+ An object of arguments to exclude.
+
+
+
+ Adds a path to a packed Opera extension (.crx file) to the list of extensions
+ to be installed in the instance of Opera.
+
+ The full path to the extension to add.
+
+
+
+ Adds a list of paths to packed Opera extensions (.crx files) to be installed
+ in the instance of Opera.
+
+ An array of full paths to the extensions to add.
+
+
+
+ Adds a list of paths to packed Opera extensions (.crx files) to be installed
+ in the instance of Opera.
+
+ An of full paths to the extensions to add.
+
+
+
+ Adds a base64-encoded string representing a Opera extension to the list of extensions
+ to be installed in the instance of Opera.
+
+ A base64-encoded string representing the extension to add.
+
+
+
+ Adds a list of base64-encoded strings representing Opera extensions to the list of extensions
+ to be installed in the instance of Opera.
+
+ An array of base64-encoded strings representing the extensions to add.
+
+
+
+ Adds a list of base64-encoded strings representing Opera extensions to be installed
+ in the instance of Opera.
+
+ An of base64-encoded strings
+ representing the extensions to add.
+
+
+
+ Adds a preference for the user-specific profile or "user data directory."
+ If the specified preference already exists, it will be overwritten.
+
+ The name of the preference to set.
+ The value of the preference to set.
+
+
+
+ Adds a preference for the local state file in the user's data directory for Opera.
+ If the specified preference already exists, it will be overwritten.
+
+ The name of the preference to set.
+ The value of the preference to set.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Opera driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+ Also, by default, calling this method adds capabilities to the options object passed to
+ operadriver.exe.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Opera driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+ Indicates whether the capability is to be set as a global
+ capability for the driver instead of a Opera-specific option.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for Opera with these options included as
+ capabilities. This does not copy the options. Further changes will be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for Opera with these options.
+
+
+
+ Provides a mechanism to get elements off the page for test
+
+
+
+
+ Initializes a new instance of the class
+
+ Driver in use
+ Id of the element
+
+
+
+ Represents the known and supported Platforms that WebDriver runs on.
+
+ The class maps closely to the Operating System,
+ but differs slightly, because this class is used to extract information such as
+ program locations and line endings.
+
+
+
+ Any platform. This value is never returned by a driver, but can be used to find
+ drivers with certain capabilities.
+
+
+
+
+ Any version of Microsoft Windows. This value is never returned by a driver,
+ but can be used to find drivers with certain capabilities.
+
+
+
+
+ Any Windows NT-based version of Microsoft Windows. This value is never returned
+ by a driver, but can be used to find drivers with certain capabilities. This value
+ is equivalent to PlatformType.Windows.
+
+
+
+
+ Versions of Microsoft Windows that are compatible with Windows XP.
+
+
+
+
+ Versions of Microsoft Windows that are compatible with Windows Vista.
+
+
+
+
+ Any version of the Macintosh OS
+
+
+
+
+ Any version of the Unix operating system.
+
+
+
+
+ Any version of the Linux operating system.
+
+
+
+
+ A version of the Android mobile operating system.
+
+
+
+
+ Represents the platform on which tests are to be run.
+
+
+
+
+ Initializes a new instance of the class for a specific platform type.
+
+ The platform type.
+
+
+
+ Gets the current platform.
+
+
+
+
+ Gets the major version of the platform operating system.
+
+
+
+
+ Gets the major version of the platform operating system.
+
+
+
+
+ Gets the type of the platform.
+
+
+
+
+ Gets the value of the platform type for transmission using the JSON Wire Protocol.
+
+
+
+
+ Compares the platform to the specified type.
+
+ A value to compare to.
+
+ if the platforms match; otherwise .
+
+
+
+ Returns the string value for this platform type.
+
+ The string value for this platform type.
+
+
+
+ Creates a object from a string name of the platform.
+
+ The name of the platform to create.
+ The Platform object represented by the string name.
+
+
+
+ Describes the kind of proxy.
+
+
+ Keep these in sync with the Firefox preferences numbers:
+ http://kb.mozillazine.org/Network.proxy.type
+
+
+
+
+ Direct connection, no proxy (default on Windows).
+
+
+
+
+ Manual proxy settings (e.g., for httpProxy).
+
+
+
+
+ Proxy automatic configuration from URL.
+
+
+
+
+ Use proxy automatic detection.
+
+
+
+
+ Use the system values for proxy settings (default on Linux).
+
+
+
+
+ No proxy type is specified.
+
+
+
+
+ Describes proxy settings to be used with a driver instance.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with the given proxy settings.
+
+ A dictionary of settings to use with the proxy.
+
+
+
+ Gets or sets the type of proxy.
+
+
+
+
+ Gets the type of proxy as a string for JSON serialization.
+
+
+
+
+ Gets or sets a value indicating whether the proxy uses automatic detection.
+
+
+
+
+ Gets or sets the value of the proxy for the FTP protocol.
+
+
+
+
+ Gets or sets the value of the proxy for the HTTP protocol.
+
+
+
+
+ Gets or sets the value for bypass proxy addresses.
+
+
+
+
+ Gets the semicolon delimited list of address for which to bypass the proxy.
+
+
+
+
+ Gets or sets the URL used for proxy automatic configuration.
+
+
+
+
+ Gets or sets the value of the proxy for the SSL protocol.
+
+
+
+
+ Gets or sets the value of the proxy for the SOCKS protocol.
+
+
+
+
+ Gets or sets the value of username for the SOCKS proxy.
+
+
+
+
+ Gets or sets the value of password for the SOCKS proxy.
+
+
+
+
+ Adds a single address to the list of addresses against which the proxy will not be used.
+
+ The address to add.
+
+
+
+ Adds addresses to the list of addresses against which the proxy will not be used.
+
+ An array of addresses to add.
+
+
+
+ Adds addresses to the list of addresses against which the proxy will not be used.
+
+ An object of arguments to add.
+
+
+
+ Returns a dictionary suitable for serializing to the W3C Specification
+ dialect of the wire protocol.
+
+ A dictionary suitable for serializing to the W3C Specification
+ dialect of the wire protocol.
+
+
+
+ Returns a dictionary suitable for serializing to the OSS dialect of the
+ wire protocol.
+
+ A dictionary suitable for serializing to the OSS dialect of the
+ wire protocol.
+
+
+
+ Base class for managing options specific to a browser driver.
+
+
+
+
+ Creates a new instance of the class.
+
+
+
+
+ Creates a new instance of the class,
+ containing the specified to use in the remote
+ session.
+
+
+ A object that contains values that must be matched
+ by the remote end to create the remote session.
+
+
+ A list of objects that contain values that may be matched
+ by the remote end to create the remote session.
+
+
+
+
+ Gets a value indicating the options that must be matched by the remote end to create a session.
+
+
+
+
+ Gets a value indicating the number of options that may be matched by the remote end to create a session.
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Add a metadata setting to this set of remote session settings.
+
+ The name of the setting to set.
+ The value of the setting.
+
+ The value to be set must be serializable to JSON for transmission
+ across the wire to the remote end. To be JSON-serializable, the value
+ must be a string, a numeric value, a boolean value, an object that
+ implmeents that contains JSON-serializable
+ objects, or a where the keys
+ are strings and the values are JSON-serializable.
+
+
+ Thrown if the setting name is null, the empty string, or one of the
+ reserved names of metadata settings; or if the setting value is not
+ JSON serializable.
+
+
+
+
+ Adds a object to the list of options containing values to be
+ "first matched" by the remote end.
+
+ The to add to the list of "first matched" options.
+
+
+
+ Adds a object containing values that must be matched
+ by the remote end to successfully create a session.
+
+ The that must be matched by
+ the remote end to successfully create a session.
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if this set of capabilities has the capability;
+ otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set in this set of capabilities.
+
+
+
+ Return a dictionary representation of this .
+
+ A representation of this .
+
+
+
+ Return a string representation of the remote session settings to be sent.
+
+ String representation of the remote session settings to be sent.
+
+
+
+ Provides a way to access Safari to run your tests by creating a SafariDriver instance
+
+
+ When the WebDriver object has been instantiated the browser will load. The test can then navigate to the URL under test and
+ start your test.
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new SafariDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ driver.Dispose();
+ }
+ }
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use for this instance.
+
+
+
+ Initializes a new instance of the class using the specified driver service.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe.
+
+ The full path to the directory containing SafariDriver executable.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe and options.
+
+ The full path to the directory containing SafariDriver executable.
+ The to be used with the Safari driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe, options, and command timeout.
+
+ The full path to the directory containing SafariDriver executable.
+ The to be used with the Safari driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use.
+ The to be used with the Safari driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The Safari driver does not allow a file detector to be set,
+ as the server component of the Safari driver (the Safari extension) only
+ allows uploads from the local computer environment. Attempting to set
+ this property has no effect, but does not throw an exception. If you
+ are attempting to run the Safari driver remotely, use
+ in conjunction with a standalone WebDriver server.
+
+
+
+ Exposes the service provided by the native SafariDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the SafariDriver executable.
+ The file name of the SafariDriver executable.
+ The port on which the SafariDriver executable should listen.
+
+
+
+ Gets or sets a value indicating whether to use the default open-source project
+ dialect of the protocol instead of the default dialect compliant with the
+ W3C WebDriver Specification.
+
+
+ This is only valid for versions of the driver for Safari that target Safari 12
+ or later, and will result in an error if used with prior versions of the driver.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
+ For the Safari driver, there is no time for termination
+
+
+
+
+ Gets a value indicating whether the service has a shutdown API that can be called to terminate
+ it gracefully before forcing a termination.
+
+
+
+
+ Gets a value indicating whether the service is responding to HTTP requests.
+
+
+
+
+ Creates a default instance of the SafariDriverService.
+
+ A SafariDriverService that implements default settings.
+
+
+
+ Creates a default instance of the SafariDriverService using a specified path to the ChromeDriver executable.
+
+ The directory containing the ChromeDriver executable.
+ A ChromeDriverService using a random port.
+
+
+
+ Creates a default instance of the SafariDriverService using a specified path to the ChromeDriver executable with the given name.
+
+ The directory containing the ChromeDriver executable.
+ The name of the ChromeDriver executable file.
+ A ChromeDriverService using a random port.
+
+
+
+ Class to manage options specific to
+
+
+ SafariOptions options = new SafariOptions();
+ options.SkipExtensionInstallation = true;
+
+
+ For use with SafariDriver:
+
+
+ SafariDriver driver = new SafariDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets a value indicating whether to have the driver preload the
+ Web Inspector and JavaScript debugger in the background.
+
+
+
+
+ Gets or sets a value indicating whether to have the driver preload the
+ Web Inspector and start a timeline recording in the background.
+
+
+
+
+ Gets or sets a value indicating whether the browser is the technology preview.
+
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Safari driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling where
+ has already been added will overwrite the existing value with the new value in
+
+
+
+ Returns ICapabilities for Safari with these options included as
+ capabilities. This copies the options. Further changes will not be
+ reflected in the returned capabilities.
+
+ The ICapabilities for Safari with these options.
+
+
+
+ Represents possible screen orientations.
+
+
+
+
+ Represents a portrait mode, where the screen is vertical.
+
+
+
+
+ Represents Landscape mode, where the screen is horizontal.
+
+
+
+
+ File format for saving screenshots.
+
+
+
+
+ W3C Portable Network Graphics image format.
+
+
+
+
+ Joint Photgraphic Experts Group image format.
+
+
+
+
+ Graphics Interchange Format image format.
+
+
+
+
+ Tagged Image File Format image format.
+
+
+
+
+ Bitmap image format.
+
+
+
+
+ Represents an image of the page currently loaded in the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The image of the page as a Base64-encoded string.
+
+
+
+ Gets the value of the screenshot image as a Base64-encoded string.
+
+
+
+
+ Gets the value of the screenshot image as an array of bytes.
+
+
+
+
+ Saves the screenshot to a Portable Network Graphics (PNG) file, overwriting the
+ file if it already exists.
+
+ The full path and file name to save the screenshot to.
+
+
+
+ Saves the screenshot to a file, overwriting the file if it already exists.
+
+ The full path and file name to save the screenshot to.
+ A value indicating the format
+ to save the image to.
+
+
+
+ Returns a String that represents the current Object.
+
+ A String that represents the current Object.
+
+
+
+ The exception that is thrown when a reference to an element is no longer valid.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ An implementation of the interface that may have its timeout and polling interval
+ configured on the fly.
+
+ The type of object on which the wait it to be applied.
+
+
+
+ Initializes a new instance of the class.
+
+ The input value to pass to the evaluated conditions.
+
+
+
+ Initializes a new instance of the class.
+
+ The input value to pass to the evaluated conditions.
+ The clock to use when measuring the timeout.
+
+
+
+ Gets or sets how long to wait for the evaluated condition to be true. The default timeout is 500 milliseconds.
+
+
+
+
+ Gets or sets how often the condition should be evaluated. The default timeout is 500 milliseconds.
+
+
+
+
+ Gets or sets the message to be displayed when time expires.
+
+
+
+
+ Configures this instance to ignore specific types of exceptions while waiting for a condition.
+ Any exceptions not whitelisted will be allowed to propagate, terminating the wait.
+
+ The types of exceptions to ignore.
+
+
+
+ Repeatedly applies this instance's input value to the given function until one of the following
+ occurs:
+ the function returns neither null nor falsethe function throws an exception that is not in the list of ignored exception typesthe timeout expires
+ The delegate's expected return type.
+ A delegate taking an object of type T as its parameter, and returning a TResult.
+ The delegate's return value.
+
+
+
+ Throws a with the given message.
+
+ The message of the exception.
+ The last exception thrown by the condition.
+ This method may be overridden to throw an exception that is
+ idiomatic for a particular test infrastructure.
+
+
+
+ An interface describing time handling functions for timeouts.
+
+
+
+
+ Gets the current date and time values.
+
+
+
+
+ Gets the at a specified offset in the future.
+
+ The offset to use.
+ The at the specified offset in the future.
+
+
+
+ Gets a value indicating whether the current date and time is before the specified date and time.
+
+ The date and time values to compare the current date and time values to.
+
+ if the current date and time is before the specified date and time; otherwise, .
+
+
+
+ Interface describing a class designed to wait for a condition.
+
+ The type of object used to detect the condition.
+
+
+
+ Gets or sets how long to wait for the evaluated condition to be true.
+
+
+
+
+ Gets or sets how often the condition should be evaluated.
+
+
+
+
+ Gets or sets the message to be displayed when time expires.
+
+
+
+
+ Configures this instance to ignore specific types of exceptions while waiting for a condition.
+ Any exceptions not whitelisted will be allowed to propagate, terminating the wait.
+
+ The types of exceptions to ignore.
+
+
+
+ Waits until a condition is true or times out.
+
+ The type of result to expect from the condition.
+ A delegate taking a TSource as its parameter, and returning a TResult.
+ If TResult is a boolean, the method returns when the condition is true, and otherwise.
+ If TResult is an object, the method returns the object when the condition evaluates to a value other than .
+ Thrown when TResult is not boolean or an object type.
+
+
+
+ Uses the system clock to calculate time for timeouts.
+
+
+
+
+ Gets the current date and time values.
+
+
+
+
+ Calculates the date and time values after a specific delay.
+
+ The delay after to calculate.
+ The future date and time values.
+
+
+
+ Gets a value indicating whether the current date and time is before the specified date and time.
+
+ The date and time values to compare the current date and time values to.
+
+ if the current date and time is before the specified date and time; otherwise, .
+
+
+
+ Provides the ability to wait for an arbitrary condition during test execution.
+
+
+
+ IWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(3))
+ IWebElement element = wait.Until(driver => driver.FindElement(By.Name("q")));
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The WebDriver instance used to wait.
+ The timeout value indicating how long to wait for the condition.
+
+
+
+ Initializes a new instance of the class.
+
+ An object implementing the interface used to determine when time has passed.
+ The WebDriver instance used to wait.
+ The timeout value indicating how long to wait for the condition.
+ A value indicating how often to check for the condition to be true.
+
+
+
+ The exception that is thrown when the user is unable to set a cookie.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an unhandled alert is present.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and alert text.
+
+ The message that describes the error.
+ The text of the unhandled alert.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Gets the text of the unhandled alert.
+
+
+
+
+ Populates a SerializationInfo with the data needed to serialize the target object.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Represents exceptions that are thrown when an error occurs during actions.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Specifies return values for actions in the driver.
+
+
+
+
+ The action was successful.
+
+
+
+
+ The index specified for the action was out of the acceptable range.
+
+
+
+
+ No collection was specified.
+
+
+
+
+ No string was specified.
+
+
+
+
+ No string length was specified.
+
+
+
+
+ No string wrapper was specified.
+
+
+
+
+ No driver matching the criteria exists.
+
+
+
+
+ No element matching the criteria exists.
+
+
+
+
+ No frame matching the criteria exists.
+
+
+
+
+ The functionality is not supported.
+
+
+
+
+ The specified element is no longer valid.
+
+
+
+
+ The specified element is not displayed.
+
+
+
+
+ The specified element is not enabled.
+
+
+
+
+ An unhandled error occurred.
+
+
+
+
+ An error occurred, but it was expected.
+
+
+
+
+ The specified element is not selected.
+
+
+
+
+ No document matching the criteria exists.
+
+
+
+
+ An unexpected JavaScript error occurred.
+
+
+
+
+ No result is available from the JavaScript execution.
+
+
+
+
+ The result from the JavaScript execution is not recognized.
+
+
+
+
+ No collection matching the criteria exists.
+
+
+
+
+ A timeout occurred.
+
+
+
+
+ A null pointer was received.
+
+
+
+
+ No window matching the criteria exists.
+
+
+
+
+ An illegal attempt was made to set a cookie under a different domain than the current page.
+
+
+
+
+ A request to set a cookie's value could not be satisfied.
+
+
+
+
+ An alert was found open unexpectedly.
+
+
+
+
+ A request was made to switch to an alert, but no alert is currently open.
+
+
+
+
+ An asynchronous JavaScript execution timed out.
+
+
+
+
+ The coordinates of the element are invalid.
+
+
+
+
+ The selector used (CSS/XPath) was invalid.
+
+
+
+
+ A session was not created by the driver
+
+
+
+
+ The requested move was outside the active view port
+
+
+
+
+ The XPath selector was invalid.
+
+
+
+
+ An insecure SSl certificate was specified.
+
+
+
+
+ The element was not interactable
+
+
+
+
+ An invalid argument was passed to the command.
+
+
+
+
+ No cookie was found matching the name requested.
+
+
+
+
+ The driver was unable to capture the screen.
+
+
+
+
+ The click on the element was intercepted by a different element.
+
+
+
+
+ Represents exceptions that are thrown when an error occurs during actions.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an error occurs during an XPath lookup.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Unique class for compression/decompression file. Represents a Zip file.
+
+
+
+
+ Compression method enumeration.
+
+
+
+ Uncompressed storage.
+
+
+ Deflate compression method.
+
+
+
+ Gets a value indicating whether file names and comments should be encoded using UTF-8.
+
+
+
+
+ Gets a value indicating whether to force using the deflate algorithm,
+ even if doing so inflates the stored file.
+
+
+
+
+ Create a new zip storage in a stream.
+
+ The stream to use to create the Zip file.
+ General comment for Zip file.
+ A valid ZipStorer object.
+
+
+
+ Open the existing Zip storage in a stream.
+
+ Already opened stream with zip contents.
+ File access mode for stream operations.
+ A valid ZipStorer object.
+
+
+
+ Add full contents of a file into the Zip storage.
+
+ Compression method used to store the file.
+ Full path of file to add to Zip storage.
+ File name and path as desired in Zip directory.
+ Comment for stored file.
+
+
+
+ Add full contents of a stream into the Zip storage.
+
+ Compression method used to store the stream.
+ Stream object containing the data to store in Zip.
+ File name and path as desired in Zip directory.
+ Modification time of the data to store.
+ Comment for stored file.
+
+
+
+ Updates central directory (if needed) and close the Zip storage.
+
+ This is a required step, unless automatic dispose is used.
+
+
+
+ Read all the file records in the central directory.
+
+ List of all entries in directory.
+
+
+
+ Copy the contents of a stored file into a physical file.
+
+ Entry information of file to extract.
+ Name of file to store uncompressed data.
+
+ if the file is successfully extracted; otherwise, .
+ Unique compression methods are Store and Deflate.
+
+
+
+ Copy the contents of a stored file into an open stream.
+
+ Entry information of file to extract.
+ Stream to store the uncompressed data.
+
+ if the file is successfully extracted; otherwise, .
+ Unique compression methods are Store and Deflate.
+
+
+
+ Closes the Zip file stream.
+
+
+
+
+ Represents an entry in Zip file directory
+
+
+
+ Compression method
+
+
+ Full path and filename as stored in Zip
+
+
+ Original file size
+
+
+ Compressed file size
+
+
+ Offset of header information inside Zip storage
+
+
+ Offset of file inside Zip storage
+
+
+ Size of header information
+
+
+ 32-bit checksum of entire file
+
+
+ Last modification time of file
+
+
+ User comment for file
+
+
+ True if UTF8 encoding for filename and comments, false if default (CP 437)
+
+
+ Overriden method
+ Filename in Zip
+
+
+
\ No newline at end of file
diff --git a/packages/Selenium.WebDriver.3.141.0/lib/net45/WebDriver.dll b/packages/Selenium.WebDriver.3.141.0/lib/net45/WebDriver.dll
new file mode 100644
index 0000000..41d471f
Binary files /dev/null and b/packages/Selenium.WebDriver.3.141.0/lib/net45/WebDriver.dll differ
diff --git a/packages/Selenium.WebDriver.3.141.0/lib/net45/WebDriver.xml b/packages/Selenium.WebDriver.3.141.0/lib/net45/WebDriver.xml
new file mode 100644
index 0000000..64fe9b9
Binary files /dev/null and b/packages/Selenium.WebDriver.3.141.0/lib/net45/WebDriver.xml differ
diff --git a/packages/Selenium.WebDriver.3.141.0/lib/netstandard2.0/WebDriver.dll b/packages/Selenium.WebDriver.3.141.0/lib/netstandard2.0/WebDriver.dll
new file mode 100644
index 0000000..fc4069f
Binary files /dev/null and b/packages/Selenium.WebDriver.3.141.0/lib/netstandard2.0/WebDriver.dll differ
diff --git a/packages/Selenium.WebDriver.3.141.0/lib/netstandard2.0/WebDriver.xml b/packages/Selenium.WebDriver.3.141.0/lib/netstandard2.0/WebDriver.xml
new file mode 100644
index 0000000..a9e8f14
--- /dev/null
+++ b/packages/Selenium.WebDriver.3.141.0/lib/netstandard2.0/WebDriver.xml
@@ -0,0 +1,12083 @@
+
+
+
+ WebDriver
+
+
+
+
+ Provides a mechanism by which to find elements within a document.
+
+ It is possible to create your own locating mechanisms for finding documents.
+ In order to do this,subclass this class and override the protected methods. However,
+ it is expected that that all subclasses rely on the basic finding mechanisms provided
+ through static methods of this class. An example of this can be found in OpenQA.Support.ByIdOrName
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the given functions to find elements.
+
+ A function that takes an object implementing
+ and returns the found .
+ A function that takes an object implementing
+ and returns a of the foundIWebElements.
+ IWebElements/>.
+
+
+
+ Gets or sets the value of the description for this class instance.
+
+
+
+
+ Gets or sets the method used to find a single element matching specified criteria.
+
+
+
+
+ Gets or sets the method used to find all elements matching specified criteria.
+
+
+
+
+ Determines if two instances are equal.
+
+ One instance to compare.
+ The other instance to compare.
+ if the two instances are equal; otherwise, .
+
+
+
+ Determines if two instances are unequal.
+ s
+ One instance to compare.
+ The other instance to compare.
+ if the two instances are not equal; otherwise, .
+
+
+
+ Gets a mechanism to find elements by their ID.
+
+ The ID to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their link text.
+
+ The link text to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their name.
+
+ The name to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by an XPath query.
+ When searching within a WebElement using xpath be aware that WebDriver follows standard conventions:
+ a search prefixed with "//" will search the entire document, not just the children of this current node.
+ Use ".//" to limit your search to the children of this WebElement.
+
+ The XPath query to use.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their CSS class.
+
+ The CSS class to find.
+ A object the driver can use to find the elements.
+ If an element has many classes then this will match against each of them.
+ For example if the value is "one two onone", then the following values for the
+ className parameter will match: "one" and "two".
+
+
+
+ Gets a mechanism to find elements by a partial match on their link text.
+
+ The partial link text to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their tag name.
+
+ The tag name to find.
+ A object the driver can use to find the elements.
+
+
+
+ Gets a mechanism to find elements by their cascading style sheet (CSS) selector.
+
+ The CSS selector to find.
+ A object the driver can use to find the elements.
+
+
+
+ Finds the first element matching the criteria.
+
+ An object to use to search for the elements.
+ The first matching on the current context.
+
+
+
+ Finds all elements matching the criteria.
+
+ An object to use to search for the elements.
+ A of all WebElements
+ matching the current criteria, or an empty list if nothing matches.
+
+
+
+ Gets a string representation of the finder.
+
+ The string displaying the finder content.
+
+
+
+ Determines whether the specified Object is equal
+ to the current Object.
+
+ The Object to compare with the
+ current Object.
+ if the specified Object
+ is equal to the current Object; otherwise,
+ .
+
+
+
+ Serves as a hash function for a particular type.
+
+ A hash code for the current Object.
+
+
+
+ Provides a mechanism to write tests against Chrome
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new ChromeDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ }
+ }
+
+
+
+
+
+ Accept untrusted SSL Certificates
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified options.
+
+ The to be used with the Chrome driver.
+
+
+
+ Initializes a new instance of the class using the specified driver service.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe.
+
+ The full path to the directory containing ChromeDriver.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe and options.
+
+ The full path to the directory containing ChromeDriver.exe.
+ The to be used with the Chrome driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe, options, and command timeout.
+
+ The full path to the directory containing ChromeDriver.exe.
+ The to be used with the Chrome driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use.
+ The to be used with the Chrome driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The Chrome driver does not allow a file detector to be set,
+ as the server component of the Chrome driver (ChromeDriver.exe) only
+ allows uploads from the local computer environment. Attempting to set
+ this property has no effect, but does not throw an exception. If you
+ are attempting to run the Chrome driver remotely, use
+ in conjunction with a standalone WebDriver server.
+
+
+
+ Gets or sets the network condition emulation for Chrome.
+
+
+
+
+ Executes a custom Chrome command.
+
+ Name of the command to execute.
+ Parameters of the command to execute.
+
+
+
+ Exposes the service provided by the native ChromeDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the ChromeDriver executable.
+ The file name of the ChromeDriver executable.
+ The port on which the ChromeDriver executable should listen.
+
+
+
+ Gets or sets the location of the log file written to by the ChromeDriver executable.
+
+
+
+
+ Gets or sets the base URL path prefix for commands (e.g., "wd/url").
+
+
+
+
+ Gets or sets the address of a server to contact for reserving a port.
+
+
+
+
+ Gets or sets the port on which the Android Debug Bridge is listening for commands.
+
+
+
+
+ Gets or sets a value indicating whether to enable verbose logging for the ChromeDriver executable.
+ Defaults to .
+
+
+
+
+ Gets or sets the comma-delimited list of IP addresses that are approved to
+ connect to this instance of the Chrome driver. Defaults to an empty string,
+ which means only the local loopback address can connect.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the ChromeDriverService.
+
+ A ChromeDriverService that implements default settings.
+
+
+
+ Creates a default instance of the ChromeDriverService using a specified path to the ChromeDriver executable.
+
+ The directory containing the ChromeDriver executable.
+ A ChromeDriverService using a random port.
+
+
+
+ Creates a default instance of the ChromeDriverService using a specified path to the ChromeDriver executable with the given name.
+
+ The directory containing the ChromeDriver executable.
+ The name of the ChromeDriver executable file.
+ A ChromeDriverService using a random port.
+
+
+
+ Returns the Chrome driver filename for the currently running platform
+
+ The file name of the Chrome driver service executable.
+
+
+
+ Represents the type-safe options for setting settings for emulating a
+ mobile device in the Chrome browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The user agent string to be used by the browser when emulating
+ a mobile device.
+
+
+
+ Gets or sets the user agent string to be used by the browser when emulating
+ a mobile device.
+
+
+
+
+ Gets or sets the width in pixels to be used by the browser when emulating
+ a mobile device.
+
+
+
+
+ Gets or sets the height in pixels to be used by the browser when emulating
+ a mobile device.
+
+
+
+
+ Gets or sets the pixel ratio to be used by the browser when emulating
+ a mobile device.
+
+
+
+
+ Gets or sets a value indicating whether touch events should be enabled by
+ the browser when emulating a mobile device. Defaults to .
+
+
+
+
+ Provides manipulation of getting and setting network conditions from Chrome.
+
+
+
+
+ Gets or sets a value indicating whether the network is offline. Defaults to .
+
+
+
+
+ Gets or sets the simulated latency of the connection. Typically given in milliseconds.
+
+
+
+
+ Gets or sets the throughput of the network connection in kb/second for downloading.
+
+
+
+
+ Gets or sets the throughput of the network connection in kb/second for uploading.
+
+
+
+
+ Class to manage options specific to
+
+
+ Used with ChromeDriver.exe v17.0.963.0 and higher.
+
+
+
+ ChromeOptions options = new ChromeOptions();
+ options.AddExtensions("\path\to\extension.crx");
+ options.BinaryLocation = "\path\to\chrome";
+
+
+ For use with ChromeDriver:
+
+
+ ChromeDriver driver = new ChromeDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Gets the name of the capability used to store Chrome options in
+ a object.
+
+
+
+
+ Gets or sets the location of the Chrome browser's binary executable file.
+
+
+
+
+ Gets or sets a value indicating whether Chrome should be left running after the
+ ChromeDriver instance is exited. Defaults to .
+
+
+
+
+ Gets the list of arguments appended to the Chrome command line as a string array.
+
+
+
+
+ Gets the list of extensions to be installed as an array of base64-encoded strings.
+
+
+
+
+ Gets or sets the address of a Chrome debugger server to connect to.
+ Should be of the form "{hostname|IP address}:port".
+
+
+
+
+ Gets or sets the directory in which to store minidump files.
+
+
+
+
+ Gets or sets the performance logging preferences for the driver.
+
+
+
+
+ Gets or sets a value indicating whether the instance
+ should use the legacy OSS protocol dialect or a dialect compliant with the W3C
+ WebDriver Specification.
+
+
+
+
+ Adds a single argument to the list of arguments to be appended to the Chrome.exe command line.
+
+ The argument to add.
+
+
+
+ Adds arguments to be appended to the Chrome.exe command line.
+
+ An array of arguments to add.
+
+
+
+ Adds arguments to be appended to the Chrome.exe command line.
+
+ An object of arguments to add.
+
+
+
+ Adds a single argument to be excluded from the list of arguments passed by default
+ to the Chrome.exe command line by chromedriver.exe.
+
+ The argument to exclude.
+
+
+
+ Adds arguments to be excluded from the list of arguments passed by default
+ to the Chrome.exe command line by chromedriver.exe.
+
+ An array of arguments to exclude.
+
+
+
+ Adds arguments to be excluded from the list of arguments passed by default
+ to the Chrome.exe command line by chromedriver.exe.
+
+ An object of arguments to exclude.
+
+
+
+ Adds a path to a packed Chrome extension (.crx file) to the list of extensions
+ to be installed in the instance of Chrome.
+
+ The full path to the extension to add.
+
+
+
+ Adds a list of paths to packed Chrome extensions (.crx files) to be installed
+ in the instance of Chrome.
+
+ An array of full paths to the extensions to add.
+
+
+
+ Adds a list of paths to packed Chrome extensions (.crx files) to be installed
+ in the instance of Chrome.
+
+ An of full paths to the extensions to add.
+
+
+
+ Adds a base64-encoded string representing a Chrome extension to the list of extensions
+ to be installed in the instance of Chrome.
+
+ A base64-encoded string representing the extension to add.
+
+
+
+ Adds a list of base64-encoded strings representing Chrome extensions to the list of extensions
+ to be installed in the instance of Chrome.
+
+ An array of base64-encoded strings representing the extensions to add.
+
+
+
+ Adds a list of base64-encoded strings representing Chrome extensions to be installed
+ in the instance of Chrome.
+
+ An of base64-encoded strings
+ representing the extensions to add.
+
+
+
+ Adds a preference for the user-specific profile or "user data directory."
+ If the specified preference already exists, it will be overwritten.
+
+ The name of the preference to set.
+ The value of the preference to set.
+
+
+
+ Adds a preference for the local state file in the user's data directory for Chrome.
+ If the specified preference already exists, it will be overwritten.
+
+ The name of the preference to set.
+ The value of the preference to set.
+
+
+
+ Allows the Chrome browser to emulate a mobile device.
+
+ The name of the device to emulate. The device name must be a
+ valid device name from the Chrome DevTools Emulation panel.
+ Specifying an invalid device name will not throw an exeption, but
+ will generate an error in Chrome when the driver starts. To unset mobile
+ emulation, call this method with as the argument.
+
+
+
+ Allows the Chrome browser to emulate a mobile device.
+
+ The
+ object containing the settings of the device to emulate.
+ Thrown if the device settings option does
+ not have a user agent string set.
+ Specifying an invalid device name will not throw an exeption, but
+ will generate an error in Chrome when the driver starts. To unset mobile
+ emulation, call this method with as the argument.
+
+
+
+ Adds a type of window that will be listed in the list of window handles
+ returned by the Chrome driver.
+
+ The name of the window type to add.
+ This method can be used to allow the driver to access {webview}
+ elements by adding "webview" as a window type.
+
+
+
+ Adds a list of window types that will be listed in the list of window handles
+ returned by the Chrome driver.
+
+ An array of window types to add.
+
+
+
+ Adds a list of window types that will be listed in the list of window handles
+ returned by the Chrome driver.
+
+ An of window types to add.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Chrome driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+ Also, by default, calling this method adds capabilities to the options object passed to
+ chromedriver.exe.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Chrome driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+ Indicates whether the capability is to be set as a global
+ capability for the driver instead of a Chrome-specific option.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for Chrome with these options included as
+ capabilities. This does not copy the options. Further changes will be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for Chrome with these options.
+
+
+
+ Represents the type-safe options for setting preferences for performance
+ logging in the Chrome browser.
+
+
+
+
+ Gets or sets a value indicating whether Chrome will collect events from the Network domain.
+ Defaults to .
+
+
+
+
+ Gets or sets a value indicating whether Chrome will collect events from the Page domain.
+ Defaults to .
+
+
+
+
+ Gets or sets the interval between Chrome DevTools trace buffer usage events.
+ Defaults to 1000 milliseconds.
+
+ Thrown when an attempt is made to set
+ the value to a time span of less tnan or equal to zero milliseconds.
+
+
+
+ Gets a comma-separated list of the categories for which tracing is enabled.
+
+
+
+
+ Adds a single category to the list of Chrome tracing categories for which events should be collected.
+
+ The category to add.
+
+
+
+ Adds categories to the list of Chrome tracing categories for which events should be collected.
+
+ An array of categories to add.
+
+
+
+ Adds categories to the list of Chrome tracing categories for which events should be collected.
+
+ An object of categories to add.
+
+
+
+ Provides a mechanism to get elements off the page for test
+
+
+
+
+ Initializes a new instance of the class.
+
+ Driver in use
+ Id of the element
+
+
+
+ Represents a cookie in the browser.
+
+
+
+
+ Initializes a new instance of the class with a specific name,
+ value, domain, path and expiration date.
+
+ The name of the cookie.
+ The value of the cookie.
+ The domain of the cookie.
+ The path of the cookie.
+ The expiration date of the cookie.
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value is .
+
+
+
+ Initializes a new instance of the class with a specific name,
+ value, path and expiration date.
+
+ The name of the cookie.
+ The value of the cookie.
+ The path of the cookie.
+ The expiration date of the cookie.
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value is .
+
+
+
+ Initializes a new instance of the class with a specific name,
+ value, and path.
+
+ The name of the cookie.
+ The value of the cookie.
+ The path of the cookie.
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value is .
+
+
+
+ Initializes a new instance of the class with a specific name and value.
+
+ The name of the cookie.
+ The value of the cookie.
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value is .
+
+
+
+ Gets the name of the cookie.
+
+
+
+
+ Gets the value of the cookie.
+
+
+
+
+ Gets the domain of the cookie.
+
+
+
+
+ Gets the path of the cookie.
+
+
+
+
+ Gets a value indicating whether the cookie is secure.
+
+
+
+
+ Gets a value indicating whether the cookie is an HTTP-only cookie.
+
+
+
+
+ Gets the expiration date of the cookie.
+
+
+
+
+ Gets the cookie expiration date in seconds from the defined zero date (01 January 1970 00:00:00 UTC).
+
+ This property only exists so that the JSON serializer can serialize a
+ cookie without resorting to a custom converter.
+
+
+
+ Converts a Dictionary to a Cookie.
+
+ The Dictionary object containing the cookie parameters.
+ A object with the proper parameters set.
+
+
+
+ Creates and returns a string representation of the cookie.
+
+ A string representation of the cookie.
+
+
+
+ Determines whether the specified Object is equal
+ to the current Object.
+
+ The Object to compare with the
+ current Object.
+ if the specified Object
+ is equal to the current Object; otherwise,
+ .
+
+
+
+ Serves as a hash function for a particular type.
+
+ A hash code for the current Object.
+
+
+
+ Represents the default file detector for determining whether a file
+ must be uploaded to a remote server.
+
+
+
+
+ Returns a value indicating whether a specified key sequence represents
+ a file name and path.
+
+ The sequence to test for file existence.
+ This method always returns in this implementation.
+
+
+
+ Specifies the behavior of handling unexpected alerts in the IE driver.
+
+
+
+
+ Indicates the behavior is not set.
+
+
+
+
+ Ignore unexpected alerts, such that the user must handle them.
+
+
+
+
+ Accept unexpected alerts.
+
+
+
+
+ Dismiss unexpected alerts.
+
+
+
+
+ Accepts unexpected alerts and notifies the user that the alert has
+ been accepted by throwing an
+
+
+
+
+ Dismisses unexpected alerts and notifies the user that the alert has
+ been dismissed by throwing an
+
+
+
+
+ Specifies the behavior of waiting for page loads in the driver.
+
+
+
+
+ Indicates the behavior is not set.
+
+
+
+
+ Waits for pages to load and ready state to be 'complete'.
+
+
+
+
+ Waits for pages to load and for ready state to be 'interactive' or 'complete'.
+
+
+
+
+ Does not wait for pages to load, returning immediately.
+
+
+
+
+ Base class for managing options specific to a browser driver.
+
+
+
+
+ Gets or sets the name of the browser.
+
+
+
+
+ Gets or sets the version of the browser.
+
+
+
+
+ Gets or sets the name of the platform on which the browser is running.
+
+
+
+
+ Gets or sets a value indicating whether the browser should accept self-signed
+ SSL certificates.
+
+
+
+
+ Gets or sets the value for describing how unexpected alerts are to be handled in the browser.
+ Defaults to .
+
+
+
+
+ Gets or sets the value for describing how the browser is to wait for pages to load in the browser.
+ Defaults to .
+
+
+
+
+ Gets or sets the to be used with this browser.
+
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the specific browser driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+
+
+
+
+ Returns the for the specific browser driver with these
+ options included as capabilities. This does not copy the options. Further
+ changes will be reflected in the returned capabilities.
+
+ The for browser driver with these options.
+
+
+
+ Compares this object with another to see if there
+ are merge conflicts between them.
+
+ The object to compare with.
+ A object containing the status of the attempted merge.
+
+
+
+ Sets the logging preferences for this driver.
+
+ The type of log for which to set the preference.
+ Known log types can be found in the class.
+ The value to which to set the log level.
+
+
+
+ Returns a string representation of this .
+
+ A string representation of this .
+
+
+
+ Returns the current options as a .
+
+ The current options as a .
+
+
+
+ Adds a known capability to the list of known capabilities and associates it
+ with the type-safe property name of the options class to be used instead.
+
+ The name of the capability.
+ The name of the option property or method to be used instead.
+
+
+
+ Gets a value indicating whether the specified capability name is a known capability name which has a type-safe option.
+
+ The name of the capability to check.
+ if the capability name is known; otherwise .
+
+
+
+ Gets the name of the type-safe option for a given capability name.
+
+ The name of the capability to check.
+ The name of the type-safe option for the given capability name.
+
+
+
+ Generates the logging preferences dictionary for transmission as a desired capability.
+
+ The dictionary containing the logging preferences.
+
+
+
+ Generates the current options as a capabilities object for further processing.
+
+ A value indicating whether to generate capabilities compliant with the W3C WebDriver Specification.
+ A object representing the current options for further processing.
+
+
+
+ Gets or sets a value indicating whether the DriverOptions would conflict when merged with another option
+
+
+
+
+ Gets or sets the name of the name of the option that is in conflict.
+
+
+
+
+ Provides types of capabilities for the DesiredCapabilities object.
+
+
+
+
+ Capability name used for the browser name.
+
+
+
+
+ Capability name used for the browser version.
+
+
+
+
+ Capability name used for the platform name.
+
+
+
+
+ Capability name used for the browser platform.
+
+
+
+
+ Capability name used for the browser version.
+
+
+
+
+ Capability name used to indicate whether JavaScript is enabled for the browser.
+
+
+
+
+ Capability name used to indicate whether the browser can take screenshots.
+
+
+
+
+ Capability name used to indicate whether the browser can handle alerts.
+
+
+
+
+ Capability name used to indicate whether the browser can find elements via CSS selectors.
+
+
+
+
+ Capability name used for the browser proxy.
+
+
+
+
+ Capability name used to indicate whether the browser supports rotation.
+
+
+
+
+ Capability name used to indicate whether the browser accepts SSL certificates.
+
+
+
+
+ Capability name used to indicate whether the browser accepts SSL certificates on W3C Endpoints
+
+
+
+
+ Capability name used to indicate whether the browser uses native events.
+
+
+
+
+ Capability name used to indicate how the browser handles unexpected alerts.
+
+
+
+
+ Capability name used to indicate how the browser handles unhandled user prompts.
+
+
+
+
+ Capability name used to indicate the page load strategy for the browser.
+
+
+
+
+ Capability name used to indicate the logging preferences for the session.
+
+
+
+
+ Capability name used to disable the check for overlapping elements.
+
+
+
+
+ Capability name used to enable the profiling log for the session.
+
+
+
+
+ Capability name used to indicate whether the driver supports geolocation context.
+
+
+
+
+ Capability name used to indicate whether the driver supports application cache.
+
+
+
+
+ Capability name used to indicate whether the driver supports web storage.
+
+
+
+
+ Capability name used to indicate whether the driver supports setting the browser window's size and position.
+
+
+
+
+ Capability name used to get or set timeout values when creating a session.
+
+
+
+
+ Provides a way to send commands to the remote server
+
+
+
+
+ Initializes a new instance of the class using a command name and a JSON-encoded string for the parameters.
+
+ Name of the command
+ Parameters for the command as a JSON-encoded string.
+
+
+
+ Initializes a new instance of the class for a Session
+
+ Session ID the driver is using
+ Name of the command
+ Parameters for that command
+
+
+
+ Gets the SessionID of the command
+
+
+
+
+ Gets the command name
+
+
+
+
+ Gets the parameters of the command
+
+
+
+
+ Gets the parameters of the command as a JSON-encoded string.
+
+
+
+
+ Returns a string of the Command object
+
+ A string representation of the Command Object
+
+
+
+ Gets the command parameters as a , with a string key, and an object value.
+
+ The JSON-encoded string representing the command parameters.
+ A with a string keys, and an object value.
+
+
+
+ Provides the execution information for a .
+
+
+
+
+ POST verb for the command info
+
+
+
+
+ GET verb for the command info
+
+
+
+
+ DELETE verb for the command info
+
+
+
+
+ Initializes a new instance of the class
+
+ Method of the Command
+ Relative URL path to the resource used to execute the command
+
+
+
+ Gets the URL representing the path to the resource.
+
+
+
+
+ Gets the HTTP method associated with the command.
+
+
+
+
+ Creates the full URI associated with this command, substituting command
+ parameters for tokens in the URI template.
+
+ The base URI associated with the command.
+ The command containing the parameters with which
+ to substitute the tokens in the template.
+ The full URI for the command, with the parameters of the command
+ substituted for the tokens in the template.
+
+
+
+ Holds the information about all commands specified by the JSON wire protocol.
+ This class cannot be inherited, as it is intended to be a singleton, and
+ allowing subclasses introduces the possibility of multiple instances.
+
+
+
+
+ Initializes a new instance of the class.
+ Protected accessibility prevents a default instance from being created.
+
+
+
+
+ Gets the level of the W3C WebDriver specification that this repository supports.
+
+
+
+
+ Gets the for a .
+
+ The for which to get the information.
+ The for the specified command.
+
+
+
+ Tries to add a command to the list of known commands.
+
+ Name of the command.
+ The command information.
+ if the new command has been added successfully; otherwise, .
+
+ This method is used by WebDriver implementations to add additional custom driver-specific commands.
+ This method will not overwrite existing commands for a specific name, and will return
+ in that case.
+
+
+
+
+ Initializes the dictionary of commands for the CommandInfoRepository
+
+
+
+
+ Class to Create the capabilities of the browser you require for .
+ If you wish to use default values use the static methods
+
+
+
+
+ Initializes a new instance of the class
+
+ Name of the browser e.g. firefox, internet explorer, safari
+ Version of the browser
+ The platform it works on
+
+
+
+ Initializes a new instance of the class
+
+
+
+
+ Initializes a new instance of the class
+
+ Dictionary of items for the remote driver
+
+
+ DesiredCapabilities capabilities = new DesiredCapabilities(new Dictionary]]>(){["browserName","firefox"],["version",string.Empty],["javaScript",true]});
+
+
+
+
+
+ Initializes a new instance of the class
+
+ Name of the browser e.g. firefox, internet explorer, safari
+ Version of the browser
+ The platform it works on
+ Sets a value indicating whether the capabilities are
+ compliant with the W3C WebDriver specification.
+
+
+
+ Gets the browser name
+
+
+
+
+ Gets or sets the platform
+
+
+
+
+ Gets the browser version
+
+
+
+
+ Gets or sets a value indicating whether the browser accepts SSL certificates.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if the browser has the capability; otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set on the browser.
+
+
+
+ Sets a capability of the browser.
+
+ The capability to get.
+ The value for the capability.
+
+
+
+ Return HashCode for the DesiredCapabilities that has been created
+
+ Integer of HashCode generated
+
+
+
+ Return a string of capabilities being used
+
+ String of capabilities being used
+
+
+
+ Compare two DesiredCapabilities and will return either true or false
+
+ DesiredCapabilities you wish to compare
+ true if they are the same or false if they are not
+
+
+
+ Returns a read-only version of this capabilities object.
+
+ A read-only version of this capabilities object.
+
+
+
+ Values describing the list of commands understood by a remote server using the JSON wire protocol.
+
+
+
+
+ Represents the Define Driver Mapping command
+
+
+
+
+ Represents the Status command.
+
+
+
+
+ Represents a New Session command
+
+
+
+
+ Represents the Get Session List command
+
+
+
+
+ Represents the Get Session Capabilities command
+
+
+
+
+ Represents a Browser close command
+
+
+
+
+ Represents a browser quit command
+
+
+
+
+ Represents a GET command
+
+
+
+
+ Represents a Browser going back command
+
+
+
+
+ Represents a Browser going forward command
+
+
+
+
+ Represents a Browser refreshing command
+
+
+
+
+ Represents adding a cookie command
+
+
+
+
+ Represents getting all cookies command
+
+
+
+
+ Represents getting cookie command
+
+
+
+
+ Represents deleting a cookie command
+
+
+
+
+ Represents Deleting all cookies command
+
+
+
+
+ Represents FindElement command
+
+
+
+
+ Represents FindElements command
+
+
+
+
+ Represents FindChildElement command
+
+
+
+
+ Represents FindChildElements command
+
+
+
+
+ Describes an element
+
+
+
+
+ Represents ClearElement command
+
+
+
+
+ Represents ClickElement command
+
+
+
+
+ Represents SendKeysToElements command
+
+
+
+
+ Represents TapElement command
+
+
+
+
+ Represents SubmitElement command
+
+
+
+
+ Represents GetCurrentWindowHandle command
+
+
+
+
+ Represents GetWindowHandles command
+
+
+
+
+ Represents SwitchToWindow command
+
+
+
+
+ Represents SwitchToFrame command
+
+
+
+
+ Represents SwitchToParentFrame command
+
+
+
+
+ Represents GetActiveElement command
+
+
+
+
+ Represents GetCurrentUrl command
+
+
+
+
+ Represents GetPageSource command
+
+
+
+
+ Represents GetTitle command
+
+
+
+
+ Represents ExecuteScript command
+
+
+
+
+ Represents ExecuteAsyncScript command
+
+
+
+
+ Represents GetElementText command
+
+
+
+
+ Represents GetElementTagName command
+
+
+
+
+ Represents IsElementSelected command
+
+
+
+
+ Represents IsElementEnabled command
+
+
+
+
+ Represents IsElementDisplayed command
+
+
+
+
+ Represents GetElementLocation command
+
+
+
+
+ Represents GetElementLocationOnceScrolledIntoView command
+
+
+
+
+ Represents GetElementSize command
+
+
+
+
+ Represents GetElementRect command
+
+
+
+
+ Represents GetElementAttribute command
+
+
+
+
+ Represents GetElementProperty command
+
+
+
+
+ Represents GetElementValueOfCSSProperty command
+
+
+
+
+ Represents ElementEquals command
+
+
+
+
+ Represents Screenshot command
+
+
+
+
+ Represents the ElementScreenshot command
+
+
+
+
+ Represents GetOrientation command
+
+
+
+
+ Represents SetOrientation command
+
+
+
+
+ Represents GetWindowSize command
+
+
+
+
+ Represents SetWindowSize command
+
+
+
+
+ Represents GetWindowPosition command
+
+
+
+
+ Represents SetWindowPosition command
+
+
+
+
+ Represents GetWindowRect command
+
+
+
+
+ Represents SetWindowRect command
+
+
+
+
+ Represents MaximizeWindow command
+
+
+
+
+ Represents MinimizeWindow command
+
+
+
+
+ Represents FullScreenWindow command
+
+
+
+
+ Represents the DismissAlert command
+
+
+
+
+ Represents the AcceptAlert command
+
+
+
+
+ Represents the GetAlertText command
+
+
+
+
+ Represents the SetAlertValue command
+
+
+
+
+ Represents the Authenticate command
+
+
+
+
+ Represents the ImplicitlyWait command
+
+
+
+
+ Represents the SetAsyncScriptTimeout command
+
+
+
+
+ Represents the SetTimeout command
+
+
+
+
+ Represents the SetTimeout command
+
+
+
+
+ Represents the Actions command.
+
+
+
+
+ Represents the CancelActions command.
+
+
+
+
+ Represents the MouseClick command.
+
+
+
+
+ Represents the MouseDoubleClick command.
+
+
+
+
+ Represents the MouseDown command.
+
+
+
+
+ Represents the MouseUp command.
+
+
+
+
+ Represents the MouseMoveTo command.
+
+
+
+
+ Represents the SendKeysToActiveElement command.
+
+
+
+
+ Represents the UploadFile command.
+
+
+
+
+ Represents the TouchSingleTap command.
+
+
+
+
+ Represents the TouchPress command.
+
+
+
+
+ Represents the TouchRelease command.
+
+
+
+
+ Represents the TouchMove command.
+
+
+
+
+ Represents the TouchScroll command.
+
+
+
+
+ Represents the TouchDoubleTap command.
+
+
+
+
+ Represents the TouchLongPress command.
+
+
+
+
+ Represents the TouchFlick command.
+
+
+
+
+ Represents the GetLocation command.
+
+
+
+
+ Represents the SetLocation command.
+
+
+
+
+ Represents the GetAppCache command.
+
+
+
+
+ Represents the application cache GetStatus command.
+
+
+
+
+ Represents the ClearAppCache command.
+
+
+
+
+ Represents the GetLocalStorageItem command.
+
+
+
+
+ Represents the GetLocalStorageKeys command.
+
+
+
+
+ Represents the SetLocalStorageItem command.
+
+
+
+
+ Represents the RemoveLocalStorageItem command.
+
+
+
+
+ Represents the ClearLocalStorage command.
+
+
+
+
+ Represents the GetLocalStorageSize command.
+
+
+
+
+ Represents the GetSessionStorageItem command.
+
+
+
+
+ Represents the GetSessionStorageKeys command.
+
+
+
+
+ Represents the SetSessionStorageItem command.
+
+
+
+
+ Represents the RemoveSessionStorageItem command.
+
+
+
+
+ Represents the ClearSessionStorage command.
+
+
+
+
+ Represents the GetSessionStorageSize command.
+
+
+
+
+ Represents the GetAvailableLogTypes command.
+
+
+
+
+ Represents the GetLog command.
+
+
+
+
+ Provides a mechanism to execute commands on the browser
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that drives the browser.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class.
+
+ The that drives the browser.
+ The maximum amount of time to wait for each command.
+ if the KeepAlive header should be sent
+ with HTTP requests; otherwise, .
+
+
+
+ Gets the object associated with this executor.
+
+
+
+
+ Gets the that sends commands to the remote
+ end WebDriver implementation.
+
+
+
+
+ Executes a command
+
+ The command you wish to execute
+ A response from the browser
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Releases the unmanaged resources used by the and
+ optionally releases the managed resources.
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Provides a way to store errors from a response
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified values.
+
+ A containing names and values of
+ the properties of this .
+
+
+
+ Gets or sets the message from the response
+
+
+
+
+ Gets or sets the class name that threw the error
+
+
+
+
+ Gets or sets the screenshot of the error
+
+
+
+
+ Gets or sets the stack trace of the error
+
+
+
+
+ Provides a way of executing Commands over HTTP
+
+
+
+
+ Initializes a new instance of the class
+
+ Address of the WebDriver Server
+ The timeout within which the server must respond.
+
+
+
+ Initializes a new instance of the class
+
+ Address of the WebDriver Server
+ The timeout within which the server must respond.
+ if the KeepAlive header should be sent
+ with HTTP requests; otherwise, .
+
+
+
+ Gets the repository of objects containin information about commands.
+
+
+
+
+ Gets or sets an object to be used to proxy requests
+ between this and the remote end WebDriver
+ implementation.
+
+
+
+
+ Gets or sets a value indicating whether keep-alive is enabled for HTTP
+ communication between this and the
+ remote end WebDriver implementation.
+
+
+
+
+ Executes a command
+
+ The command you wish to execute
+ A response from the browser
+
+
+
+ Raises the event.
+
+ A that contains the event data.
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Releases the unmanaged resources used by the and
+ optionally releases the managed resources.
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Provides a way to send commands to the remote server
+
+
+
+
+ Gets the repository of objects containin information about commands.
+
+
+
+
+ Executes a command
+
+ The command you wish to execute
+ A response from the browser
+
+
+
+ Provides a way to start a server that understands remote commands
+
+
+
+
+ Starts the server.
+
+
+
+
+ Interface indicating the driver has a Session ID.
+
+
+
+
+ Gets the session ID of the current session.
+
+
+
+
+ Provides a way to convert a Char array to JSON
+
+
+
+
+ Checks if the object can be converted
+
+ Type of the object to see if can be converted
+ True if can be converted else false
+
+
+
+ Writes the Object to JSON
+
+ A JSON Writer object
+ Object to be converted
+ JSON Serializer object instance
+
+
+
+ Method not implemented
+
+ JSON Reader instance
+ Object type being read
+ Existing Value to be read
+ JSON Serializer instance
+ Object from JSON
+
+
+
+ Converts the response to JSON
+
+
+
+
+ Checks if the object can be converted
+
+ The object to be converted
+ True if it can be converted or false if can't be
+
+
+
+ Process the reader to return an object from JSON
+
+ A JSON reader
+ Type of the object
+ The existing value of the object
+ JSON Serializer
+ Object created from JSON
+
+
+
+ Writes objects to JSON. Currently not implemented
+
+ JSON Writer Object
+ Value to be written
+ JSON Serializer
+
+
+
+ Represents a file detector for determining whether a file
+ must be uploaded to a remote server.
+
+
+
+
+ Returns a value indicating whether a specified key sequence represents
+ a file name and path.
+
+ The sequence to test for file existence.
+ if the key sequence represents a file; otherwise, .
+
+
+
+ Class to Create the capabilities of the browser you require for .
+ If you wish to use default values use the static methods
+
+
+
+
+ Prevents a default instance of the class.
+
+
+
+
+ Gets the browser name
+
+
+
+
+ Gets or sets the platform
+
+
+
+
+ Gets the browser version
+
+
+
+
+ Gets or sets a value indicating whether the browser accepts SSL certificates.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if the browser has the capability; otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set on the browser.
+
+
+
+ Converts the object to a .
+
+ The containing the capabilities.
+
+
+
+ Return HashCode for the DesiredCapabilities that has been created
+
+ Integer of HashCode generated
+
+
+
+ Return a string of capabilities being used
+
+ String of capabilities being used
+
+
+
+ Compare two DesiredCapabilities and will return either true or false
+
+ DesiredCapabilities you wish to compare
+ true if they are the same or false if they are not
+
+
+
+ Defines the interface through which the user can manipulate JavaScript alerts.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the alerts will be managed.
+
+
+
+ Gets the text of the alert.
+
+
+
+
+ Dismisses the alert.
+
+
+
+
+ Accepts the alert.
+
+
+
+
+ Sends keys to the alert.
+
+ The keystrokes to send.
+
+
+
+ Sets the user name and password in an alert prompting for credentials.
+
+ The user name to set.
+ The password to set.
+
+
+
+ Defines the interface through which the user can manipulate application cache.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the application cache will be managed.
+
+
+
+ Gets the current state of the application cache.
+
+
+
+
+ Defines an interface allowing the user to manipulate cookies on the current page.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The driver that is currently in use
+
+
+
+ Gets all cookies defined for the current page.
+
+
+
+
+ Method for creating a cookie in the browser
+
+ that represents a cookie in the browser
+
+
+
+ Delete the cookie by passing in the name of the cookie
+
+ The name of the cookie that is in the browser
+
+
+
+ Delete a cookie in the browser by passing in a copy of a cookie
+
+ An object that represents a copy of the cookie that needs to be deleted
+
+
+
+ Delete All Cookies that are present in the browser
+
+
+
+
+ Method for returning a getting a cookie by name
+
+ name of the cookie that needs to be returned
+ A Cookie from the name
+
+
+
+ Method for getting a Collection of Cookies that are present in the browser
+
+ ReadOnlyCollection of Cookies in the browser
+
+
+
+ Defines the interface through which the user can discover where an element is on the screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to be located.
+
+
+
+ Gets the location of an element in absolute screen coordinates.
+
+
+
+
+ Gets the location of an element relative to the origin of the view port.
+
+
+
+
+ Gets the location of an element's position within the HTML DOM.
+
+
+
+
+ Gets a locator providing a user-defined location for this element.
+
+
+
+
+ Defines the interface through which the user can execute advanced keyboard interactions.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the keyboard will be managed.
+
+
+
+ Sends a sequence of keystrokes to the target.
+
+ A string representing the keystrokes to send.
+
+
+
+ Presses a key.
+
+ The key value representing the key to press.
+ The key value must be one of the values from the class.
+
+
+
+ Releases a key.
+
+ The key value representing the key to release.
+ The key value must be one of the values from the class.
+
+
+
+ Defines the interface through which the user can manipulate local storage.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the application cache will be managed.
+
+
+
+ Gets the number of items in local storage.
+
+
+
+
+ Returns local storage value given a key.
+
+ The key value for the item in storage.
+ A local storage value given a key, if present, otherwise returns null.
+
+
+
+ Returns a read-only list of local storage keys.
+
+ A read-only list of local storage keys.
+
+
+
+ Sets local storage entry using given key/value pair.
+
+ local storage key
+ local storage value
+
+
+
+ Removes local storage entry for the given key.
+
+ key to be removed from the list
+ Response value for the given key.
+
+
+
+ Removes all entries from the local storage.
+
+
+
+
+ Defines the interface through which the user can manipulate browser location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the application cache will be managed.
+
+
+
+ Gets or sets a value indicating the physical location of the browser.
+
+
+
+
+ Provides a mechanism for examining logs for the driver during the test.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Instance of the driver currently in use
+
+
+
+ Gets the list of available log types for this driver.
+
+
+
+
+ Gets the set of objects for a specified log.
+
+ The log for which to retrieve the log entries.
+ Log types can be found in the class.
+ The list of objects for the specified log.
+
+
+
+ Defines the interface through which the user can execute advanced mouse interactions.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the mouse will be managed.
+
+
+
+ Clicks at a set of coordinates using the primary mouse button.
+
+ An describing where to click.
+
+
+
+ Double-clicks at a set of coordinates.
+
+ A describing where to double-click.
+
+
+
+ Presses the primary mouse button at a set of coordinates.
+
+ A describing where to press the mouse button down.
+
+
+
+ Releases the primary mouse button at a set of coordinates.
+
+ A describing where to release the mouse button.
+
+
+
+ Moves the mouse to the specified set of coordinates.
+
+ A describing where to move the mouse to.
+
+
+
+ Moves the mouse to the specified set of coordinates.
+
+ A describing where to click.
+ A horizontal offset from the coordinates specified in .
+ A vertical offset from the coordinates specified in .
+
+
+
+ Clicks at a set of coordinates using the secondary mouse button.
+
+ A describing where to click.
+
+
+
+ Provides a mechanism for Navigating with the driver.
+
+
+
+
+ Initializes a new instance of the class
+
+ Driver in use
+
+
+
+ Move the browser back
+
+
+
+
+ Move the browser forward
+
+
+
+
+ Navigate to a url for your test
+
+ String of where you want the browser to go to
+
+
+
+ Navigate to a url for your test
+
+ Uri object of where you want the browser to go to
+
+
+
+ Refresh the browser
+
+
+
+
+ Provides a mechanism for setting options needed for the driver during the test.
+
+
+
+
+ Initializes a new instance of the class
+
+ Instance of the driver currently in use
+
+
+
+ Gets an object allowing the user to manipulate cookies on the page.
+
+
+
+
+ Gets an object allowing the user to manipulate the currently-focused browser window.
+
+ "Currently-focused" is defined as the browser window having the window handle
+ returned when IWebDriver.CurrentWindowHandle is called.
+
+
+
+ Gets an object allowing the user to examine the logs of the current driver instance.
+
+
+
+
+ Provides access to the timeouts defined for this driver.
+
+ An object implementing the interface.
+
+
+
+ Defines the interface through which the user can manipulate session storage.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The driver instance.
+
+
+
+ Gets the number of items in session storage.
+
+
+
+
+ Returns session storage value given a key.
+
+ The key of the item in storage.
+ A session storage value given a key, if present, otherwise return null.
+
+
+
+ Returns a read-only list of session storage keys.
+
+ A read-only list of session storage keys.
+
+
+
+ Sets session storage entry using given key/value pair.
+
+ Session storage key
+ Session storage value
+
+
+
+ Removes session storage entry for the given key.
+
+ key to be removed from the list
+ Response value for the given key.
+
+
+
+ Removes all entries from the session storage.
+
+
+
+
+ Provides a mechanism for finding elements on the page with locators.
+
+
+
+
+ Initializes a new instance of the class
+
+ The driver that is currently in use
+
+
+
+ Move to a different frame using its index
+
+ The index of the
+ A WebDriver instance that is currently in use
+
+
+
+ Move to different frame using its name
+
+ name of the frame
+ A WebDriver instance that is currently in use
+
+
+
+ Move to a frame element.
+
+ a previously found FRAME or IFRAME element.
+ A WebDriver instance that is currently in use.
+
+
+
+ Select the parent frame of the currently selected frame.
+
+ An instance focused on the specified frame.
+
+
+
+ Change to the Window by passing in the name
+
+ Window handle or name of the window that you wish to move to
+ A WebDriver instance that is currently in use
+
+
+
+ Change the active frame to the default
+
+ Element of the default
+
+
+
+ Finds the active element on the page and returns it
+
+ Element that is active
+
+
+
+ Switches to the currently active modal dialog for this particular driver instance.
+
+ A handle to the dialog.
+
+
+
+ Defines the interface through which the user can define timeouts.
+
+
+
+
+ Initializes a new instance of the class
+
+ The driver that is currently in use
+
+
+
+ Gets or sets the implicit wait timeout, which is the amount of time the
+ driver should wait when searching for an element if it is not immediately
+ present.
+
+
+ When searching for a single element, the driver should poll the page
+ until the element has been found, or this timeout expires before throwing
+ a . When searching for multiple elements,
+ the driver should poll the page until at least one element has been found
+ or this timeout has expired.
+
+ Increasing the implicit wait timeout should be used judiciously as it
+ will have an adverse effect on test run time, especially when used with
+ slower location strategies like XPath.
+
+
+
+
+
+ Gets or sets the asynchronous script timeout, which is the amount
+ of time the driver should wait when executing JavaScript asynchronously.
+ This timeout only affects the
+ method.
+
+
+
+
+ Gets or sets the page load timeout, which is the amount of time the driver
+ should wait for a page to load when setting the
+ property.
+
+
+
+
+ Defines the interface through which the user can execute advanced touch screen interactions.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The for which the touch screen will be managed.
+
+
+
+ Allows the execution of single tap on the screen, analogous to click using a Mouse.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Allows the execution of the gesture 'down' on the screen. It is typically the first of a
+ sequence of touch gestures.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Allows the execution of the gesture 'up' on the screen. It is typically the last of a
+ sequence of touch gestures.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Allows the execution of the gesture 'move' on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Creates a scroll gesture that starts on a particular screen location.
+
+ The object representing the location on the screen
+ where the scroll starts, usually an .
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Creates a scroll gesture for a particular x and y offset.
+
+ The horizontal offset relative to the view port.
+ The vertical offset relative to the view port.
+
+
+
+ Allows the execution of double tap on the screen, analogous to click using a Mouse.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Allows the execution of a long press gesture on the screen.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Creates a flick gesture for the current view.
+
+ The horizontal speed in pixels per second.
+ The vertical speed in pixels per second.
+
+
+
+ Creates a flick gesture for the current view starting at a specific location.
+
+ The object representing the location on the screen
+ where the scroll starts, usually an .
+ The x offset relative to the viewport.
+ The y offset relative to the viewport.
+ The speed in pixels per second.
+
+
+
+ Provides a way to use the driver through
+
+ ///
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new RemoteWebDriver(new Uri("http://127.0.0.1:4444/wd/hub"),DesiredCapabilities.InternetExplorer());
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ }
+ }
+
+
+
+
+
+ The default command timeout for HTTP requests in a RemoteWebDriver instance.
+
+
+
+
+ Initializes a new instance of the class. This constructor defaults proxy to http://127.0.0.1:4444/wd/hub
+
+ An object containing the desired capabilities of the browser.
+
+
+
+ Initializes a new instance of the class. This constructor defaults proxy to http://127.0.0.1:4444/wd/hub
+
+ An object containing the desired capabilities of the browser.
+
+
+
+ Initializes a new instance of the class. This constructor defaults proxy to http://127.0.0.1:4444/wd/hub
+
+ URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
+ An object containing the desired capabilities of the browser.
+
+
+
+ Initializes a new instance of the class
+
+ URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
+ An object containing the desired capabilities of the browser.
+
+
+
+ Initializes a new instance of the class using the specified remote address, desired capabilities, and command timeout.
+
+ URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
+ An object containing the desired capabilities of the browser.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class
+
+ An object which executes commands for the driver.
+ An object containing the desired capabilities of the browser.
+
+
+
+ Gets or sets the URL the browser is currently displaying.
+
+
+
+
+
+
+
+ Gets the title of the current browser window.
+
+
+
+
+ Gets the source of the page last loaded by the browser.
+
+
+
+
+ Gets the current window handle, which is an opaque handle to this
+ window that uniquely identifies it within this driver instance.
+
+
+
+
+ Gets the window handles of open browser windows.
+
+
+
+
+ Gets an object for sending keystrokes to the browser.
+
+
+
+
+ Gets an object for sending mouse commands to the browser.
+
+
+
+
+ Gets a value indicating whether web storage is supported for this driver.
+
+
+
+
+ Gets an object for managing web storage.
+
+
+
+
+ Gets a value indicating whether manipulating the application cache is supported for this driver.
+
+
+
+
+ Gets an object for managing application cache.
+
+
+
+
+ Gets a value indicating whether manipulating geolocation is supported for this driver.
+
+
+
+
+ Gets an object for managing browser location.
+
+
+
+
+ Gets the capabilities that the RemoteWebDriver instance is currently using
+
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+
+
+
+ Gets the for the current session of this driver.
+
+
+
+
+ Gets a value indicating whether this object is a valid action executor.
+
+
+
+
+ Gets a value indicating whether or not the driver is compliant with the W3C WebDriver specification.
+
+
+
+
+ Gets the which executes commands for this driver.
+
+
+
+
+ Gets or sets the factory object used to create instances of
+ or its subclasses.
+
+
+
+
+ Finds the first element in the page that matches the object
+
+ By mechanism to find the object
+ IWebElement object so that you can interact with that object
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ IWebElement elem = driver.FindElement(By.Name("q"));
+
+
+
+
+
+ Finds the elements on the page by using the object and returns a ReadOnlyCollection of the Elements on the page
+
+ By mechanism to find the element
+ ReadOnlyCollection of IWebElement
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ ReadOnlyCollection]]> classList = driver.FindElements(By.ClassName("class"));
+
+
+
+
+
+ Closes the Browser
+
+
+
+
+ Close the Browser and Dispose of WebDriver
+
+
+
+
+ Method For getting an object to set the Speed
+
+ Returns an IOptions object that allows the driver to set the speed and cookies and getting cookies
+
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ driver.Manage().GetCookies();
+
+
+
+
+
+ Method to allow you to Navigate with WebDriver
+
+ Returns an INavigation Object that allows the driver to navigate in the browser
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+
+
+
+
+
+ Method to give you access to switch frames and windows
+
+ Returns an Object that allows you to Switch Frames and Windows
+
+
+ IWebDriver driver = new InternetExplorerDriver();
+ driver.SwitchTo().Frame("FrameName");
+
+
+
+
+
+ Executes JavaScript in the context of the currently selected frame or window
+
+ The JavaScript code to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+
+ Executes JavaScript asynchronously in the context of the currently selected frame or window.
+
+ The JavaScript code to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+
+ Finds the first element in the page that matches the ID supplied
+
+ ID of the element
+ IWebElement object so that you can interact with that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementById("id")
+
+
+
+
+
+ Finds the first element in the page that matches the ID supplied
+
+ ID of the Element
+ ReadOnlyCollection of Elements that match the object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsById("id")
+
+
+
+
+
+ Finds the first element in the page that matches the CSS Class supplied
+
+ className of the
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementByClassName("classname")
+
+
+
+
+
+ Finds a list of elements that match the class name supplied
+
+ CSS class Name on the element
+ ReadOnlyCollection of IWebElement object so that you can interact with those objects
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByClassName("classname")
+
+
+
+
+
+ Finds the first of elements that match the link text supplied
+
+ Link text of element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByLinkText("linktext")
+
+
+
+
+
+ Finds a list of elements that match the link text supplied
+
+ Link text of element
+ ReadOnlyCollection]]> object so that you can interact with those objects
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByClassName("classname")
+
+
+
+
+
+ Finds the first of elements that match the part of the link text supplied
+
+ part of the link text
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByPartialLinkText("partOfLink")
+
+
+
+
+
+ Finds a list of elements that match the class name supplied
+
+ part of the link text
+ ReadOnlyCollection]]> objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByPartialLinkText("partOfTheLink")
+
+
+
+
+
+ Finds the first of elements that match the name supplied
+
+ Name of the element on the page
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ elem = driver.FindElementsByName("name")
+
+
+
+
+
+ Finds a list of elements that match the name supplied
+
+ Name of element
+ ReadOnlyCollect of IWebElement objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByName("name")
+
+
+
+
+
+ Finds the first of elements that match the DOM Tag supplied
+
+ DOM tag Name of the element being searched
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByTagName("tag")
+
+
+
+
+
+ Finds a list of elements that match the DOM Tag supplied
+
+ DOM tag Name of element being searched
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByTagName("tag")
+
+
+
+
+
+ Finds the first of elements that match the XPath supplied
+
+ xpath to the element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByXPath("//table/tbody/tr/td/a");
+
+
+
+
+
+ Finds a list of elements that match the XPath supplied
+
+ xpath to the element
+ ReadOnlyCollection of IWebElement objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByXpath("//tr/td/a")
+
+
+
+
+
+ Finds the first element matching the specified CSS selector.
+
+ The CSS selector to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified CSS selector.
+
+ The CSS selector to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Gets a object representing the image of the page on the screen.
+
+ A object containing the image.
+
+
+
+ Dispose the RemoteWebDriver Instance
+
+
+
+
+ Performs the specified list of actions with this action executor.
+
+ The list of action sequences to perform.
+
+
+
+ Resets the input state of the action executor.
+
+
+
+
+ Escapes invalid characters in a CSS selector.
+
+ The selector to escape.
+ The selector with invalid characters escaped.
+
+
+
+ Executes commands with the driver
+
+ Command that needs executing
+ Parameters needed for the command
+ WebDriver Response
+
+
+
+ Find the element in the response
+
+ Response from the browser
+ Element from the page
+
+
+
+ Finds the elements that are in the response
+
+ Response from the browser
+ Collection of elements
+
+
+
+ Stops the client from running
+
+ if its in the process of disposing
+
+
+
+ Starts a session with the driver
+
+ Capabilities of the browser
+
+
+
+ Gets the capabilities as a dictionary supporting legacy drivers.
+
+ The dictionary to return.
+ A Dictionary consisting of the capabilities requested.
+ This method is only transitional. Do not rely on it. It will be removed
+ once browser driver capability formats stabilize.
+
+
+
+ Gets the capabilities as a dictionary.
+
+ The dictionary to return.
+ A Dictionary consisting of the capabilities requested.
+ This method is only transitional. Do not rely on it. It will be removed
+ once browser driver capability formats stabilize.
+
+
+
+ Executes a command with this driver .
+
+ A value representing the command to execute.
+ A containing the names and values of the parameters of the command.
+ A containing information about the success or failure of the command and any data returned by the command.
+
+
+
+ Starts the command executor, enabling communication with the browser.
+
+
+
+
+ Stops the command executor, ending further communication with the browser.
+
+
+
+
+ Finds an element matching the given mechanism and value.
+
+ The mechanism by which to find the element.
+ The value to use to search for the element.
+ The first matching the given criteria.
+
+
+
+ Finds all elements matching the given mechanism and value.
+
+ The mechanism by which to find the elements.
+ The value to use to search for the elements.
+ A collection of all of the IWebElements matching the given criteria.
+
+
+
+ Executes JavaScript in the context of the currently selected frame or window using a specific command.
+
+ The JavaScript code to execute.
+ The name of the command to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+
+ Converts the arguments to JavaScript objects.
+
+ The arguments.
+ The list of the arguments converted to JavaScript objects.
+
+
+
+ RemoteWebElement allows you to have access to specific items that are found on the page
+
+
+
+
+
+
+ The property name that represents a web element in the wire protocol.
+
+
+
+
+ The property name that represents a web element in the legacy dialect of the wire protocol.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The instance hosting this element.
+ The ID assigned to the element.
+
+
+
+ Gets the used to find this element.
+
+
+
+
+ Gets the tag name of this element.
+
+
+ The property returns the tag name of the
+ element, not the value of the name attribute. For example, it will return
+ "input" for an element specified by the HTML markup <input name="foo" />.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the innerText of this element, without any leading or trailing whitespace,
+ and with other whitespace collapsed.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is enabled.
+
+ The property will generally
+ return for everything except explicitly disabled input elements.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is selected.
+
+ This operation only applies to input elements such as checkboxes,
+ options in a select element and radio buttons.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a object containing the coordinates of the upper-left corner
+ of this element relative to the upper-left corner of the page.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a object containing the height and width of this element.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is displayed.
+
+ The property avoids the problem
+ of having to parse an element's "style" attribute to determine
+ visibility of an element.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the point where the element would be when scrolled into view.
+
+
+
+
+ Gets the coordinates identifying the location of this element using
+ various frames of reference.
+
+
+
+
+ Gets the internal ID of the element.
+
+
+
+
+ Gets the ID of the element
+
+ This property is internal to the WebDriver instance, and is
+ not intended to be used in your code. The element's ID has no meaning
+ outside of internal WebDriver usage, so it would be improper to scope
+ it as public. However, both subclasses of
+ and the parent driver hosting the element have a need to access the
+ internal element ID. Therefore, we have two properties returning the
+ same value, one scoped as internal, the other as protected.
+
+
+
+ Clears the content of this element.
+
+ If this element is a text entry element, the
+ method will clear the value. It has no effect on other elements. Text entry elements
+ are defined as elements with INPUT or TEXTAREA tags.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Simulates typing text into the element.
+
+ The text to type into the element.
+ The text to be typed may include special characters like arrow keys,
+ backspaces, function keys, and so on. Valid special keys are defined in
+ .
+
+ Thrown when the target element is not enabled.
+ Thrown when the target element is not visible.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Submits this element to the web server.
+
+ If this current element is a form, or an element within a form,
+ then this will be submitted to the web server. If this causes the current
+ page to change, then this method will attempt to block until the new page
+ is loaded.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Clicks this element.
+
+
+ Click this element. If the click causes a new page to load, the
+ method will attempt to block until the page has loaded. After calling the
+ method, you should discard all references to this
+ element unless you know that the element and the page will still be present.
+ Otherwise, any further operations performed on this element will have an undefined
+ behavior.
+
+ Thrown when the target element is not enabled.
+ Thrown when the target element is not visible.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of the specified attribute for this element.
+
+ The name of the attribute.
+ The attribute's current value. Returns a if the
+ value is not set.
+ The method will return the current value
+ of the attribute, even if the value has been modified after the page has been
+ loaded. Note that the value of the following attributes will be returned even if
+ there is no explicit attribute on the element:
+
+
+ Attribute name
+ Value returned if not explicitly specified
+ Valid element types
+
+
+ checked
+ checked
+ Check Box
+
+
+ selected
+ selected
+ Options in Select elements
+
+
+ disabled
+ disabled
+ Input and other UI elements
+
+
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of a JavaScript property of this element.
+
+ The name JavaScript the JavaScript property to get the value of.
+ The JavaScript property's current value. Returns a if the
+ value is not set or the property does not exist.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of a CSS property of this element.
+
+ The name of the CSS property to get the value of.
+ The value of the specified CSS property.
+ The value returned by the
+ method is likely to be unpredictable in a cross-browser environment.
+ Color values should be returned as hex strings. For example, a
+ "background-color" property set as "green" in the HTML source, will
+ return "#008000" for its value.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Finds all IWebElements within the current context
+ using the given mechanism.
+
+ The locating mechanism to use.
+ A of all WebElements
+ matching the current criteria, or an empty list if nothing matches.
+
+
+
+ Finds the first using the given method.
+
+ The locating mechanism to use.
+ The first matching on the current context.
+ If no element matches the criteria.
+
+
+
+ Finds the first of elements that match the link text supplied
+
+ Link text of element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementByLinkText("linktext")
+
+
+
+
+
+ Finds the first of elements that match the link text supplied
+
+ Link text of element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByLinkText("linktext")
+
+
+
+
+
+ Finds the first element in the page that matches the ID supplied
+
+ ID of the element
+ IWebElement object so that you can interact with that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementById("id")
+
+
+
+
+
+ Finds the first element in the page that matches the ID supplied
+
+ ID of the Element
+ ReadOnlyCollection of Elements that match the object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsById("id")
+
+
+
+
+
+ Finds the first of elements that match the name supplied
+
+ Name of the element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ elem = driver.FindElementsByName("name")
+
+
+
+
+
+ Finds a list of elements that match the name supplied
+
+ Name of element
+ ReadOnlyCollect of IWebElement objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByName("name")
+
+
+
+
+
+ Finds the first of elements that match the DOM Tag supplied
+
+ tag name of the element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByTagName("tag")
+
+
+
+
+
+ Finds a list of elements that match the DOM Tag supplied
+
+ DOM Tag of the element on the page
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByTagName("tag")
+
+
+
+
+
+ Finds the first element in the page that matches the CSS Class supplied
+
+ CSS class name of the element on the page
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementByClassName("classname")
+
+
+
+
+
+ Finds a list of elements that match the class name supplied
+
+ CSS class name of the elements on the page
+ ReadOnlyCollection of IWebElement object so that you can interact with those objects
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByClassName("classname")
+
+
+
+
+
+ Finds the first of elements that match the XPath supplied
+
+ xpath to the element
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByXPath("//table/tbody/tr/td/a");
+
+
+
+
+
+ Finds a list of elements that match the XPath supplied
+
+ xpath to element on the page
+ ReadOnlyCollection of IWebElement objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByXpath("//tr/td/a")
+
+
+
+
+
+ Finds the first of elements that match the part of the link text supplied
+
+ part of the link text
+ IWebElement object so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ IWebElement elem = driver.FindElementsByPartialLinkText("partOfLink")
+
+
+
+
+
+ Finds a list of elements that match the link text supplied
+
+ part of the link text
+ ReadOnlyCollection]]> objects so that you can interact that object
+
+
+ IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
+ ReadOnlyCollection]]> elem = driver.FindElementsByPartialLinkText("partOfTheLink")
+
+
+
+
+
+ Finds the first element matching the specified CSS selector.
+
+ The id to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified CSS selector.
+
+ The CSS selector to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Gets a object representing the image of this element on the screen.
+
+ A object containing the image.
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Method to get the hash code of the element
+
+ Integer of the hash code for the element
+
+
+
+ Compares if two elements are equal
+
+ Object to compare against
+ A boolean if it is equal or not
+
+
+
+ Converts an object into an object that represents an element for the wire protocol.
+
+ A that represents an element in the wire protocol.
+
+
+
+ Finds a child element matching the given mechanism and value.
+
+ The mechanism by which to find the element.
+ The value to use to search for the element.
+ The first matching the given criteria.
+
+
+
+ Finds all child elements matching the given mechanism and value.
+
+ The mechanism by which to find the elements.
+ The value to use to search for the elements.
+ A collection of all of the IWebElements matching the given criteria.
+
+
+
+ Executes a command on this element using the specified parameters.
+
+ The to execute against this element.
+ A containing names and values of the parameters for the command.
+ The object containing the result of the command execution.
+
+
+
+ Creates a from a dictionary containing a reference to an element.
+
+ The dictionary containing the element reference.
+ A containing the information from the specified dictionary.
+
+
+
+ Gets a value indicating wether the specified dictionary represents a reference to a web element.
+
+ The dictionary to check.
+ if the dictionary contains an element reference; otherwise, .
+
+
+
+ Provides remote access to the API.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The driver instance.
+
+
+
+ Gets the local storage for the site currently opened in the browser.
+
+
+
+
+ Gets the session storage for the site currently opened in the browser.
+
+
+
+
+ Defines the interface through which the user can manipulate the browser window.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Instance of the driver currently in use
+
+
+
+ Gets or sets the position of the browser window relative to the upper-left corner of the screen.
+
+ When setting this property, it should act as the JavaScript window.moveTo() method.
+
+
+
+ Gets or sets the size of the outer browser window, including title bars and window borders.
+
+ When setting this property, it should act as the JavaScript window.resizeTo() method.
+
+
+
+ Maximizes the current window if it is not already maximized.
+
+
+
+
+ Minimizes the current window if it is not already maximized.
+
+
+
+
+ Sets the current window to full screen if it is not already in that state.
+
+
+
+
+ Handles reponses from the browser
+
+
+
+
+ Initializes a new instance of the class
+
+
+
+
+ Initializes a new instance of the class
+
+ Session ID in use
+
+
+
+ Gets or sets the value from JSON.
+
+
+
+
+ Gets or sets the session ID.
+
+
+
+
+ Gets or sets the status value of the response.
+
+
+
+
+ Gets a value indicating whether this response is compliant with the WebDriver specification.
+
+
+
+
+ Returns a new from a JSON-encoded string.
+
+ The JSON string to deserialize into a .
+ A object described by the JSON string.
+
+
+
+ Returns this object as a JSON-encoded string.
+
+ A JSON-encoded string representing this object.
+
+
+
+ Returns the object as a string.
+
+ A string with the Session ID, status value, and the value from JSON.
+
+
+
+ Provides a mechanism for maintaining a session for a test
+
+
+
+
+ Initializes a new instance of the class
+
+ Key for the session in use
+
+
+
+ Get the value of the key
+
+ The key in use
+
+
+
+ Get the hash code of the key
+
+ The hash code of the key
+
+
+
+ Compares two Sessions
+
+ Session to compare
+ True if they are equal or False if they are not
+
+
+
+ Gives properties to get a stack trace
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the given property values.
+
+ A containing the names and values for the properties of this .
+
+
+
+ Gets or sets the value of the filename in the stack
+
+
+
+
+ Gets or sets the value of the Class name in the stack trace
+
+
+
+
+ Gets or sets the line number
+
+
+
+
+ Gets or sets the Method name in the stack trace
+
+
+
+
+ Gets a string representation of the object.
+
+ A string representation of the object.
+
+
+
+ Holds the information about all commands specified by the JSON wire protocol.
+ This class cannot be inherited, as it is intended to be a singleton, and
+ allowing subclasses introduces the possibility of multiple instances.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the level of the W3C WebDriver specification that this repository supports.
+
+
+
+
+ Initializes the dictionary of commands for the CommandInfoRepository
+
+
+
+
+ Represents an error condition from a remote end using the W3C specification
+ dialect of the wire protocol.
+
+
+
+
+ Represents the element click intercepted error.
+
+
+
+
+ Represents the element not selectable error.
+
+
+
+
+ Represents the element not interactable error.
+
+
+
+
+ Represents the element not visible error.
+
+ TODO: Remove this string; it is no longer valid in the specification.
+
+
+
+ Represents the insecure certificate error.
+
+
+
+
+ Represents the invalid argument error.
+
+
+
+
+ Represents the invalid cookie domain error.
+
+
+
+
+ Represents the invalid coordinates error.
+
+
+
+
+ Represents the invalid element coordinates error.
+
+ TODO: Remove this string; it is no longer valid in the specification.
+
+
+
+ Represents the invalid element state error.
+
+
+
+
+ Represents the invalid selector error.
+
+
+
+
+ Represents the invalid session ID error.
+
+
+
+
+ Represents the unhandled JavaScript error.
+
+
+
+
+ Represents the move target out of bounds error.
+
+
+
+
+ Represents the no such alert error.
+
+
+
+
+ Represents the no such cookie error.
+
+
+
+
+ Represents the no such element error.
+
+
+
+
+ Represents the no such alert frame.
+
+
+
+
+ Represents the no such alert window.
+
+
+
+
+ Represents the script timeout error.
+
+
+
+
+ Represents the session not created error.
+
+
+
+
+ Represents the stale element reference error.
+
+
+
+
+ Represents the timeout error.
+
+
+
+
+ Represents the unable to set cookie error.
+
+
+
+
+ Represents the unable to capture screen error.
+
+
+
+
+ Represents the unexpected alert open error.
+
+
+
+
+ Represents the unknown command error.
+
+
+
+
+ Represents an unknown error.
+
+
+
+
+ Represents the unknown method error.
+
+
+
+
+ Represents the unsupported operation error.
+
+
+
+
+ Converts a string error to a value.
+
+ The error string to convert.
+ The converted value.
+
+
+
+ Holds the information about all commands specified by the JSON wire protocol.
+ This class cannot be inherited, as it is intended to be a singleton, and
+ allowing subclasses introduces the possibility of multiple instances.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the level of the W3C WebDriver specification that this repository supports.
+
+
+
+
+ Initializes the dictionary of commands for the CommandInfoRepository
+
+
+
+
+ Exposes the service provided by a native WebDriver server executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the directory containing the executable providing the service to drive the browser.
+ The port on which the driver executable should listen.
+ The file name of the driver service executable.
+ A URL at which the driver service executable may be downloaded.
+
+ If the path specified is or an empty string.
+
+
+ If the specified driver service executable does not exist in the specified directory.
+
+
+
+
+ Gets the Uri of the service.
+
+
+
+
+ Gets or sets the host name of the service. Defaults to "localhost."
+
+
+ Most driver service executables do not allow connections from remote
+ (non-local) machines. This property can be used as a workaround so
+ that an IP address (like "127.0.0.1" or "::1") can be used instead.
+
+
+
+
+ Gets or sets the port of the service.
+
+
+
+
+ Gets or sets a value indicating whether the initial diagnostic information is suppressed
+ when starting the driver server executable. Defaults to , meaning
+ diagnostic information should be shown by the driver server executable.
+
+
+
+
+ Gets a value indicating whether the service is running.
+
+
+
+
+ Gets or sets a value indicating whether the command prompt window of the service should be hidden.
+
+
+
+
+ Gets the process ID of the running driver service executable. Returns 0 if the process is not running.
+
+
+
+
+ Gets the executable file name of the driver service.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Gets a value indicating the time to wait for an initial connection before timing out.
+
+
+
+
+ Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
+
+
+
+
+ Gets a value indicating whether the service has a shutdown API that can be called to terminate
+ it gracefully before forcing a termination.
+
+
+
+
+ Gets a value indicating whether the service is responding to HTTP requests.
+
+
+
+
+ Releases all resources associated with this .
+
+
+
+
+ Starts the DriverService.
+
+
+
+
+ Finds the specified driver service executable.
+
+ The file name of the executable to find.
+ A URL at which the driver service executable may be downloaded.
+ The directory containing the driver service executable.
+
+ If the specified driver service executable does not exist in the current directory or in a directory on the system path.
+
+
+
+
+ Releases all resources associated with this .
+
+ if the Dispose method was explicitly called; otherwise, .
+
+
+
+ Stops the DriverService.
+
+
+
+
+ Waits until a the service is initialized, or the timeout set
+ by the property is reached.
+
+ if the service is properly started and receiving HTTP requests;
+ otherwise; .
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Provides a mechanism to write tests against Edge
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified options.
+
+ The to be used with the Edge driver.
+
+
+
+ Initializes a new instance of the class using the specified driver service.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing EdgeDriver.exe.
+
+ The full path to the directory containing EdgeDriver.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing EdgeDriver.exe and options.
+
+ The full path to the directory containing EdgeDriver.exe.
+ The to be used with the Edge driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing EdgeDriver.exe, options, and command timeout.
+
+ The full path to the directory containing EdgeDriver.exe.
+ The to be used with the Edge driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use.
+ The to be used with the Edge driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Exposes the service provided by the native MicrosoftWebDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the EdgeDriver executable.
+ The file name of the EdgeDriver executable.
+ The port on which the EdgeDriver executable should listen.
+
+
+
+ Gets or sets the value of the host adapter on which the Edge driver service should listen for connections.
+
+
+
+
+ Gets or sets the value of the package the Edge driver service will launch and automate.
+
+
+
+
+ Gets or sets a value indicating whether the service should use verbose logging.
+
+
+
+
+ Gets or sets a value indicating whether the instance
+ should use the a protocol dialect compliant with the W3C WebDriver Specification.
+
+
+ Setting this property to a non- value for driver
+ executables matched to versions of Windows before the 2018 Fall Creators
+ Update will result in a the driver executable shutting down without
+ execution, and all commands will fail. Do not set this property unless
+ you are certain your version of the MicrosoftWebDriver.exe supports the
+ --w3c and --jwp command-line arguments.
+
+
+
+
+ Gets a value indicating whether the service has a shutdown API that can be called to terminate
+ it gracefully before forcing a termination.
+
+
+
+
+ Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the EdgeDriverService.
+
+ A EdgeDriverService that implements default settings.
+
+
+
+ Creates a default instance of the EdgeDriverService using a specified path to the EdgeDriver executable.
+
+ The directory containing the EdgeDriver executable.
+ A EdgeDriverService using a random port.
+
+
+
+ Creates a default instance of the EdgeDriverService using a specified path to the EdgeDriver executable with the given name.
+
+ The directory containing the EdgeDriver executable.
+ The name of the EdgeDriver executable file.
+ A EdgeDriverService using a random port.
+
+
+
+ Creates a default instance of the EdgeDriverService using a specified path to the EdgeDriver executable with the given name and listening port.
+
+ The directory containing the EdgeDriver executable.
+ The name of the EdgeDriver executable file
+ The port number on which the driver will listen
+ A EdgeDriverService using the specified port.
+
+
+
+ Specifies the behavior of waiting for page loads in the Edge driver.
+
+
+
+
+ Indicates the behavior is not set.
+
+
+
+
+ Waits for pages to load and ready state to be 'complete'.
+
+
+
+
+ Waits for pages to load and for ready state to be 'interactive' or 'complete'.
+
+
+
+
+ Does not wait for pages to load, returning immediately.
+
+
+
+
+ Class to manage options specific to
+
+
+
+ EdgeOptions options = new EdgeOptions();
+
+
+ For use with EdgeDriver:
+
+
+ EdgeDriver driver = new EdgeDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Gets or sets a value indicating whether the browser should be launched using
+ InPrivate browsing.
+
+
+
+
+ Gets or sets the URL of the page with which the browser will be navigated to on launch.
+
+
+
+
+ Adds a path to an extension that is to be used with the Edge driver.
+
+ The full path and file name of the extension.
+
+
+
+ Adds a list of paths to an extensions that are to be used with the Edge driver.
+
+ An array of full paths with file names of extensions to add.
+
+
+
+ Adds a list of paths to an extensions that are to be used with the Edge driver.
+
+ An of full paths with file names of extensions to add.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Edge driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling where
+ has already been added will overwrite the existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for Edge with these options included as
+ capabilities. This copies the options. Further changes will not be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for Edge with these options.
+
+
+
+ Provides a mechanism to get elements off the page for test
+
+
+
+
+ Initializes a new instance of the class
+
+ Driver in use
+ Id of the element
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Represents the binary associated with Firefox.
+
+ The class is responsible for instantiating the
+ Firefox process, and the operating system environment in which it runs.
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class located at a specific file location.
+
+ Full path and file name to the Firefox executable.
+
+
+
+ Gets or sets the timeout to wait for Firefox to be available for command execution.
+
+
+
+
+ Gets the associated with this .
+
+
+
+
+ Gets a value indicating whether the current operating system is Linux.
+
+
+
+
+ Gets a containing string key-value pairs
+ representing any operating system environment variables beyond the defaults.
+
+
+
+
+ Starts Firefox using the specified profile and command-line arguments.
+
+ The to use with this instance of Firefox.
+ The command-line arguments to use in starting Firefox.
+
+
+
+ Sets a variable to be used in the Firefox execution environment.
+
+ The name of the environment variable to set.
+ The value of the environment variable to set.
+
+
+
+ Waits for the process to complete execution.
+
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Returns a String that represents the current Object.
+
+ A String that represents the current Object.
+
+
+
+ Starts the Firefox process.
+
+
+
+
+ Releases the unmanaged resources used by the and optionally
+ releases the managed resources.
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Provides a way to access Firefox to run tests.
+
+
+ When the FirefoxDriver object has been instantiated the browser will load. The test can then navigate to the URL under test and
+ start your test.
+
+ In the case of the FirefoxDriver, you can specify a named profile to be used, or you can let the
+ driver create a temporary, anonymous profile. A custom extension allowing the driver to communicate
+ to the browser will be installed into the profile.
+
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new FirefoxDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ }
+ }
+
+
+
+
+
+ The name of the ICapabilities setting to use to define a custom Firefox profile.
+
+
+
+
+ The name of the ICapabilities setting to use to define a custom location for the
+ Firefox executable.
+
+
+
+
+ The default port on which to communicate with the Firefox extension.
+
+
+
+
+ Indicates whether native events is enabled by default for this platform.
+
+
+
+
+ Indicates whether the driver will accept untrusted SSL certificates.
+
+
+
+
+ Indicates whether the driver assume the issuer of untrusted certificates is untrusted.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified options. Uses the Mozilla-provided Marionette driver implementation.
+
+ The to be used with the Firefox driver.
+
+
+
+ Initializes a new instance of the class using the specified driver service. Uses the Mozilla-provided Marionette driver implementation.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing geckodriver.exe.
+
+ The full path to the directory containing geckodriver.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing geckodriver.exe and options.
+
+ The full path to the directory containing geckodriver.exe.
+ The to be used with the Firefox driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing geckodriver.exe, options, and command timeout.
+
+ The full path to the directory containing geckodriver.exe.
+ The to be used with the Firefox driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified options, driver service, and timeout. Uses the Mozilla-provided Marionette driver implementation.
+
+ The to use.
+ The to be used with the Firefox driver.
+
+
+
+ Initializes a new instance of the class using the specified options, driver service, and timeout. Uses the Mozilla-provided Marionette driver implementation.
+
+ The to use.
+ The to be used with the Firefox driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The Firefox driver does not allow a file detector to be set,
+ as the server component of the Firefox driver only allows uploads from
+ the local computer environment. Attempting to set this property has no
+ effect, but does not throw an exception. If you are attempting to run
+ the Firefox driver remotely, use in
+ conjunction with a standalone WebDriver server.
+
+
+
+ Gets a value indicating whether the Firefox driver instance uses
+ Mozilla's Marionette implementation. This is a temporary property
+ and will be removed when Marionette is available for the release
+ channel of Firefox.
+
+
+
+
+ In derived classes, the method prepares the environment for test execution.
+
+
+
+
+ Provides a way of executing Commands using the FirefoxDriver.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The on which to make the connection.
+ The creating the connection.
+ The name of the host on which to connect to the Firefox extension (usually "localhost").
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets the repository of objects containin information about commands.
+
+
+
+
+ Executes a command
+
+ The command you wish to execute
+ A response from the browser
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Releases the unmanaged resources used by the and
+ optionally releases the managed resources.
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Represents the valid values of logging levels available with the Firefox driver (geckodriver.exe).
+
+
+
+
+ Represents the Trace value, the most detailed logging level available.
+
+
+
+
+ Represents the Debug value
+
+
+
+
+ Represents the Config value
+
+
+
+
+ Represents the Info value
+
+
+
+
+ Represents the Warn value
+
+
+
+
+ Represents the Error value
+
+
+
+
+ Represents the Fatal value, the least detailed logging level available.
+
+
+
+
+ Represents that the logging value is unspecified, and should be the default level.
+
+
+
+
+ Provides methods for launching Firefox with the WebDriver extension installed.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The on which to make the connection.
+ The creating the connection.
+ The name of the host on which to connect to the Firefox extension (usually "localhost").
+
+
+
+ Gets the for communicating with this server.
+
+
+
+
+ Starts the server.
+
+
+
+
+ Releases all resources used by the .
+
+
+
+
+ Releases the unmanaged resources used by the and optionally
+ releases the managed resources.
+
+ to release managed and resources;
+ to only release unmanaged resources.
+
+
+
+ Exposes the service provided by the native FirefoxDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the Firefox driver executable.
+ The file name of the Firefox driver executable.
+ The port on which the Firefox driver executable should listen.
+
+
+
+ Gets or sets the location of the Firefox binary executable.
+
+
+
+
+ Gets or sets the port used by the driver executable to communicate with the browser.
+
+
+
+
+ Gets or sets the value of the IP address of the host adapter on which the
+ service should listen for connections.
+
+
+
+
+ Gets or sets a value indicating whether to connect to an already-running
+ instance of Firefox.
+
+
+
+
+ Gets or sets a value indicating whether to open the Firefox Browser Toolbox
+ when Firefox is launched.
+
+
+
+
+ Gets a value indicating the time to wait for an initial connection before timing out.
+
+
+
+
+ Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
+
+
+
+
+ Gets a value indicating whether the service has a shutdown API that can be called to terminate
+ it gracefully before forcing a termination.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the FirefoxDriverService.
+
+ A FirefoxDriverService that implements default settings.
+
+
+
+ Creates a default instance of the FirefoxDriverService using a specified path to the Firefox driver executable.
+
+ The directory containing the Firefox driver executable.
+ A FirefoxDriverService using a random port.
+
+
+
+ Creates a default instance of the FirefoxDriverService using a specified path to the Firefox driver executable with the given name.
+
+ The directory containing the Firefox driver executable.
+ The name of the Firefox driver executable file.
+ A FirefoxDriverService using a random port.
+
+
+
+ Returns the Firefox driver filename for the currently running platform
+
+ The file name of the Firefox driver service executable.
+
+
+
+ Provides the ability to install extensions into a .
+
+
+
+
+ Initializes a new instance of the class.
+
+ The name of the file containing the Firefox extension.
+ WebDriver attempts to resolve the parameter
+ by looking first for the specified file in the directory of the calling assembly,
+ then using the full path to the file, if a full path is provided.
+
+
+
+ Initializes a new instance of the class.
+
+ The name of the file containing the Firefox extension.
+ The ID of the resource within the assembly containing the extension
+ if the file is not present in the file system.
+ WebDriver attempts to resolve the parameter
+ by looking first for the specified file in the directory of the calling assembly,
+ then using the full path to the file, if a full path is provided. If the file is
+ not found in the file system, WebDriver attempts to locate a resource in the
+ executing assembly with the name specified by the
+ parameter.
+
+
+
+ Installs the extension into a profile directory.
+
+ The Firefox profile directory into which to install the extension.
+
+
+
+ Class to manage options specific to
+
+
+ Used with the marionette executable wires.exe.
+
+
+
+ FirefoxOptions options = new FirefoxOptions();
+
+
+ For use with FirefoxDriver:
+
+
+ FirefoxDriver driver = new FirefoxDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class for the given profile and binary.
+
+ The to use in the options.
+ The to use in the options.
+ The to copy into the options.
+
+
+
+ Gets or sets a value indicating whether to use the legacy driver implementation.
+
+
+
+
+ Gets or sets the object to be used with this instance.
+
+
+
+
+ Gets or sets the path and file name of the Firefox browser executable.
+
+
+
+
+ Gets or sets the logging level of the Firefox driver.
+
+
+
+
+ Adds an argument to be used in launching the Firefox browser.
+
+ The argument to add.
+ Arguments must be preceeded by two dashes ("--").
+
+
+
+ Adds a list arguments to be used in launching the Firefox browser.
+
+ An array of arguments to add.
+ Each argument must be preceeded by two dashes ("--").
+
+
+
+ Adds a list arguments to be used in launching the Firefox browser.
+
+ An array of arguments to add.
+ Each argument must be preceeded by two dashes ("--").
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Sets a preference in the profile used by Firefox.
+
+ Name of the preference to set.
+ Value of the preference to set.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Firefox driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+ Also, by default, calling this method adds capabilities to the options object passed to
+ geckodriver.exe.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Firefox driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+ Indicates whether the capability is to be set as a global
+ capability for the driver instead of a Firefox-specific option.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for Firefox with these options included as
+ capabilities. This does not copy the options. Further changes will be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for Firefox with these options.
+
+
+
+ Provides the ability to edit the preferences associated with a Firefox profile.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using a
+ specific profile directory.
+
+ The directory containing the profile.
+
+
+
+ Initializes a new instance of the class using a
+ specific profile directory.
+
+ The directory containing the profile.
+ Delete the source directory of the profile upon cleaning.
+
+
+
+ Gets or sets the port on which the profile connects to the WebDriver extension.
+
+
+
+
+ Gets the directory containing the profile.
+
+
+
+
+ Gets or sets a value indicating whether to delete this profile after use with
+ the .
+
+
+
+
+ Gets or sets a value indicating whether native events are enabled.
+
+
+
+
+ Gets or sets a value indicating whether to always load the library for allowing Firefox
+ to execute commands without its window having focus.
+
+ The property is only used on Linux.
+
+
+
+ Gets or sets a value indicating whether Firefox should accept SSL certificates which have
+ expired, signed by an unknown authority or are generally untrusted. Set to true
+ by default.
+
+
+
+
+ Gets or sets a value indicating whether Firefox assume untrusted SSL certificates
+ come from an untrusted issuer or are self-signed. Set to true by default.
+
+
+
+ Due to limitations within Firefox, it is easy to find out if a certificate has expired
+ or does not match the host it was served for, but hard to find out if the issuer of the
+ certificate is untrusted. By default, it is assumed that the certificates were not
+ issued from a trusted certificate authority.
+
+
+ If you receive an "untrusted site" prompt it Firefox when using a certificate that was
+ issued by valid issuer, but the certificate has expired or is being served served for
+ a different host (e.g. production certificate served in a testing environment) set this
+ to false.
+
+
+
+
+
+ Converts a base64-encoded string into a .
+
+ The base64-encoded string containing the profile contents.
+ The constructed .
+
+
+
+ Adds a Firefox Extension to this profile
+
+ The path to the new extension
+
+
+
+ Sets a preference in the profile.
+
+ The name of the preference to add.
+ A value to add to the profile.
+
+
+
+ Sets a preference in the profile.
+
+ The name of the preference to add.
+ A value to add to the profile.
+
+
+
+ Sets a preference in the profile.
+
+ The name of the preference to add.
+ A value to add to the profile.
+
+
+
+ Set proxy preferences for this profile.
+
+ The object defining the proxy
+ preferences for the profile.
+
+
+
+ Writes this in-memory representation of a profile to disk.
+
+
+
+
+ Cleans this Firefox profile.
+
+ If this profile is a named profile that existed prior to
+ launching Firefox, the method removes the WebDriver
+ Firefox extension. If the profile is an anonymous profile, the profile
+ is deleted.
+
+
+
+ Converts the profile into a base64-encoded string.
+
+ A base64-encoded string containing the contents of the profile.
+
+
+
+ Adds the WebDriver extension for Firefox to the profile.
+
+
+
+
+ Removes the WebDriver extension for Firefox to the profile, for use with non-legacy
+ FirefoxDriver instances that use geckodriver.
+
+
+
+
+ Internal implementation to set proxy preferences for this profile.
+
+ The object defining the proxy
+ preferences for the profile.
+
+
+
+ Generates a random directory name for the profile.
+
+ A random directory name for the profile.
+
+
+
+ Deletes the lock files for a profile.
+
+
+
+
+ Installs all extensions in the profile in the directory on disk.
+
+
+
+
+ Deletes the cache of extensions for this profile, if the cache exists.
+
+ If the extensions cache does not exist for this profile, the
+ method performs no operations, but
+ succeeds.
+
+
+
+ Writes the user preferences to the profile.
+
+
+
+
+ Reads the existing preferences from the profile.
+
+ A containing key-value pairs representing the preferences.
+ Assumes that we only really care about the preferences, not the comments
+
+
+
+ Sets a preference for a manually specified proxy.
+
+ The protocol for which to set the proxy.
+ The setting for the proxy.
+
+
+
+ Allows the user to enumerate and access existing named Firefox profiles.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets a containing FirefoxProfiles
+ representing the existing named profiles for Firefox.
+
+
+
+
+ Gets a with a given name.
+
+ The name of the profile to get.
+ A with a given name.
+ Returns if no profile with the given name exists.
+
+
+
+ Allows the user to control elements on a page in Firefox.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The instance hosting this element.
+ The ID assigned to the element.
+
+
+
+ Determines whether two instances are equal.
+
+ The to compare with the current .
+ if the specified is equal to the
+ current ; otherwise, .
+
+
+
+ Serves as a hash function for a .
+
+ A hash code for the current .
+
+
+
+ Represents the executable file for Firefox.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The path and file name to the Firefox executable.
+
+
+
+ Gets the full path to the executable.
+
+
+
+
+ Sets the library path for the Firefox executable environment.
+
+ The used to execute the binary.
+
+
+
+ Locates the Firefox binary by platform.
+
+ The full path to the binary.
+
+
+
+ Retrieves an environment variable
+
+ Name of the variable.
+ Default value of the variable.
+ The value of the variable. If no variable with that name is set, returns the default.
+
+
+
+ Retrieves the platform specific environment property name which contains the library path.
+
+ The platform specific environment property name which contains the library path.
+
+
+
+ Walk a PATH to locate binaries with a specified name. Binaries will be searched for in the
+ order they are provided.
+
+ The binary names to search for.
+ The first binary found matching that name.
+
+
+
+ Defines the interface through which the mutex port for establishing communication
+ with the WebDriver extension can be locked.
+
+
+
+
+ Locks the mutex port.
+
+ The describing the amount of time to wait for
+ the mutex port to become available.
+
+
+
+ Unlocks the mutex port.
+
+
+
+
+ Parses and reads an INI file.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the .INI file to be read.
+
+
+
+ Gets a containing the names of the sections in the .INI file.
+
+
+
+
+ Gets a value from the .INI file.
+
+ The section in which to find the key-value pair.
+ The key of the key-value pair.
+ The value associated with the given section and key.
+
+
+
+ Provides a mutex-like lock on a socket.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Port to use to acquire the lock.
+ The class will attempt to acquire the
+ specified port number, and wait for it to become free.
+
+
+
+ Locks the mutex port.
+
+ The describing the amount of time to wait for
+ the mutex port to become available.
+
+
+
+ Unlocks the mutex port.
+
+
+
+
+ Releases all resources associated with this
+
+
+
+
+ Represents the preferences used by a profile in Firefox.
+
+
+
+
+ Initializes a new instance of the class.
+
+ A set of preferences that cannot be modified once set.
+ A set of default preferences.
+
+
+
+ Sets a preference.
+
+ The name of the preference to set.
+ A value give the preference.
+ If the preference already exists in the currently-set list of preferences,
+ the value will be updated.
+
+
+
+ Sets a preference.
+
+ The name of the preference to set.
+ A value give the preference.
+ If the preference already exists in the currently-set list of preferences,
+ the value will be updated.
+
+
+
+ Sets a preference.
+
+ The name of the preference to set.
+ A value give the preference.
+ If the preference already exists in the currently-set list of preferences,
+ the value will be updated.
+
+
+
+ Gets a preference from the list of preferences.
+
+ The name of the preference to retrieve.
+ The value of the preference, or an empty string if the preference is not set.
+
+
+
+ Appends this set of preferences to the specified set of preferences.
+
+ A dictionary containing the preferences to which to
+ append these values.
+ If the preference already exists in ,
+ the value will be updated.
+
+
+
+ Writes the preferences to a file.
+
+ The full path to the file to be written.
+
+
+
+ Represents the application cache status.
+
+
+
+
+ AppCache status is uncached
+
+
+
+
+ AppCache status is idle
+
+
+
+
+ AppCache status is checkint
+
+
+
+
+ AppCache status is downloading
+
+
+
+
+ AppCache status is updated-ready
+
+
+
+
+ AppCache status is obsolete
+
+
+
+
+ Defines an interface allowing the user to access application cache status
+
+
+
+
+ Gets the current state of the application cache.
+
+
+
+
+ Interface allowing the user to determine if the driver instance supports application cache.
+
+
+
+
+ Gets a value indicating whether manipulating the application cache is supported for this driver.
+
+
+
+
+ Gets an object for managing application cache.
+
+
+
+
+ Interface allowing the user to determine if the driver instance supports geolocation.
+
+
+
+
+ Gets a value indicating whether manipulating geolocation is supported for this driver.
+
+
+
+
+ Gets an object for managing browser location.
+
+
+
+
+ Interface allowing the user to determine if the driver instance supports web storage.
+
+
+
+
+ Gets a value indicating whether web storage is supported for this driver.
+
+
+
+
+ Gets an object for managing web storage.
+
+
+
+
+ Represents the local storage for the site currently opened in the browser.
+ Each site has its own separate storage area.
+
+
+
+
+ Gets the number of items in local storage.
+
+
+
+
+ Returns value of the local storage given a key.
+
+ key to for a local storage entry
+ Value of the local storage entry as given a key.
+
+
+
+ Returns the set of keys associated with local storage.
+
+ Returns the set of keys associated with local storage as .
+
+
+
+ Adds key/value pair to local storage.
+
+ storage key
+ storage value
+
+
+
+ Removes key/value pair from local storage.
+
+ key to remove from storage
+ Value from local storage as string for the given key.
+
+
+
+ Clears local storage.
+
+
+
+
+ Interface for location context
+
+
+
+
+ Gets or sets a value indicating the physical location of the browser.
+
+
+
+
+ Represents the session storage for the site currently opened in the browser.
+ Each site has its own separate storage area.
+
+
+
+
+ Gets the number of items in session storage.
+
+
+
+
+ Returns value of the session storage given a key.
+
+ key to for a session storage entry
+ Value of the session storage entry as given a key.
+
+
+
+ Returns the set of keys associated with session storage.
+
+ Returns the set of keys associated with session storage as .
+
+
+
+ Adds key/value pair to session storage.
+
+ storage key
+ storage value
+
+
+
+ Removes key/value pair from session storage.
+
+ key to remove from storage
+ Value from session storage as string for the given key.
+
+
+
+ Clears local storage.
+
+
+
+
+ Represents both local and session storage for the site currently opened in the browser.
+
+
+
+
+ Gets the local storage for the site currently opened in the browser.
+
+
+
+
+ Gets the session storage for the site currently opened in the browser.
+
+
+
+
+ Represents the physical location of the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ latitude for current location
+ longitude for current location
+ altitude for current location
+
+
+
+ Gets the latitude of the current location.
+
+
+
+
+ Gets the longitude of the current location.
+
+
+
+
+ Gets the altitude of the current location.
+
+
+
+
+ Retuns string represenation for current location.
+
+ Returns string reprsentation for current location.
+
+
+
+ Defines the interface through which the user can manipulate JavaScript alerts.
+
+
+
+
+ Gets the text of the alert.
+
+
+
+
+ Dismisses the alert.
+
+
+
+
+ Accepts the alert.
+
+
+
+
+ Sends keys to the alert.
+
+ The keystrokes to send.
+
+
+
+ Sets the user name and password in an alert prompting for credentials.
+
+ The user name to set.
+ The password to set.
+
+
+
+ Interface determining whether the driver implementation allows detection of files
+ when sending keystrokes to a file upload element.
+
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+
+
+
+ Capabilities of the browser that you are going to use
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if the browser has the capability; otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set on the browser.
+
+
+
+ Defines an interface allowing the user to manipulate cookies on the current page.
+
+
+
+
+ Gets all cookies defined for the current page.
+
+
+
+
+ Adds a cookie to the current page.
+
+ The object to be added.
+
+
+
+ Gets a cookie with the specified name.
+
+ The name of the cookie to retrieve.
+ The containing the name. Returns
+ if no cookie with the specified name is found.
+
+
+
+ Deletes the specified cookie from the page.
+
+ The to be deleted.
+
+
+
+ Deletes the cookie with the specified name from the page.
+
+ The name of the cookie to be deleted.
+
+
+
+ Deletes all cookies from the page.
+
+
+
+
+ Provides a way to access Internet Explorer to run your tests by creating a InternetExplorerDriver instance
+
+
+ When the WebDriver object has been instantiated the browser will load. The test can then navigate to the URL under test and
+ start your test.
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new InternetExplorerDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ driver.Dispose();
+ }
+ }
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with the desired
+ options.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified driver service.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing IEDriverServer.exe.
+
+ The full path to the directory containing IEDriverServer.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing IEDriverServer.exe and options.
+
+ The full path to the directory containing IEDriverServer.exe.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing IEDriverServer.exe, options, and command timeout.
+
+ The full path to the directory containing IEDriverServer.exe.
+ The used to initialize the driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified
+ , , and command timeout.
+
+ The to use.
+ The used to initialize the driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The IE driver does not allow a file detector to be set,
+ as the server component of the IE driver (IEDriverServer.exe) only
+ allows uploads from the local computer environment. Attempting to set
+ this property has no effect, but does not throw an exception. If you
+ are attempting to run the IE driver remotely, use
+ in conjunction with a standalone WebDriver server.
+
+
+
+ Gets the capabilities as a dictionary supporting legacy drivers.
+
+ The dictionary to return.
+ A Dictionary consisting of the capabilities requested.
+ This method is only transitional. Do not rely on it. It will be removed
+ once browser driver capability formats stabilize.
+
+
+
+ Represents the valid values of logging levels available with the IEDriverServer.exe.
+
+
+
+
+ Represents the Trace value, the most detailed logging level available.
+
+
+
+
+ Represents the Debug value
+
+
+
+
+ Represents the Info value
+
+
+
+
+ Represents the Warn value
+
+
+
+
+ Represents the Error value
+
+
+
+
+ Represents the Fatal value, the least detailed logging level available.
+
+
+
+
+ Exposes the service provided by the native IEDriverServer executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the IEDriverServer executable.
+ The file name of the IEDriverServer executable.
+ The port on which the IEDriverServer executable should listen.
+
+
+
+ Gets or sets the value of the host adapter on which the IEDriverServer should listen for connections.
+
+
+
+
+ Gets or sets the location of the log file written to by the IEDriverServer.
+
+
+
+
+ Gets or sets the logging level used by the IEDriverServer.
+
+
+
+
+ Gets or sets the path to which the supporting library of the IEDriverServer.exe is extracted.
+ Defaults to the temp directory if this property is not set.
+
+
+ The IEDriverServer.exe requires extraction of a supporting library to perform some of its functions. Setting
+ This library is extracted to the temp directory if this property is not set. If the property is set, it must
+ be set to a valid directory.
+
+
+
+
+ Gets or sets the comma-delimited list of IP addresses that are approved to
+ connect to this instance of the IEDriverServer. Defaults to an empty string,
+ which means only the local loopback address can connect.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the InternetExplorerDriverService.
+
+ A InternetExplorerDriverService that implements default settings.
+
+
+
+ Creates a default instance of the InternetExplorerDriverService using a specified path to the IEDriverServer executable.
+
+ The directory containing the IEDriverServer executable.
+ A InternetExplorerDriverService using a random port.
+
+
+
+ Creates a default instance of the InternetExplorerDriverService using a specified path to the IEDriverServer executable with the given name.
+
+ The directory containing the IEDriverServer executable.
+ The name of the IEDriverServer executable file.
+ A InternetExplorerDriverService using a random port.
+
+
+
+ Specifies the scroll behavior of elements scrolled into view in the IE driver.
+
+
+
+
+ Indicates the behavior is unspecified.
+
+
+
+
+ Scrolls elements to align with the top of the viewport.
+
+
+
+
+ Scrolls elements to align with the bottom of the viewport.
+
+
+
+
+ Class to manage options specific to
+
+
+
+ InternetExplorerOptions options = new InternetExplorerOptions();
+ options.IntroduceInstabilityByIgnoringProtectedModeSettings = true;
+
+
+ For use with InternetExplorerDriver:
+
+
+ InternetExplorerDriver driver = new InternetExplorerDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Gets the name of the capability used to store IE options in
+ a object.
+
+
+
+
+ Gets or sets a value indicating whether to ignore the settings of the Internet Explorer Protected Mode.
+
+
+
+
+ Gets or sets a value indicating whether to ignore the zoom level of Internet Explorer .
+
+
+
+
+ Gets or sets a value indicating whether to use native events in interacting with elements.
+
+
+
+
+ Gets or sets a value indicating whether to require the browser window to have focus before interacting with elements.
+
+
+
+
+ Gets or sets the initial URL displayed when IE is launched. If not set, the browser launches
+ with the internal startup page for the WebDriver server.
+
+
+ By setting the to
+ and this property to a correct URL, you can launch IE in the Internet Protected Mode zone. This can be helpful
+ to avoid the flakiness introduced by ignoring the Protected Mode settings. Nevertheless, setting Protected Mode
+ zone settings to the same value in the IE configuration is the preferred method.
+
+
+
+
+ Gets or sets the value for describing how elements are scrolled into view in the IE driver. Defaults
+ to scrolling the element to the top of the viewport.
+
+
+
+
+ Gets or sets a value indicating whether to enable persistently sending WM_MOUSEMOVE messages
+ to the IE window during a mouse hover.
+
+
+
+
+ Gets or sets the amount of time the driver will attempt to look for a newly launched instance
+ of Internet Explorer.
+
+
+
+
+ Gets or sets the amount of time the driver will attempt to look for the file selection
+ dialog when attempting to upload a file.
+
+
+
+
+ Gets or sets a value indicating whether to force the use of the Windows CreateProcess API
+ when launching Internet Explorer. The default value is .
+
+
+
+
+ Gets or sets a value indicating whether to force the use of the Windows ShellWindows API
+ when attaching to Internet Explorer. The default value is .
+
+
+
+
+ Gets or sets the command line arguments used in launching Internet Explorer when the
+ Windows CreateProcess API is used. This property only has an effect when the
+ is .
+
+
+
+
+ Gets or sets a value indicating whether to use the supplied
+ settings on a per-process basis, not updating the system installed proxy setting.
+ This property is only valid when setting a , where the
+ property is either ,
+ , or , and is
+ otherwise ignored. Defaults to .
+
+
+
+
+ Gets or sets a value indicating whether to clear the Internet Explorer cache
+ before launching the browser. When set to , clears the
+ system cache for all instances of Internet Explorer, even those already running
+ when the driven instance is launched. Defaults to .
+
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Internet Explorer driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+ Also, by default, calling this method adds capabilities to the options object passed to
+ IEDriverServer.exe.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Internet Explorer driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+ Indicates whether the capability is to be set as a global
+ capability for the driver instead of a IE-specific option.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling where
+ has already been added will overwrite the existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for IE with these options included as
+ capabilities. This copies the options. Further changes will not be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for IE with these options.
+
+
+
+ InternetExplorerWebElement allows you to have access to specific items that are found on the page.
+
+
+
+
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver = new InternetExplorerDriver();
+ InternetExplorerWebElement elem = driver.FindElement(By.Name("q"));
+ elem.SendKeys("Cheese please!");
+ }
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ Driver in use.
+ ID of the element.
+
+
+
+ Defines an object responsible for detecting sequences of keystrokes
+ representing file paths and names.
+
+
+
+
+ Returns a value indicating whether a specified key sequence represents
+ a file name and path.
+
+ The sequence to test for file existence.
+ if the key sequence represents a file; otherwise, .
+
+
+
+ Defines the interface through which the user can determine the capabilities of a driver.
+
+
+
+
+ Gets the object describing the driver's capabilities.
+
+
+
+
+ Provides access to input devices for advanced user interactions.
+
+
+
+
+ Gets an object for sending keystrokes to the browser.
+
+
+
+
+ Gets an object for sending mouse commands to the browser.
+
+
+
+
+ Interface implemented by each driver that allows access to touch screen capabilities.
+
+
+
+
+ Gets the device representing the touch screen.
+
+
+
+
+ Defines the interface through which the user can execute JavaScript.
+
+
+
+
+ Executes JavaScript in the context of the currently selected frame or window.
+
+ The JavaScript code to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+ The method executes JavaScript in the context of
+ the currently selected frame or window. This means that "document" will refer
+ to the current document. If the script has a return value, then the following
+ steps will be taken:
+
+
+
+ For an HTML element, this method returns a
+ For a number, a is returned
+ For a boolean, a is returned
+ For all other cases a is returned.
+ For an array,we check the first element, and attempt to return a
+ of that type, following the rules above. Nested lists are not
+ supported.
+ If the value is null or there is no return value,
+ is returned.
+
+
+
+ Arguments must be a number (which will be converted to a ),
+ a , a or a .
+ An exception will be thrown if the arguments do not meet these criteria.
+ The arguments will be made available to the JavaScript via the "arguments" magic
+ variable, as if the function were called via "Function.apply"
+
+
+
+
+
+ Executes JavaScript asynchronously in the context of the currently selected frame or window.
+
+ The JavaScript code to execute.
+ The arguments to the script.
+ The value returned by the script.
+
+
+
+ Provides methods representing basic keyboard actions.
+
+
+
+
+ Sends a sequence of keystrokes to the target.
+
+ A string representing the keystrokes to send.
+
+
+
+ Presses a key.
+
+ The key value representing the key to press.
+ The key value must be one of the values from the class.
+
+
+
+ Releases a key.
+
+ The key value representing the key to release.
+ The key value must be one of the values from the class.
+
+
+
+ Defines the interface through which the user can discover where an element is on the screen.
+
+
+
+
+ Gets the location of an element on the screen, scrolling it into view
+ if it is not currently on the screen.
+
+
+
+
+ Gets the coordinates identifying the location of this element using
+ various frames of reference.
+
+
+
+
+ Interface allowing handling of driver logs.
+
+
+
+
+ Gets the list of available log types for this driver.
+
+
+
+
+ Gets the set of objects for a specified log.
+
+ The log for which to retrieve the log entries.
+ Log types can be found in the class.
+ The list of objects for the specified log.
+
+
+
+ Provides methods representing basic mouse actions.
+
+
+
+
+ Clicks at a set of coordinates using the primary mouse button.
+
+ An describing where to click.
+
+
+
+ Double-clicks at a set of coordinates.
+
+ A describing where to double-click.
+
+
+
+ Presses the primary mouse button at a set of coordinates.
+
+ A describing where to press the mouse button down.
+
+
+
+ Releases the primary mouse button at a set of coordinates.
+
+ A describing where to release the mouse button.
+
+
+
+ Moves the mouse to the specified set of coordinates.
+
+ A describing where to move the mouse to.
+
+
+
+ Moves the mouse to the specified set of coordinates.
+
+ A describing where to click.
+ A horizontal offset from the coordinates specified in .
+ A vertical offset from the coordinates specified in .
+
+
+
+ Clicks at a set of coordinates using the secondary mouse button.
+
+ A describing where to click.
+
+
+
+ Defines an interface allowing the user to access the browser's history and to
+ navigate to a given URL.
+
+
+
+
+ Move back a single entry in the browser's history.
+
+
+
+
+ Move a single "item" forward in the browser's history.
+
+ Does nothing if we are on the latest page viewed.
+
+
+
+ Load a new web page in the current browser window.
+
+ The URL to load. It is best to use a fully qualified URL
+
+ Calling the method will load a new web page in the current browser window.
+ This is done using an HTTP GET operation, and the method will block until the
+ load is complete. This will follow redirects issued either by the server or
+ as a meta-redirect from within the returned HTML. Should a meta-redirect "rest"
+ for any duration of time, it is best to wait until this timeout is over, since
+ should the underlying page change while your test is executing the results of
+ future calls against this interface will be against the freshly loaded page.
+
+
+
+
+ Load a new web page in the current browser window.
+
+ The URL to load.
+
+ Calling the method will load a new web page in the current browser window.
+ This is done using an HTTP GET operation, and the method will block until the
+ load is complete. This will follow redirects issued either by the server or
+ as a meta-redirect from within the returned HTML. Should a meta-redirect "rest"
+ for any duration of time, it is best to wait until this timeout is over, since
+ should the underlying page change while your test is executing the results of
+ future calls against this interface will be against the freshly loaded page.
+
+
+
+
+ Refreshes the current page.
+
+
+
+
+ Provides methods that allow the creation of action sequences to enable
+ advanced user interactions.
+
+
+
+
+ Adds an action to the built set of actions. Adding an action will
+ add a "tick" to the set of all actions to be executed.
+
+ The action to add to the set of actions
+ A self reference.
+
+
+
+ Adds an action to the built set of actions. Adding an action will
+ add a "tick" to the set of all actions to be executed. Only one action
+ for each input device may be added for a single tick.
+
+ The set actions to add to the existing set of actions.
+ A self reference.
+
+
+
+ Converts the set of actions in this to a .
+
+ A suitable for transmission across the wire.
+ The collection returned is read-only.
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Provides values that indicate from where element offsets for MoveToElement
+ are calculated.
+
+
+
+
+ Offsets are calculated from the top-left corner of the element.
+
+
+
+
+ Offsets are calcuated from the center of the element.
+
+
+
+
+ Provides a mechanism for building advanced interactions with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The object on which the actions built will be performed.
+
+
+
+ Sends a modifier key down message to the browser.
+
+ The key to be sent.
+ A self-reference to this .
+ If the key sent is not is not one
+ of , , ,
+ , ,,
+ ,.
+
+
+
+ Sends a modifier key down message to the specified element in the browser.
+
+ The element to which to send the key command.
+ The key to be sent.
+ A self-reference to this .
+ If the key sent is not is not one
+ of , , ,
+ , ,,
+ ,.
+
+
+
+ Sends a modifier key up message to the browser.
+
+ The key to be sent.
+ A self-reference to this .
+ If the key sent is not is not one
+ of , , ,
+ , ,,
+ ,.
+
+
+
+ Sends a modifier up down message to the specified element in the browser.
+
+ The element to which to send the key command.
+ The key to be sent.
+ A self-reference to this .
+ If the key sent is not is not one
+ of , , ,
+ , ,,
+ ,.
+
+
+
+ Sends a sequence of keystrokes to the browser.
+
+ The keystrokes to send to the browser.
+ A self-reference to this .
+
+
+
+ Sends a sequence of keystrokes to the specified element in the browser.
+
+ The element to which to send the keystrokes.
+ The keystrokes to send to the browser.
+ A self-reference to this .
+
+
+
+ Clicks and holds the mouse button down on the specified element.
+
+ The element on which to click and hold.
+ A self-reference to this .
+
+
+
+ Clicks and holds the mouse button at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Releases the mouse button on the specified element.
+
+ The element on which to release the button.
+ A self-reference to this .
+
+
+
+ Releases the mouse button at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Clicks the mouse on the specified element.
+
+ The element on which to click.
+ A self-reference to this .
+
+
+
+ Clicks the mouse at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Double-clicks the mouse on the specified element.
+
+ The element on which to double-click.
+ A self-reference to this .
+
+
+
+ Double-clicks the mouse at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Moves the mouse to the specified element.
+
+ The element to which to move the mouse.
+ A self-reference to this .
+
+
+
+ Moves the mouse to the specified offset of the top-left corner of the specified element.
+
+ The element to which to move the mouse.
+ The horizontal offset to which to move the mouse.
+ The vertical offset to which to move the mouse.
+ A self-reference to this .
+
+
+
+ Moves the mouse to the specified offset of the top-left corner of the specified element.
+
+ The element to which to move the mouse.
+ The horizontal offset to which to move the mouse.
+ The vertical offset to which to move the mouse.
+ The value from which to calculate the offset.
+ A self-reference to this .
+
+
+
+ Moves the mouse to the specified offset of the last known mouse coordinates.
+
+ The horizontal offset to which to move the mouse.
+ The vertical offset to which to move the mouse.
+ A self-reference to this .
+
+
+
+ Right-clicks the mouse on the specified element.
+
+ The element on which to right-click.
+ A self-reference to this .
+
+
+
+ Right-clicks the mouse at the last known mouse coordinates.
+
+ A self-reference to this .
+
+
+
+ Performs a drag-and-drop operation from one element to another.
+
+ The element on which the drag operation is started.
+ The element on which the drop is performed.
+ A self-reference to this .
+
+
+
+ Performs a drag-and-drop operation on one element to a specified offset.
+
+ The element on which the drag operation is started.
+ The horizontal offset to which to move the mouse.
+ The vertical offset to which to move the mouse.
+ A self-reference to this .
+
+
+
+ Builds the sequence of actions.
+
+ A composite which can be used to perform the actions.
+
+
+
+ Performs the currently built action.
+
+
+
+
+ Gets the instance of the specified .
+
+ The to get the location of.
+ The of the .
+
+
+
+ Adds an action to current list of actions to be performed.
+
+ The to be added.
+
+
+
+ Represents a sequence of actions to be performed in the target browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The input device that executes this sequence of actions.
+
+
+
+ Initializes a new instance of the class.
+
+ The input device that executes this sequence of actions.
+ the initial size of the sequence.
+
+
+
+ Gets the count of actions in the sequence.
+
+
+
+
+ Adds an action to the sequence.
+
+ The action to add to the sequence.
+ A self-reference to this sequence of actions.
+
+
+
+ Converts this action sequence into an object suitable for serializing across the wire.
+
+ A containing the actions in this sequence.
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Defines an action for releasing the currently held mouse button.
+
+
+ This action can be called for an element different than the one
+ ClickAndHoldAction was called for. However, if this action is
+ performed out of sequence (without holding down the mouse button,
+ for example) the results will be different.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action for clicking on an element.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action for clicking and holding the mouse button on an element.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action that consists of a list of other actions to be performed in the browser.
+
+
+
+
+ Adds an action to the list of actions to be performed.
+
+ An to be appended to the
+ list of actions to be performed.
+ A self reference.
+
+
+
+ Performs the actions defined in this list of actions.
+
+
+
+
+ Defines an action for clicking the secondary mouse button on an element, displaying a context menu.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action for double-clicking on an element.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Creates a double tap gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs the action.
+
+
+
+
+ Creates a flick gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The horizontal speed in pixels per second.
+ The vertical speed in pixels per second.
+
+
+
+ Initializes a new instance of the class for use with the specified element.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+ The x offset relative to the viewport.
+ The y offset relative to the viewport.
+ The speed in pixels per second.
+
+
+
+ Performs the action.
+
+
+
+
+ Provides methods by which an interaction with the browser can be performed.
+
+
+
+
+ Performs this action on the browser.
+
+
+
+
+ Provides location of the element using various frames of reference.
+
+
+
+
+ Gets the location of an element in absolute screen coordinates.
+
+
+
+
+ Gets the location of an element relative to the origin of the view port.
+
+
+
+
+ Gets the location of an element's position within the HTML DOM.
+
+
+
+
+ Gets a locator providing a user-defined location for this element.
+
+
+
+
+ Defines an action for keyboard interaction with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+
+
+
+ Gets the keyboard with which to perform the action.
+
+
+
+
+ Focuses on the element on which the action is to be performed.
+
+
+
+
+ Defines an action for mouse interaction with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Gets the coordinates at which to perform the mouse action.
+
+
+
+
+ Gets the mouse with which to perform the action.
+
+
+
+
+ Moves the mouse to the location at which to perform the action.
+
+
+
+
+ Defines an action for keyboard interaction with the browser using a single modifier key.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+ The modifier key (, , ) to use in the action.
+
+
+
+ Gets the key with which to perform the action.
+
+
+
+
+ Defines an action for keyboard interaction with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ An object providing the element on which to perform the action.
+
+
+
+ Gets the touch screen with which to perform the action.
+
+
+
+
+ Gets the location at which to perform the action.
+
+
+
+
+ Defines an action for keyboard and mouse interaction with the browser.
+
+
+
+
+ Initializes a new instance of the class for the given element.
+
+ An object that provides coordinates for this action.
+
+
+
+ Initializes a new instance of the class.
+
+ This action will take place in the context of the previous action's coordinates.
+
+
+
+ Gets the target of the action providing coordinates of the action.
+
+
+
+
+ Base class for all input devices for actions.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The unique name of the input device represented by this class.
+
+
+
+ Gets the unique name of this input device.
+
+
+
+
+ Gets the kind of device for this input device.
+
+
+
+
+ Returns a value for this input device that can be transmitted across the wire to a remote end.
+
+ A representing this action.
+
+
+
+ Creates a pause action for synchronization with other action sequences.
+
+ The representing the action.
+
+
+
+ Creates a pause action for synchronization with other action sequences.
+
+ A representing the duration
+ of the pause. Note that pauses to synchronize
+ with other action sequences for other devices.
+ The representing the action.
+
+
+
+ Returns a hash code for the current .
+
+ A hash code for the current .
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Enumerated values for the kinds of devices available.
+
+
+
+
+ Represents the null device.
+
+
+
+
+ Represents a key-based device, primarily for entering text.
+
+
+
+
+ Represents a pointer-based device, such as a mouse, pen, or stylus.
+
+
+
+
+ Represents a single interaction for a given input device.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The input device which performs this action.
+
+
+
+ Gets the device for which this action is intended.
+
+
+
+
+ Returns a value for this action that can be transmitted across the wire to a remote end.
+
+ A representing this action.
+
+
+
+ Gets a value indicating whether this action is valid for the specified type of input device.
+
+ The type of device to check.
+ if the action is valid for the specified type of input device;
+ otherwise, .
+
+
+
+ Defines an action for pressing a modifier key (Shift, Alt, or Control) on the keyboard.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+ The modifier key (, , ,
+ , ,,
+ ,) to use in the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Represents a key input device, such as a keyboard.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class, given the device's name.
+
+ The unique name of this input device.
+
+
+
+ Gets the type of device for this input device.
+
+
+
+
+ Converts this input device into an object suitable for serializing across the wire.
+
+ A representing this input device.
+
+
+
+ Creates a key-down action for simulating a press of a key.
+
+ The unicode character to be sent.
+ The representing the action.
+
+
+
+ Creates a key-up action for simulating a release of a key.
+
+ The unicode character to be sent.
+ The representing the action.
+
+
+
+ Defines an action for releasing a modifier key (Shift, Alt, or Control) on the keyboard.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+ The modifier key (, , ,
+ , ,,
+ ,) to use in the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Creates a long press gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs the action.
+
+
+
+
+ Defines an action for moving the mouse to a specified location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs this action.
+
+
+
+
+ Defines an action for moving the mouse to a specified offset from its current location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+ The horizontal offset from the origin of the target to which to move the mouse.
+ The vertical offset from the origin of the target to which to move the mouse.
+
+
+
+ Performs this action.
+
+
+
+
+ Represents a pause action.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The input device on which to execute the pause.
+
+
+
+ Initializes a new instance of the class.
+
+ The input device on which to execute the pause.
+ The length of time to pause for.
+
+
+
+ Returns a value for this action that can be transmitted across the wire to a remote end.
+
+ A representing this action.
+
+
+
+ Gets a value indicating whether this action is valid for the specified type of input device.
+
+ The type of device to check.
+ if the action is valid for the specified type of input device;
+ otherwise, .
+
+
+
+ Represents the origin of the coordinates for mouse movement.
+
+
+
+
+ The coordinate origin is the origin of the view port of the browser.
+
+
+
+
+ The origin of the movement is the most recent pointer location.
+
+
+
+
+ The origin of the movement is the center of the element specified.
+
+
+
+
+ Specifies the type of pointer a pointer device represents.
+
+
+
+
+ The pointer device is a mouse.
+
+
+
+
+ The pointer device is a pen or stylus.
+
+
+
+
+ The pointer device is a touch screen device.
+
+
+
+
+ Specifies the button used during a pointer down or up action.
+
+
+
+
+ The button used is the primary button.
+
+
+
+
+ The button used is the middle button or mouse wheel.
+
+
+
+
+ The button used is the secondary button.
+
+
+
+
+ Represents a pointer input device, such as a stylus, mouse, or finger on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The kind of pointer represented by this input device.
+
+
+
+ Initializes a new instance of the class.
+
+ The kind of pointer represented by this input device.
+ The unique name for this input device.
+
+
+
+ Gets the type of device for this input device.
+
+
+
+
+ Returns a value for this input device that can be transmitted across the wire to a remote end.
+
+ A representing this action.
+
+
+
+ Creates a pointer down action.
+
+ The button of the pointer that should be pressed.
+ The action representing the pointer down gesture.
+
+
+
+ Creates a pointer up action.
+
+ The button of the pointer that should be released.
+ The action representing the pointer up gesture.
+
+
+
+ Creates a pointer move action to a specific element.
+
+ The used as the target for the move.
+ The horizontal offset from the origin of the move.
+ The vertical offset from the origin of the move.
+ The length of time the move gesture takes to complete.
+ The action representing the pointer move gesture.
+
+
+
+ Creates a pointer move action to an absolute coordinate.
+
+ The origin of coordinates for the move. Values can be relative to
+ the view port origin, or the most recent pointer position.
+ The horizontal offset from the origin of the move.
+ The vertical offset from the origin of the move.
+ The length of time the move gesture takes to complete.
+ The action representing the pointer move gesture.
+ Thrown when passing CoordinateOrigin.Element into origin.
+ Users should us the other CreatePointerMove overload to move to a specific element.
+
+
+
+ Creates a pointer cancel action.
+
+ The action representing the pointer cancel gesture.
+
+
+
+ Presses a touch screen at a given location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Performs the action.
+
+
+
+
+ Presses a touch screen at a given location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Performs the action.
+
+
+
+
+ Presses a touch screen at a given location.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Performs the action.
+
+
+
+
+ Creates a double tap gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ The horizontal offset relative to the view port.
+ The vertical offset relative to the view port.
+
+
+
+ Initializes a new instance of the class for use with the specified element.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Performs the action.
+
+
+
+
+ Defines an action for sending a sequence of keystrokes to an element.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The to use in performing the action.
+ The to use in setting focus to the element on which to perform the action.
+ An object providing the element on which to perform the action.
+ The key sequence to send.
+
+
+
+ Performs this action.
+
+
+
+
+ Creates a single tap gesture on a touch screen.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The with which the action will be performed.
+ An describing an element at which to perform the action.
+
+
+
+ Performs the action.
+
+
+
+
+ Provides a mechanism for building advanced interactions with the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The object on which the actions built will be performed.
+
+
+
+ Taps the touch screen on the specified element.
+
+ The element on which to tap.
+ A self-reference to this .
+
+
+
+ Presses down at the specified location on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+ A self-reference to this .
+
+
+
+ Releases a press at the specified location on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+ A self-reference to this .
+
+
+
+ Moves to the specified location on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+ A self-reference to this .
+
+
+
+ Scrolls the touch screen beginning at the specified element.
+
+ The element on which to begin scrolling.
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+ A self-reference to this .
+
+
+
+ Double-taps the touch screen on the specified element.
+
+ The element on which to double-tap.
+ A self-reference to this .
+
+
+
+ Presses and holds on the touch screen on the specified element.
+
+ The element on which to press and hold
+ A self-reference to this .
+
+
+
+ Scrolls the touch screen to the specified offset.
+
+ The horizontal offset relative to the view port.
+ The vertical offset relative to the view port.
+ A self-reference to this .
+
+
+
+ Flicks the current view.
+
+ The horizontal speed in pixels per second.
+ The vertical speed in pixels per second.
+ A self-reference to this .
+
+
+
+ Flicks the current view starting at a specific location.
+
+ The element at which to start the flick.
+ The x offset relative to the viewport.
+ The y offset relative to the viewport.
+ The speed in pixels per second.
+ A self-reference to this .
+
+
+
+ Utility class used to execute "asynchronous" scripts. This class should
+ only be used by browsers that do not natively support asynchronous
+ script execution.
+ Warning: this class is intended for internal use
+ only. This class will be removed without warning after all
+ native asynchronous implementations have been completed.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ An object capable of executing JavaScript.
+
+
+
+ Gets or sets the timeout for the script executor.
+
+
+
+
+ Executes a JavaScript script asynchronously.
+
+ The script to execute.
+ An array of objects used as arguments in the script.
+ The object which is the return value of the script.
+ if the object executing the function doesn't support JavaScript.
+ if the page reloads during the JavaScript execution.
+ if the timeout expires during the JavaScript execution.
+
+
+
+ Encapsulates methods for working with files.
+
+
+
+
+ Recursively copies a directory.
+
+ The source directory to copy.
+ The destination directory.
+ if the copy is completed; otherwise .
+
+
+
+ Recursively deletes a directory, retrying on error until a timeout.
+
+ The directory to delete.
+ This method does not throw an exception if the delete fails.
+
+
+
+ Searches for a file with the specified name.
+
+ The name of the file to find.
+ The full path to the directory where the file can be found,
+ or an empty string if the file does not exist in the locations searched.
+
+ This method looks first in the directory of the currently executing
+ assembly. If the specified file is not there, the method then looks in
+ each directory on the PATH environment variable, in order.
+
+
+
+
+ Gets the directory of the currently executing assembly.
+
+ The directory of the currently executing assembly.
+
+
+
+ Generates the full path to a random directory name in the temporary directory, following a naming pattern..
+
+ The pattern to use in creating the directory name, following standard
+ .NET string replacement tokens.
+ The full path to the random directory name in the temporary directory.
+
+
+
+ Interface allowing execution of W3C Specification-compliant actions.
+
+
+
+
+ Gets a value indicating whether this object is a valid action executor.
+
+
+
+
+ Performs the specified list of actions with this action executor.
+
+ The list of action sequences to perform.
+
+
+
+ Resets the input state of the action executor.
+
+
+
+
+ Defines the interface through which the user finds elements by their CSS class.
+
+
+
+
+ Finds the first element matching the specified CSS class.
+
+ The CSS class to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified CSS class.
+
+ The CSS class to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their cascading style sheet (CSS) selector.
+
+
+
+
+ Finds the first element matching the specified CSS selector.
+
+ The id to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified CSS selector.
+
+ The CSS selector to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their ID.
+
+
+
+
+ Finds the first element matching the specified id.
+
+ The id to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified id.
+
+ The id to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their link text.
+
+
+
+
+ Finds the first element matching the specified link text.
+
+ The link text to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified link text.
+
+ The link text to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their name.
+
+
+
+
+ Finds the first element matching the specified name.
+
+ The name to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified name.
+
+ The name to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by a partial match on their link text.
+
+
+
+
+ Finds the first element matching the specified partial link text.
+
+ The partial link text to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified partial link text.
+
+ The partial link text to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by their tag name.
+
+
+
+
+ Finds the first element matching the specified tag name.
+
+ The tag name to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified tag name.
+
+ The tag name to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user finds elements by XPath.
+
+
+
+
+ Finds the first element matching the specified XPath query.
+
+ The XPath query to match.
+ The first matching the criteria.
+
+
+
+ Finds all elements matching the specified XPath query.
+
+ The XPath query to match.
+ A containing all
+ IWebElements matching the criteria.
+
+
+
+ Defines the interface through which the user can access the driver used to find an element.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Defines the interface through which the framework can serialize an element to the wire protocol.
+
+
+
+
+ Gets the internal ID of the element.
+
+
+
+
+ Converts an object into an object that represents an element for the wire protocol.
+
+ A that represents an element in the wire protocol.
+
+
+
+ Defines the interface through which the user can access the driver used to find an element.
+
+
+
+
+ Gets the used to find this element.
+
+
+
+
+ Defines the interface through which the user can discover if there is an underlying element to be used.
+
+
+
+
+ Gets the wrapped by this object.
+
+
+
+
+ Encapsulates methods for working with ports.
+
+
+
+
+ Finds a random, free port to be listened on.
+
+ A random, free port to be listened on.
+
+
+
+ Encapsulates methods for finding and extracting WebDriver resources.
+
+
+
+
+ Gets a string representing the version of the Selenium assembly.
+
+
+
+
+ Gets a string representing the platform family on which the Selenium assembly is executing.
+
+
+
+
+ Gets a that contains the resource to use.
+
+ A file name in the file system containing the resource to use.
+ A string representing the resource name embedded in the
+ executing assembly, if it is not found in the file system.
+ A Stream from which the resource can be read.
+ Thrown if neither the file nor the embedded resource can be found.
+
+ The GetResourceStream method searches for the specified resource using the following
+ algorithm:
+
+
+ In the same directory as the calling assembly.
+ In the full path specified by the argument.
+ Inside the calling assembly as an embedded resource.
+
+
+
+
+
+
+ Returns a value indicating whether a resource exists with the specified ID.
+
+ ID of the embedded resource to check for.
+ if the resource exists in the calling assembly; otherwise .
+
+
+
+ Class to Create the capabilities of the browser you require for .
+ If you wish to use default values use the static methods
+
+
+
+
+ Initializes a new instance of the class
+
+
+
+
+ Initializes a new instance of the class
+
+ Dictionary of items for the remote driver
+
+
+
+ Gets the browser name
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Gets the underlying Dictionary for a given set of capabilities.
+
+
+
+
+ Gets the internal capabilities dictionary.
+
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if the browser has the capability; otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set on the browser.
+
+
+
+ Converts the object to a .
+
+ The containing the capabilities.
+
+
+
+ Return a string of capabilities being used
+
+ String of capabilities being used
+
+
+
+ Represents a cookie returned to the driver by the browser.
+
+
+
+
+ Initializes a new instance of the class with a specific name,
+ value, domain, path and expiration date.
+
+ The name of the cookie.
+ The value of the cookie.
+ The domain of the cookie.
+ The path of the cookie.
+ The expiration date of the cookie.
+ if the cookie is secure; otherwise
+ if the cookie is an HTTP-only cookie; otherwise
+ If the name is or an empty string,
+ or if it contains a semi-colon.
+ If the value or currentUrl is .
+
+
+
+ Gets a value indicating whether the cookie is secure.
+
+
+
+
+ Gets a value indicating whether the cookie is an HTTP-only cookie.
+
+
+
+
+ Creates and returns a string representation of the current cookie.
+
+ A string representation of the current cookie.
+
+
+
+ Provides entry points into needed unmanaged APIs.
+
+
+
+
+ Values for flags for setting information about a native operating system handle.
+
+
+
+
+ No flags are to be set for the handle.
+
+
+
+
+ If this flag is set, a child process created with the bInheritHandles
+ parameter of CreateProcess set to TRUE will inherit the object handle.
+
+
+
+
+ If this flag is set, calling the CloseHandle function will not close the
+ object handle.
+
+
+
+
+ Sets the handle information for a Windows object.
+
+ Handle to the object.
+ The handle information to set.
+ The flags for the handle.
+ if the information is set; otherwise .
+
+
+
+ The exception that is thrown when the users attempts to set a cookie with an invalid domain.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when a reference to an element is no longer valid.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not visible.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Defines an interface allowing the user to set options on the browser.
+
+
+
+
+ Gets an object allowing the user to manipulate cookies on the page.
+
+
+
+
+ Gets an object allowing the user to manipulate the currently-focused browser window.
+
+ "Currently-focused" is defined as the browser window having the window handle
+ returned when IWebDriver.CurrentWindowHandle is called.
+
+
+
+ Gets an object allowing the user to examing the logs for this driver instance.
+
+
+
+
+ Provides access to the timeouts defined for this driver.
+
+ An object implementing the interface.
+
+
+
+ Represents rotation of the browser view for orientation-sensitive devices.
+ When using this with a real device, the device should not be moved so that
+ the built-in sensors do not interfere.
+
+
+
+
+ Gets or sets the screen orientation of the browser on the device.
+
+
+
+
+ Defines the interface used to search for elements.
+
+
+
+
+ Finds the first using the given method.
+
+ The locating mechanism to use.
+ The first matching on the current context.
+ If no element matches the criteria.
+
+
+
+ Finds all IWebElements within the current context
+ using the given mechanism.
+
+ The locating mechanism to use.
+ A of all WebElements
+ matching the current criteria, or an empty list if nothing matches.
+
+
+
+ Defines the interface used to take screen shot images of the screen.
+
+
+
+
+ Gets a object representing the image of the page on the screen.
+
+ A object containing the image.
+
+
+
+ Defines the interface through which the user can locate a given frame or window.
+
+
+
+
+ Select a frame by its (zero-based) index.
+
+ The zero-based index of the frame to select.
+ An instance focused on the specified frame.
+ If the frame cannot be found.
+
+
+
+ Select a frame by its name or ID.
+
+ The name of the frame to select.
+ An instance focused on the specified frame.
+ If the frame cannot be found.
+
+
+
+ Select a frame using its previously located
+
+ The frame element to switch to.
+ An instance focused on the specified frame.
+ If the element is neither a FRAME nor an IFRAME element.
+ If the element is no longer valid.
+
+
+
+ Select the parent frame of the currently selected frame.
+
+ An instance focused on the specified frame.
+
+
+
+ Switches the focus of future commands for this driver to the window with the given name.
+
+ The name of the window to select.
+ An instance focused on the given window.
+ If the window cannot be found.
+
+
+
+ Selects either the first frame on the page or the main document when a page contains iFrames.
+
+ An instance focused on the default frame.
+
+
+
+ Switches to the element that currently has the focus, or the body element
+ if no element with focus can be detected.
+
+ An instance representing the element
+ with the focus, or the body element if no element with focus can be detected.
+
+
+
+ Switches to the currently active modal dialog for this particular driver instance.
+
+ A handle to the dialog.
+
+
+
+ Defines the interface through which the user can define timeouts.
+
+
+
+
+ Gets or sets the implicit wait timeout, which is the amount of time the
+ driver should wait when searching for an element if it is not immediately
+ present.
+
+
+ When searching for a single element, the driver should poll the page
+ until the element has been found, or this timeout expires before throwing
+ a . When searching for multiple elements,
+ the driver should poll the page until at least one element has been found
+ or this timeout has expired.
+
+ Increasing the implicit wait timeout should be used judiciously as it
+ will have an adverse effect on test run time, especially when used with
+ slower location strategies like XPath.
+
+
+
+
+
+ Gets or sets the asynchronous script timeout, which is the amount
+ of time the driver should wait when executing JavaScript asynchronously.
+ This timeout only affects the
+ method.
+
+
+
+
+ Gets or sets the page load timeout, which is the amount of time the driver
+ should wait for a page to load when setting the
+ property.
+
+
+
+
+ Interface representing basic touch screen operations.
+
+
+
+
+ Allows the execution of single tap on the screen, analogous to click using a Mouse.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Allows the execution of the gesture 'down' on the screen. It is typically the first of a
+ sequence of touch gestures.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Allows the execution of the gesture 'up' on the screen. It is typically the last of a
+ sequence of touch gestures.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Allows the execution of the gesture 'move' on the screen.
+
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Creates a scroll gesture that starts on a particular screen location.
+
+ The object representing the location on the screen
+ where the scroll starts, usually an .
+ The x coordinate relative to the view port.
+ The y coordinate relative to the view port.
+
+
+
+ Creates a scroll gesture for a particular x and y offset.
+
+ The horizontal offset relative to the view port.
+ The vertical offset relative to the view port.
+
+
+
+ Allows the execution of double tap on the screen, analogous to click using a Mouse.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Allows the execution of a long press gesture on the screen.
+
+ The object representing the location on the screen,
+ usually an .
+
+
+
+ Creates a flick gesture for the current view.
+
+ The horizontal speed in pixels per second.
+ The vertical speed in pixels per second.
+
+
+
+ Creates a flick gesture for the current view starting at a specific location.
+
+ The object representing the location on the screen
+ where the scroll starts, usually an .
+ The x offset relative to the viewport.
+ The y offset relative to the viewport.
+ The speed in pixels per second.
+
+
+
+ Defines the interface through which the user controls the browser.
+
+
+ The interface is the main interface to use for testing, which
+ represents an idealized web browser. The methods in this class fall into three categories:
+
+ Control of the browser itself
+ Selection of IWebElements
+ Debugging aids
+
+
+ Key properties and methods are , which is used to
+ load a new web page by setting the property, and the various methods similar
+ to , which is used to find IWebElements.
+
+
+ You use the interface by instantiate drivers that implement of this interface.
+ You should write your tests against this interface so that you may "swap in" a
+ more fully featured browser when there is a requirement for one.
+
+
+
+
+
+ Gets or sets the URL the browser is currently displaying.
+
+
+ Setting the property will load a new web page in the current browser window.
+ This is done using an HTTP GET operation, and the method will block until the
+ load is complete. This will follow redirects issued either by the server or
+ as a meta-redirect from within the returned HTML. Should a meta-redirect "rest"
+ for any duration of time, it is best to wait until this timeout is over, since
+ should the underlying page change while your test is executing the results of
+ future calls against this interface will be against the freshly loaded page.
+
+
+
+
+
+
+ Gets the title of the current browser window.
+
+
+
+
+ Gets the source of the page last loaded by the browser.
+
+
+ If the page has been modified after loading (for example, by JavaScript)
+ there is no guarantee that the returned text is that of the modified page.
+ Please consult the documentation of the particular driver being used to
+ determine whether the returned text reflects the current state of the page
+ or the text last sent by the web server. The page source returned is a
+ representation of the underlying DOM: do not expect it to be formatted
+ or escaped in the same way as the response sent from the web server.
+
+
+
+
+ Gets the current window handle, which is an opaque handle to this
+ window that uniquely identifies it within this driver instance.
+
+
+
+
+ Gets the window handles of open browser windows.
+
+
+
+
+ Close the current window, quitting the browser if it is the last window currently open.
+
+
+
+
+ Quits this driver, closing every associated window.
+
+
+
+
+ Instructs the driver to change its settings.
+
+ An object allowing the user to change
+ the settings of the driver.
+
+
+
+ Instructs the driver to navigate the browser to another location.
+
+ An object allowing the user to access
+ the browser's history and to navigate to a given URL.
+
+
+
+ Instructs the driver to send future commands to a different frame or window.
+
+ An object which can be used to select
+ a frame or window.
+
+
+
+ Defines the interface through which the user controls elements on the page.
+
+ The interface represents an HTML element.
+ Generally, all interesting operations to do with interacting with a page will
+ be performed through this interface.
+
+
+
+
+ Gets the tag name of this element.
+
+
+ The property returns the tag name of the
+ element, not the value of the name attribute. For example, it will return
+ "input" for an element specified by the HTML markup <input name="foo" />.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the innerText of this element, without any leading or trailing whitespace,
+ and with other whitespace collapsed.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is enabled.
+
+ The property will generally
+ return for everything except explicitly disabled input elements.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is selected.
+
+ This operation only applies to input elements such as checkboxes,
+ options in a select element and radio buttons.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a object containing the coordinates of the upper-left corner
+ of this element relative to the upper-left corner of the page.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a object containing the height and width of this element.
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets a value indicating whether or not this element is displayed.
+
+ The property avoids the problem
+ of having to parse an element's "style" attribute to determine
+ visibility of an element.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Clears the content of this element.
+
+ If this element is a text entry element, the
+ method will clear the value. It has no effect on other elements. Text entry elements
+ are defined as elements with INPUT or TEXTAREA tags.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Simulates typing text into the element.
+
+ The text to type into the element.
+ The text to be typed may include special characters like arrow keys,
+ backspaces, function keys, and so on. Valid special keys are defined in
+ .
+
+ Thrown when the target element is not enabled.
+ Thrown when the target element is not visible.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Submits this element to the web server.
+
+ If this current element is a form, or an element within a form,
+ then this will be submitted to the web server. If this causes the current
+ page to change, then this method will block until the new page is loaded.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Clicks this element.
+
+
+
+ Click this element. If the click causes a new page to load, the
+ method will attempt to block until the page has loaded. After calling the
+ method, you should discard all references to this
+ element unless you know that the element and the page will still be present.
+ Otherwise, any further operations performed on this element will have an undefined.
+ behavior.
+
+
+ If this element is not clickable, then this operation is ignored. This allows you to
+ simulate a users to accidentally missing the target when clicking.
+
+
+ Thrown when the target element is not visible.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of the specified attribute for this element.
+
+ The name of the attribute.
+ The attribute's current value. Returns a if the
+ value is not set.
+ The method will return the current value
+ of the attribute, even if the value has been modified after the page has been
+ loaded. Note that the value of the following attributes will be returned even if
+ there is no explicit attribute on the element:
+
+
+ Attribute name
+ Value returned if not explicitly specified
+ Valid element types
+
+
+ checked
+ checked
+ Check Box
+
+
+ selected
+ selected
+ Options in Select elements
+
+
+ disabled
+ disabled
+ Input and other UI elements
+
+
+
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of a JavaScript property of this element.
+
+ The name JavaScript the JavaScript property to get the value of.
+ The JavaScript property's current value. Returns a if the
+ value is not set or the property does not exist.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Gets the value of a CSS property of this element.
+
+ The name of the CSS property to get the value of.
+ The value of the specified CSS property.
+ The value returned by the
+ method is likely to be unpredictable in a cross-browser environment.
+ Color values should be returned as hex strings. For example, a
+ "background-color" property set as "green" in the HTML source, will
+ return "#008000" for its value.
+ Thrown when the target element is no longer valid in the document DOM.
+
+
+
+ Provides methods for getting and setting the size and position of the browser window.
+
+
+
+
+ Gets or sets the position of the browser window relative to the upper-left corner of the screen.
+
+ When setting this property, it should act as the JavaScript window.moveTo() method.
+
+
+
+ Gets or sets the size of the outer browser window, including title bars and window borders.
+
+ When setting this property, it should act as the JavaScript window.resizeTo() method.
+
+
+
+ Maximizes the current window if it is not already maximized.
+
+
+
+
+ Minimizes the current window if it is not already maximized.
+
+
+
+
+ Sets the current window to full screen if it is not already in that state.
+
+
+
+
+ Representations of keys able to be pressed that are not text keys for sending to the browser.
+
+
+
+
+ Represents the NUL keystroke.
+
+
+
+
+ Represents the Cancel keystroke.
+
+
+
+
+ Represents the Help keystroke.
+
+
+
+
+ Represents the Backspace key.
+
+
+
+
+ Represents the Tab key.
+
+
+
+
+ Represents the Clear keystroke.
+
+
+
+
+ Represents the Return key.
+
+
+
+
+ Represents the Enter key.
+
+
+
+
+ Represents the Shift key.
+
+
+
+
+ Represents the Shift key.
+
+
+
+
+ Represents the Control key.
+
+
+
+
+ Represents the Control key.
+
+
+
+
+ Represents the Alt key.
+
+
+
+
+ Represents the Alt key.
+
+
+
+
+ Represents the Pause key.
+
+
+
+
+ Represents the Escape key.
+
+
+
+
+ Represents the Spacebar key.
+
+
+
+
+ Represents the Page Up key.
+
+
+
+
+ Represents the Page Down key.
+
+
+
+
+ Represents the End key.
+
+
+
+
+ Represents the Home key.
+
+
+
+
+ Represents the left arrow key.
+
+
+
+
+ Represents the left arrow key.
+
+
+
+
+ Represents the up arrow key.
+
+
+
+
+ Represents the up arrow key.
+
+
+
+
+ Represents the right arrow key.
+
+
+
+
+ Represents the right arrow key.
+
+
+
+
+ Represents the Left arrow key.
+
+
+
+
+ Represents the Left arrow key.
+
+
+
+
+ Represents the Insert key.
+
+
+
+
+ Represents the Delete key.
+
+
+
+
+ Represents the semi-colon key.
+
+
+
+
+ Represents the equal sign key.
+
+
+
+
+ Represents the number pad 0 key.
+
+
+
+
+ Represents the number pad 1 key.
+
+
+
+
+ Represents the number pad 2 key.
+
+
+
+
+ Represents the number pad 3 key.
+
+
+
+
+ Represents the number pad 4 key.
+
+
+
+
+ Represents the number pad 5 key.
+
+
+
+
+ Represents the number pad 6 key.
+
+
+
+
+ Represents the number pad 7 key.
+
+
+
+
+ Represents the number pad 8 key.
+
+
+
+
+ Represents the number pad 9 key.
+
+
+
+
+ Represents the number pad multiplication key.
+
+
+
+
+ Represents the number pad addition key.
+
+
+
+
+ Represents the number pad thousands separator key.
+
+
+
+
+ Represents the number pad subtraction key.
+
+
+
+
+ Represents the number pad decimal separator key.
+
+
+
+
+ Represents the number pad division key.
+
+
+
+
+ Represents the function key F1.
+
+
+
+
+ Represents the function key F2.
+
+
+
+
+ Represents the function key F3.
+
+
+
+
+ Represents the function key F4.
+
+
+
+
+ Represents the function key F5.
+
+
+
+
+ Represents the function key F6.
+
+
+
+
+ Represents the function key F7.
+
+
+
+
+ Represents the function key F8.
+
+
+
+
+ Represents the function key F9.
+
+
+
+
+ Represents the function key F10.
+
+
+
+
+ Represents the function key F11.
+
+
+
+
+ Represents the function key F12.
+
+
+
+
+ Represents the function key META.
+
+
+
+
+ Represents the function key COMMAND.
+
+
+
+
+ Gets the description of a specific key.
+
+ The key value for which to get the description.
+ The description of the key.
+
+
+
+ Represents an entry in a log from a driver instance.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the timestamp value of the log entry.
+
+
+
+
+ Gets the logging level of the log entry.
+
+
+
+
+ Gets the message of the log entry.
+
+
+
+
+ Returns a string that represents the current .
+
+ A string that represents the current .
+
+
+
+ Creates a from a dictionary as deserialized from JSON.
+
+ The from
+ which to create the .
+ A with the values in the dictionary.
+
+
+
+ Represents the levels of logging available to driver instances.
+
+
+
+
+ Show all log messages.
+
+
+
+
+ Show messages with information useful for debugging.
+
+
+
+
+ Show informational messages.
+
+
+
+
+ Show messages corresponding to non-critical issues.
+
+
+
+
+ Show messages corresponding to critical issues.
+
+
+
+
+ Show no log messages.
+
+
+
+
+ Class containing names of common log types.
+
+
+
+
+ Log messages from the client language bindings.
+
+
+
+
+ Logs from the current WebDriver instance.
+
+
+
+
+ Logs from the browser.
+
+
+
+
+ Logs from the server.
+
+
+
+
+ Profiling logs.
+
+
+
+
+ The exception that is thrown when an alert is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an element is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when a frame is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when a window is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an item is not found.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Provides a mechanism to write tests against Opera
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new OperaDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ }
+ }
+
+
+
+
+
+ Accept untrusted SSL Certificates
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified options.
+
+ The to be used with the Opera driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing OperaDriver.exe.
+
+ The full path to the directory containing OperaDriver.exe.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing OperaDriver.exe and options.
+
+ The full path to the directory containing OperaDriver.exe.
+ The to be used with the Opera driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing OperaDriver.exe, options, and command timeout.
+
+ The full path to the directory containing OperaDriver.exe.
+ The to be used with the Opera driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use.
+ The to be used with the Opera driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The Opera driver does not allow a file detector to be set,
+ as the server component of the Opera driver (OperaDriver.exe) only
+ allows uploads from the local computer environment. Attempting to set
+ this property has no effect, but does not throw an exception. If you
+ are attempting to run the Opera driver remotely, use
+ in conjunction with a standalone WebDriver server.
+
+
+
+ Exposes the service provided by the native OperaDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the OperaDriver executable.
+ The file name of the OperaDriver executable.
+ The port on which the OperaDriver executable should listen.
+
+
+
+ Gets or sets the location of the log file written to by the OperaDriver executable.
+
+
+
+
+ Gets or sets the base URL path prefix for commands (e.g., "wd/url").
+
+
+
+
+ Gets or sets the address of a server to contact for reserving a port.
+
+
+
+
+ Gets or sets the port on which the Android Debug Bridge is listening for commands.
+
+
+
+
+ Gets or sets a value indicating whether to enable verbose logging for the OperaDriver executable.
+ Defaults to .
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Creates a default instance of the OperaDriverService.
+
+ A OperaDriverService that implements default settings.
+
+
+
+ Creates a default instance of the OperaDriverService using a specified path to the OperaDriver executable.
+
+ The directory containing the OperaDriver executable.
+ A OperaDriverService using a random port.
+
+
+
+ Creates a default instance of the OperaDriverService using a specified path to the OperaDriver executable with the given name.
+
+ The directory containing the OperaDriver executable.
+ The name of the OperaDriver executable file.
+ A OperaDriverService using a random port.
+
+
+
+ Class to manage options specific to
+
+
+ Used with OperaDriver.exe for Chromium v0.1.0 and higher.
+
+
+
+ OperaOptions options = new OperaOptions();
+ options.AddExtensions("\path\to\extension.crx");
+ options.BinaryLocation = "\path\to\opera";
+
+
+ For use with OperaDriver:
+
+
+ OperaDriver driver = new OperaDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Gets the name of the capability used to store Opera options in
+ a object.
+
+
+
+
+ Gets or sets the location of the Opera browser's binary executable file.
+
+
+
+
+ Gets or sets a value indicating whether Opera should be left running after the
+ OperaDriver instance is exited. Defaults to .
+
+
+
+
+ Gets the list of arguments appended to the Opera command line as a string array.
+
+
+
+
+ Gets the list of extensions to be installed as an array of base64-encoded strings.
+
+
+
+
+ Gets or sets the address of a Opera debugger server to connect to.
+ Should be of the form "{hostname|IP address}:port".
+
+
+
+
+ Gets or sets the directory in which to store minidump files.
+
+
+
+
+ Adds a single argument to the list of arguments to be appended to the Opera.exe command line.
+
+ The argument to add.
+
+
+
+ Adds arguments to be appended to the Opera.exe command line.
+
+ An array of arguments to add.
+
+
+
+ Adds arguments to be appended to the Opera.exe command line.
+
+ An object of arguments to add.
+
+
+
+ Adds a single argument to be excluded from the list of arguments passed by default
+ to the Opera.exe command line by operadriver.exe.
+
+ The argument to exclude.
+
+
+
+ Adds arguments to be excluded from the list of arguments passed by default
+ to the Opera.exe command line by operadriver.exe.
+
+ An array of arguments to exclude.
+
+
+
+ Adds arguments to be excluded from the list of arguments passed by default
+ to the Opera.exe command line by operadriver.exe.
+
+ An object of arguments to exclude.
+
+
+
+ Adds a path to a packed Opera extension (.crx file) to the list of extensions
+ to be installed in the instance of Opera.
+
+ The full path to the extension to add.
+
+
+
+ Adds a list of paths to packed Opera extensions (.crx files) to be installed
+ in the instance of Opera.
+
+ An array of full paths to the extensions to add.
+
+
+
+ Adds a list of paths to packed Opera extensions (.crx files) to be installed
+ in the instance of Opera.
+
+ An of full paths to the extensions to add.
+
+
+
+ Adds a base64-encoded string representing a Opera extension to the list of extensions
+ to be installed in the instance of Opera.
+
+ A base64-encoded string representing the extension to add.
+
+
+
+ Adds a list of base64-encoded strings representing Opera extensions to the list of extensions
+ to be installed in the instance of Opera.
+
+ An array of base64-encoded strings representing the extensions to add.
+
+
+
+ Adds a list of base64-encoded strings representing Opera extensions to be installed
+ in the instance of Opera.
+
+ An of base64-encoded strings
+ representing the extensions to add.
+
+
+
+ Adds a preference for the user-specific profile or "user data directory."
+ If the specified preference already exists, it will be overwritten.
+
+ The name of the preference to set.
+ The value of the preference to set.
+
+
+
+ Adds a preference for the local state file in the user's data directory for Opera.
+ If the specified preference already exists, it will be overwritten.
+
+ The name of the preference to set.
+ The value of the preference to set.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Opera driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in .
+ Also, by default, calling this method adds capabilities to the options object passed to
+ operadriver.exe.
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Opera driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+ Indicates whether the capability is to be set as a global
+ capability for the driver instead of a Opera-specific option.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling
+ where has already been added will overwrite the
+ existing value with the new value in
+
+
+
+ Returns DesiredCapabilities for Opera with these options included as
+ capabilities. This does not copy the options. Further changes will be
+ reflected in the returned capabilities.
+
+ The DesiredCapabilities for Opera with these options.
+
+
+
+ Provides a mechanism to get elements off the page for test
+
+
+
+
+ Initializes a new instance of the class
+
+ Driver in use
+ Id of the element
+
+
+
+ Represents the known and supported Platforms that WebDriver runs on.
+
+ The class maps closely to the Operating System,
+ but differs slightly, because this class is used to extract information such as
+ program locations and line endings.
+
+
+
+ Any platform. This value is never returned by a driver, but can be used to find
+ drivers with certain capabilities.
+
+
+
+
+ Any version of Microsoft Windows. This value is never returned by a driver,
+ but can be used to find drivers with certain capabilities.
+
+
+
+
+ Any Windows NT-based version of Microsoft Windows. This value is never returned
+ by a driver, but can be used to find drivers with certain capabilities. This value
+ is equivalent to PlatformType.Windows.
+
+
+
+
+ Versions of Microsoft Windows that are compatible with Windows XP.
+
+
+
+
+ Versions of Microsoft Windows that are compatible with Windows Vista.
+
+
+
+
+ Any version of the Macintosh OS
+
+
+
+
+ Any version of the Unix operating system.
+
+
+
+
+ Any version of the Linux operating system.
+
+
+
+
+ A version of the Android mobile operating system.
+
+
+
+
+ Represents the platform on which tests are to be run.
+
+
+
+
+ Initializes a new instance of the class for a specific platform type.
+
+ The platform type.
+
+
+
+ Gets the current platform.
+
+
+
+
+ Gets the major version of the platform operating system.
+
+
+
+
+ Gets the major version of the platform operating system.
+
+
+
+
+ Gets the type of the platform.
+
+
+
+
+ Gets the value of the platform type for transmission using the JSON Wire Protocol.
+
+
+
+
+ Compares the platform to the specified type.
+
+ A value to compare to.
+ if the platforms match; otherwise .
+
+
+
+ Returns the string value for this platform type.
+
+ The string value for this platform type.
+
+
+
+ Creates a object from a string name of the platform.
+
+ The name of the platform to create.
+ The Platform object represented by the string name.
+
+
+
+ Describes the kind of proxy.
+
+
+ Keep these in sync with the Firefox preferences numbers:
+ http://kb.mozillazine.org/Network.proxy.type
+
+
+
+
+ Direct connection, no proxy (default on Windows).
+
+
+
+
+ Manual proxy settings (e.g., for httpProxy).
+
+
+
+
+ Proxy automatic configuration from URL.
+
+
+
+
+ Use proxy automatic detection.
+
+
+
+
+ Use the system values for proxy settings (default on Linux).
+
+
+
+
+ No proxy type is specified.
+
+
+
+
+ Describes proxy settings to be used with a driver instance.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with the given proxy settings.
+
+ A dictionary of settings to use with the proxy.
+
+
+
+ Gets or sets the type of proxy.
+
+
+
+
+ Gets the type of proxy as a string for JSON serialization.
+
+
+
+
+ Gets or sets a value indicating whether the proxy uses automatic detection.
+
+
+
+
+ Gets or sets the value of the proxy for the FTP protocol.
+
+
+
+
+ Gets or sets the value of the proxy for the HTTP protocol.
+
+
+
+
+ Gets or sets the value for bypass proxy addresses.
+
+
+
+
+ Gets the semicolon delimited list of address for which to bypass the proxy.
+
+
+
+
+ Gets or sets the URL used for proxy automatic configuration.
+
+
+
+
+ Gets or sets the value of the proxy for the SSL protocol.
+
+
+
+
+ Gets or sets the value of the proxy for the SOCKS protocol.
+
+
+
+
+ Gets or sets the value of username for the SOCKS proxy.
+
+
+
+
+ Gets or sets the value of password for the SOCKS proxy.
+
+
+
+
+ Adds a single address to the list of addresses against which the proxy will not be used.
+
+ The address to add.
+
+
+
+ Adds addresses to the list of addresses against which the proxy will not be used.
+
+ An array of addresses to add.
+
+
+
+ Adds addresses to the list of addresses against which the proxy will not be used.
+
+ An object of arguments to add.
+
+
+
+ Returns a dictionary suitable for serializing to the W3C Specification
+ dialect of the wire protocol.
+
+ A dictionary suitable for serializing to the W3C Specification
+ dialect of the wire protocol.
+
+
+
+ Returns a dictionary suitable for serializing to the OSS dialect of the
+ wire protocol.
+
+ A dictionary suitable for serializing to the OSS dialect of the
+ wire protocol.
+
+
+
+ Base class for managing options specific to a browser driver.
+
+
+
+
+ Creates a new instance of the class.
+
+
+
+
+ Creates a new instance of the class,
+ containing the specified to use in the remote
+ session.
+
+
+ A object that contains values that must be matched
+ by the remote end to create the remote session.
+
+
+ A list of objects that contain values that may be matched
+ by the remote end to create the remote session.
+
+
+
+
+ Gets a value indicating the options that must be matched by the remote end to create a session.
+
+
+
+
+ Gets a value indicating the number of options that may be matched by the remote end to create a session.
+
+
+
+
+ Gets the capability value with the specified name.
+
+ The name of the capability to get.
+ The value of the capability.
+
+ The specified capability name is not in the set of capabilities.
+
+
+
+
+ Add a metadata setting to this set of remote session settings.
+
+ The name of the setting to set.
+ The value of the setting.
+
+ The value to be set must be serializable to JSON for transmission
+ across the wire to the remote end. To be JSON-serializable, the value
+ must be a string, a numeric value, a boolean value, an object that
+ implmeents that contains JSON-serializable
+ objects, or a where the keys
+ are strings and the values are JSON-serializable.
+
+
+ Thrown if the setting name is null, the empty string, or one of the
+ reserved names of metadata settings; or if the setting value is not
+ JSON serializable.
+
+
+
+
+ Adds a object to the list of options containing values to be
+ "first matched" by the remote end.
+
+ The to add to the list of "first matched" options.
+
+
+
+ Adds a object containing values that must be matched
+ by the remote end to successfully create a session.
+
+ The that must be matched by
+ the remote end to successfully create a session.
+
+
+
+ Gets a value indicating whether the browser has a given capability.
+
+ The capability to get.
+ Returns if this set of capabilities has the capability;
+ otherwise, .
+
+
+
+ Gets a capability of the browser.
+
+ The capability to get.
+ An object associated with the capability, or
+ if the capability is not set in this set of capabilities.
+
+
+
+ Return a dictionary representation of this .
+
+ A representation of this .
+
+
+
+ Return a string representation of the remote session settings to be sent.
+
+ String representation of the remote session settings to be sent.
+
+
+
+ Provides a way to access Safari to run your tests by creating a SafariDriver instance
+
+
+ When the WebDriver object has been instantiated the browser will load. The test can then navigate to the URL under test and
+ start your test.
+
+
+
+ [TestFixture]
+ public class Testing
+ {
+ private IWebDriver driver;
+
+ [SetUp]
+ public void SetUp()
+ {
+ driver = new SafariDriver();
+ }
+
+ [Test]
+ public void TestGoogle()
+ {
+ driver.Navigate().GoToUrl("http://www.google.co.uk");
+ /*
+ * Rest of the test
+ */
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ driver.Quit();
+ driver.Dispose();
+ }
+ }
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use for this instance.
+
+
+
+ Initializes a new instance of the class using the specified driver service.
+
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe.
+
+ The full path to the directory containing SafariDriver executable.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe and options.
+
+ The full path to the directory containing SafariDriver executable.
+ The to be used with the Safari driver.
+
+
+
+ Initializes a new instance of the class using the specified path
+ to the directory containing ChromeDriver.exe, options, and command timeout.
+
+ The full path to the directory containing SafariDriver executable.
+ The to be used with the Safari driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Initializes a new instance of the class using the specified
+ and options.
+
+ The to use.
+ The used to initialize the driver.
+
+
+
+ Initializes a new instance of the class using the specified .
+
+ The to use.
+ The to be used with the Safari driver.
+ The maximum amount of time to wait for each command.
+
+
+
+ Gets or sets the responsible for detecting
+ sequences of keystrokes representing file paths and names.
+
+ The Safari driver does not allow a file detector to be set,
+ as the server component of the Safari driver (the Safari extension) only
+ allows uploads from the local computer environment. Attempting to set
+ this property has no effect, but does not throw an exception. If you
+ are attempting to run the Safari driver remotely, use
+ in conjunction with a standalone WebDriver server.
+
+
+
+ Exposes the service provided by the native SafariDriver executable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The full path to the SafariDriver executable.
+ The file name of the SafariDriver executable.
+ The port on which the SafariDriver executable should listen.
+
+
+
+ Gets or sets a value indicating whether to use the default open-source project
+ dialect of the protocol instead of the default dialect compliant with the
+ W3C WebDriver Specification.
+
+
+ This is only valid for versions of the driver for Safari that target Safari 12
+ or later, and will result in an error if used with prior versions of the driver.
+
+
+
+
+ Gets the command-line arguments for the driver service.
+
+
+
+
+ Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
+ For the Safari driver, there is no time for termination
+
+
+
+
+ Gets a value indicating whether the service has a shutdown API that can be called to terminate
+ it gracefully before forcing a termination.
+
+
+
+
+ Gets a value indicating whether the service is responding to HTTP requests.
+
+
+
+
+ Creates a default instance of the SafariDriverService.
+
+ A SafariDriverService that implements default settings.
+
+
+
+ Creates a default instance of the SafariDriverService using a specified path to the ChromeDriver executable.
+
+ The directory containing the ChromeDriver executable.
+ A ChromeDriverService using a random port.
+
+
+
+ Creates a default instance of the SafariDriverService using a specified path to the ChromeDriver executable with the given name.
+
+ The directory containing the ChromeDriver executable.
+ The name of the ChromeDriver executable file.
+ A ChromeDriverService using a random port.
+
+
+
+ Class to manage options specific to
+
+
+
+ SafariOptions options = new SafariOptions();
+ options.SkipExtensionInstallation = true;
+
+
+ For use with SafariDriver:
+
+
+ SafariDriver driver = new SafariDriver(options);
+
+
+ For use with RemoteWebDriver:
+
+
+ RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets a value indicating whether to have the driver preload the
+ Web Inspector and JavaScript debugger in the background.
+
+
+
+
+ Gets or sets a value indicating whether to have the driver preload the
+ Web Inspector and start a timeline recording in the background.
+
+
+
+
+ Gets or sets a value indicating whether the browser is the technology preview.
+
+
+
+
+ Provides a means to add additional capabilities not yet added as type safe options
+ for the Safari driver.
+
+ The name of the capability to add.
+ The value of the capability to add.
+
+ thrown when attempting to add a capability for which there is already a type safe option, or
+ when is or the empty string.
+
+ Calling where
+ has already been added will overwrite the existing value with the new value in
+
+
+
+ Returns ICapabilities for Safari with these options included as
+ capabilities. This copies the options. Further changes will not be
+ reflected in the returned capabilities.
+
+ The ICapabilities for Safari with these options.
+
+
+
+ Represents possible screen orientations.
+
+
+
+
+ Represents a portrait mode, where the screen is vertical.
+
+
+
+
+ Represents Landscape mode, where the screen is horizontal.
+
+
+
+
+ File format for saving screenshots.
+
+
+
+
+ W3C Portable Network Graphics image format.
+
+
+
+
+ Joint Photgraphic Experts Group image format.
+
+
+
+
+ Graphics Interchange Format image format.
+
+
+
+
+ Tagged Image File Format image format.
+
+
+
+
+ Bitmap image format.
+
+
+
+
+ Represents an image of the page currently loaded in the browser.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The image of the page as a Base64-encoded string.
+
+
+
+ Gets the value of the screenshot image as a Base64-encoded string.
+
+
+
+
+ Gets the value of the screenshot image as an array of bytes.
+
+
+
+
+ Saves the screenshot to a Portable Network Graphics (PNG) file, overwriting the
+ file if it already exists.
+
+ The full path and file name to save the screenshot to.
+
+
+
+ Saves the screenshot to a file, overwriting the file if it already exists.
+
+ The full path and file name to save the screenshot to.
+ A value indicating the format
+ to save the image to.
+
+
+
+ Returns a String that represents the current Object.
+
+ A String that represents the current Object.
+
+
+
+ The exception that is thrown when a reference to an element is no longer valid.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ An implementation of the interface that may have its timeout and polling interval
+ configured on the fly.
+
+ The type of object on which the wait it to be applied.
+
+
+
+ Initializes a new instance of the class.
+
+ The input value to pass to the evaluated conditions.
+
+
+
+ Initializes a new instance of the class.
+
+ The input value to pass to the evaluated conditions.
+ The clock to use when measuring the timeout.
+
+
+
+ Gets or sets how long to wait for the evaluated condition to be true. The default timeout is 500 milliseconds.
+
+
+
+
+ Gets or sets how often the condition should be evaluated. The default timeout is 500 milliseconds.
+
+
+
+
+ Gets or sets the message to be displayed when time expires.
+
+
+
+
+ Configures this instance to ignore specific types of exceptions while waiting for a condition.
+ Any exceptions not whitelisted will be allowed to propagate, terminating the wait.
+
+ The types of exceptions to ignore.
+
+
+
+ Repeatedly applies this instance's input value to the given function until one of the following
+ occurs:
+
+
+ the function returns neither null nor false
+ the function throws an exception that is not in the list of ignored exception types
+ the timeout expires
+
+
+
+ The delegate's expected return type.
+ A delegate taking an object of type T as its parameter, and returning a TResult.
+ The delegate's return value.
+
+
+
+ Throws a with the given message.
+
+ The message of the exception.
+ The last exception thrown by the condition.
+ This method may be overridden to throw an exception that is
+ idiomatic for a particular test infrastructure.
+
+
+
+ An interface describing time handling functions for timeouts.
+
+
+
+
+ Gets the current date and time values.
+
+
+
+
+ Gets the at a specified offset in the future.
+
+ The offset to use.
+ The at the specified offset in the future.
+
+
+
+ Gets a value indicating whether the current date and time is before the specified date and time.
+
+ The date and time values to compare the current date and time values to.
+ if the current date and time is before the specified date and time; otherwise, .
+
+
+
+ Interface describing a class designed to wait for a condition.
+
+ The type of object used to detect the condition.
+
+
+
+ Gets or sets how long to wait for the evaluated condition to be true.
+
+
+
+
+ Gets or sets how often the condition should be evaluated.
+
+
+
+
+ Gets or sets the message to be displayed when time expires.
+
+
+
+
+ Configures this instance to ignore specific types of exceptions while waiting for a condition.
+ Any exceptions not whitelisted will be allowed to propagate, terminating the wait.
+
+ The types of exceptions to ignore.
+
+
+
+ Waits until a condition is true or times out.
+
+ The type of result to expect from the condition.
+ A delegate taking a TSource as its parameter, and returning a TResult.
+ If TResult is a boolean, the method returns when the condition is true, and otherwise.
+ If TResult is an object, the method returns the object when the condition evaluates to a value other than .
+ Thrown when TResult is not boolean or an object type.
+
+
+
+ Uses the system clock to calculate time for timeouts.
+
+
+
+
+ Gets the current date and time values.
+
+
+
+
+ Calculates the date and time values after a specific delay.
+
+ The delay after to calculate.
+ The future date and time values.
+
+
+
+ Gets a value indicating whether the current date and time is before the specified date and time.
+
+ The date and time values to compare the current date and time values to.
+ if the current date and time is before the specified date and time; otherwise, .
+
+
+
+ Provides the ability to wait for an arbitrary condition during test execution.
+
+
+
+ IWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(3))
+ IWebElement element = wait.Until(driver => driver.FindElement(By.Name("q")));
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The WebDriver instance used to wait.
+ The timeout value indicating how long to wait for the condition.
+
+
+
+ Initializes a new instance of the class.
+
+ An object implementing the interface used to determine when time has passed.
+ The WebDriver instance used to wait.
+ The timeout value indicating how long to wait for the condition.
+ A value indicating how often to check for the condition to be true.
+
+
+
+ The exception that is thrown when the user is unable to set a cookie.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an unhandled alert is present.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and alert text.
+
+ The message that describes the error.
+ The text of the unhandled alert.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Gets the text of the unhandled alert.
+
+
+
+
+ Populates a SerializationInfo with the data needed to serialize the target object.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Represents exceptions that are thrown when an error occurs during actions.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Specifies return values for actions in the driver.
+
+
+
+
+ The action was successful.
+
+
+
+
+ The index specified for the action was out of the acceptable range.
+
+
+
+
+ No collection was specified.
+
+
+
+
+ No string was specified.
+
+
+
+
+ No string length was specified.
+
+
+
+
+ No string wrapper was specified.
+
+
+
+
+ No driver matching the criteria exists.
+
+
+
+
+ No element matching the criteria exists.
+
+
+
+
+ No frame matching the criteria exists.
+
+
+
+
+ The functionality is not supported.
+
+
+
+
+ The specified element is no longer valid.
+
+
+
+
+ The specified element is not displayed.
+
+
+
+
+ The specified element is not enabled.
+
+
+
+
+ An unhandled error occurred.
+
+
+
+
+ An error occurred, but it was expected.
+
+
+
+
+ The specified element is not selected.
+
+
+
+
+ No document matching the criteria exists.
+
+
+
+
+ An unexpected JavaScript error occurred.
+
+
+
+
+ No result is available from the JavaScript execution.
+
+
+
+
+ The result from the JavaScript execution is not recognized.
+
+
+
+
+ No collection matching the criteria exists.
+
+
+
+
+ A timeout occurred.
+
+
+
+
+ A null pointer was received.
+
+
+
+
+ No window matching the criteria exists.
+
+
+
+
+ An illegal attempt was made to set a cookie under a different domain than the current page.
+
+
+
+
+ A request to set a cookie's value could not be satisfied.
+
+
+
+
+ An alert was found open unexpectedly.
+
+
+
+
+ A request was made to switch to an alert, but no alert is currently open.
+
+
+
+
+ An asynchronous JavaScript execution timed out.
+
+
+
+
+ The coordinates of the element are invalid.
+
+
+
+
+ The selector used (CSS/XPath) was invalid.
+
+
+
+
+ A session was not created by the driver
+
+
+
+
+ The requested move was outside the active view port
+
+
+
+
+ The XPath selector was invalid.
+
+
+
+
+ An insecure SSl certificate was specified.
+
+
+
+
+ The element was not interactable
+
+
+
+
+ An invalid argument was passed to the command.
+
+
+
+
+ No cookie was found matching the name requested.
+
+
+
+
+ The driver was unable to capture the screen.
+
+
+
+
+ The click on the element was intercepted by a different element.
+
+
+
+
+ Represents exceptions that are thrown when an error occurs during actions.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ The exception that is thrown when an error occurs during an XPath lookup.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ a specified error message.
+
+ The message that describes the error.
+
+
+
+ Initializes a new instance of the class with
+ a specified error message and a reference to the inner exception that is the
+ cause of this exception.
+
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception,
+ or if no inner exception is specified.
+
+
+
+ Initializes a new instance of the class with serialized data.
+
+ The that holds the serialized
+ object data about the exception being thrown.
+ The that contains contextual
+ information about the source or destination.
+
+
+
+ Unique class for compression/decompression file. Represents a Zip file.
+
+
+
+
+ Compression method enumeration.
+
+
+
+ Uncompressed storage.
+
+
+ Deflate compression method.
+
+
+
+ Gets a value indicating whether file names and comments should be encoded using UTF-8.
+
+
+
+
+ Gets a value indicating whether to force using the deflate algorithm,
+ even if doing so inflates the stored file.
+
+
+
+
+ Create a new zip storage in a stream.
+
+ The stream to use to create the Zip file.
+ General comment for Zip file.
+ A valid ZipStorer object.
+
+
+
+ Open the existing Zip storage in a stream.
+
+ Already opened stream with zip contents.
+ File access mode for stream operations.
+ A valid ZipStorer object.
+
+
+
+ Add full contents of a file into the Zip storage.
+
+ Compression method used to store the file.
+ Full path of file to add to Zip storage.
+ File name and path as desired in Zip directory.
+ Comment for stored file.
+
+
+
+ Add full contents of a stream into the Zip storage.
+
+ Compression method used to store the stream.
+ Stream object containing the data to store in Zip.
+ File name and path as desired in Zip directory.
+ Modification time of the data to store.
+ Comment for stored file.
+
+
+
+ Updates central directory (if needed) and close the Zip storage.
+
+ This is a required step, unless automatic dispose is used.
+
+
+
+ Read all the file records in the central directory.
+
+ List of all entries in directory.
+
+
+
+ Copy the contents of a stored file into a physical file.
+
+ Entry information of file to extract.
+ Name of file to store uncompressed data.
+ if the file is successfully extracted; otherwise, .
+ Unique compression methods are Store and Deflate.
+
+
+
+ Copy the contents of a stored file into an open stream.
+
+ Entry information of file to extract.
+ Stream to store the uncompressed data.
+ if the file is successfully extracted; otherwise, .
+ Unique compression methods are Store and Deflate.
+
+
+
+ Closes the Zip file stream.
+
+
+
+
+ Represents an entry in Zip file directory
+
+
+
+ Compression method
+
+
+ Full path and filename as stored in Zip
+
+
+ Original file size
+
+
+ Compressed file size
+
+
+ Offset of header information inside Zip storage
+
+
+ Offset of file inside Zip storage
+
+
+ Size of header information
+
+
+ 32-bit checksum of entire file
+
+
+ Last modification time of file
+
+
+ User comment for file
+
+
+ True if UTF8 encoding for filename and comments, false if default (CP 437)
+
+
+ Overriden method
+ Filename in Zip
+
+
+