├── .gitignore ├── CHANGELOG.txt ├── Examples ├── AutoIt │ └── ListLinksToExcel.au3 ├── Excel │ ├── CloudBrowserStack.xlsm │ ├── CloudSauceLab.xlsm │ ├── Examples.xlsm │ ├── ExamplesNoRegistration.xlsm │ └── ExamplesPageObject.xlsm ├── JavaScript │ └── SimpleGoogleSearch(IE).js └── VBScript │ ├── BasicAuthentication(Firefox).vbs │ ├── CaptureToPdf(Firefox).vbs │ ├── CaptureToPdf(PhantomJs).vbs │ ├── CompareRendering(Firefox).vbs │ ├── CompareRendering(PhantomJS).vbs │ ├── CustomProfileWith(Chrome).vbs │ ├── CustomProfileWith(Firefox).vbs │ ├── DownloadFile(Chrome).vbs │ ├── DownloadFile(Firefox).vbs │ ├── GmailSignIn(Firefox).vbs │ ├── ListLinks(Firefox).vbs │ ├── ListLinksToExcel(Firefox).vbs │ ├── PageObject.vbs │ ├── Remoting(Firefox).vbs │ └── SimpleGoogleSearch(Firefox).vbs ├── FirefoxAddons ├── build-implicit-wait.py ├── build-vb-format.py ├── implicit-wait │ ├── chrome.manifest │ ├── chrome │ │ ├── content │ │ │ ├── extension-loader.xul │ │ │ ├── implicit-wait-ext.js │ │ │ ├── implicit-wait-ide.js │ │ │ ├── implicit-wait-ide.xml │ │ │ └── view │ │ │ │ ├── implicitwait.png │ │ │ │ ├── selenium-ide-overlay-iw.css │ │ │ │ └── selenium-ide-overlay-iw.xul │ │ └── locale │ │ │ └── en-US │ │ │ └── implicit-wait.dtd │ ├── install.rdf │ ├── update.rdf │ └── user-extensions.js ├── install.rdf └── vb-format │ ├── chrome.manifest │ ├── chrome │ └── content │ │ └── formats │ │ ├── format-loader.xul │ │ ├── vba-rc.js │ │ ├── vba-wd.js │ │ ├── vbs-rc.js │ │ └── vbs-wd.js │ └── install.rdf ├── LICENSE.txt ├── README.md ├── Scripts ├── QuickTest.vbs ├── RunCleaner.vbs ├── StartChrome.vbs ├── StartChromeDebug.vbs ├── StartEdge.vbs ├── StartFirefox.vbs ├── StartInternetExplorer.vbs ├── StartOpera.vbs └── StartPhantomJS.vbs ├── Selenium.Tests ├── Internals │ ├── BaseBrowsers.cs │ ├── BaseExcel.cs │ ├── COM.cs │ ├── IgnoreFixtureAttribute.cs │ ├── TypeExt.cs │ └── WebServer.cs ├── Pages │ ├── eiffel-tower.jpg │ ├── element.html │ ├── elements.html │ ├── findby.html │ ├── frame1.html │ ├── frame2.html │ ├── frame3.html │ ├── input.html │ ├── links.html │ ├── select.html │ ├── table.html │ ├── win1.html │ ├── win2.html │ └── win3.html ├── Program.cs ├── Properties │ └── AssemblyInfo.cs ├── Selenium.Tests.csproj ├── TS_Actions.cs ├── TS_Alert.cs ├── TS_Assert.cs ├── TS_By.cs ├── TS_Capture.cs ├── TS_Element.cs ├── TS_Excel.cs ├── TS_ExecuteScript.cs ├── TS_Frame.cs ├── TS_Keyboard.cs ├── TS_Manage.cs ├── TS_Mouse.cs ├── TS_PDF.cs ├── TS_Scraping.cs ├── TS_SearchContext.cs ├── TS_Select.cs ├── TS_Serialiser.cs ├── TS_Verify.cs ├── TS_Window.cs ├── TS_Windows.cs ├── TS_zip.cs └── tests.nunit ├── Selenium ├── Application.cs ├── Assert.cs ├── ComInterfaces │ ├── _Actions.cs │ ├── _Alerts.cs │ ├── _Application.cs │ ├── _Assert.cs │ ├── _By.cs │ ├── _Cookie.cs │ ├── _Cookies.cs │ ├── _Dictionary.cs │ ├── _DictionaryItem.cs │ ├── _IME.cs │ ├── _Image.cs │ ├── _Keyboard.cs │ ├── _Keys.cs │ ├── _List.cs │ ├── _Logs.cs │ ├── _Manage.cs │ ├── _Mouse.cs │ ├── _PdfFile.cs │ ├── _Point.cs │ ├── _Proxy.cs │ ├── _SelectElement.cs │ ├── _Size.cs │ ├── _Storage.cs │ ├── _Table.cs │ ├── _TableElement.cs │ ├── _TableRow.cs │ ├── _Timeouts.cs │ ├── _TouchActions.cs │ ├── _TouchScreen.cs │ ├── _Utils.cs │ ├── _Verify.cs │ ├── _Waiter.cs │ ├── _WebDriver.cs │ ├── _WebElement.cs │ ├── _WebElements.cs │ └── _Window.cs ├── Common │ ├── Actions.cs │ ├── Alert.cs │ ├── By.cs │ ├── CacheState.cs │ ├── Capabilities.cs │ ├── Cookie.cs │ ├── Cookies.cs │ ├── IME.cs │ ├── Image.cs │ ├── Keyboard.cs │ ├── Keys.cs │ ├── Logs.cs │ ├── Manage.cs │ ├── Mouse.cs │ ├── MouseButton.cs │ ├── Proxy.cs │ ├── SearchContext.cs │ ├── SelectElement.cs │ ├── Storage.cs │ ├── Strategy.cs │ ├── TableElement.cs │ ├── Timeouts.cs │ ├── TouchActions.cs │ ├── TouchScreen.cs │ ├── WebElement.cs │ ├── WebElements.cs │ └── Window.cs ├── Core │ ├── DeserializeException.cs │ ├── DriverExtension.cs │ ├── DriverService.cs │ ├── FirefoxPrefs.js │ ├── FirefoxService.cs │ ├── FrameContext.cs │ ├── IDriverService.cs │ ├── JavascriptContext.cs │ ├── RemoteServer.cs │ ├── RemoteSession.cs │ ├── RequestMethod.cs │ ├── SysWaiter.cs │ └── WindowContext.cs ├── Drivers │ ├── ChromeDriver.cs │ ├── EdgeDriver.cs │ ├── FirefoxDriver.cs │ ├── IEDriver.cs │ ├── OperaDriver.cs │ └── PhantomJSDriver.cs ├── Errors │ ├── ArgumentErrors.cs │ ├── DictionaryErrors.cs │ ├── FileNotFoundError.cs │ ├── ImageErrors.cs │ ├── InvalidOperationError.cs │ ├── KeyboardInterruptError.cs │ ├── NotImplementedError.cs │ ├── PdfErrors.cs │ └── WebRequestErrors.cs ├── Internal │ ├── AssemblyExt.cs │ ├── AssemblyURLAttribute.cs │ ├── COMDisposable.cs │ ├── COMExt.cs │ ├── COMRunningObject.cs │ ├── ClipboardExt.cs │ ├── Crc32.cs │ ├── EndPointExt.cs │ ├── ExcelExt.cs │ ├── ExceptionDialog.Designer.cs │ ├── ExceptionDialog.cs │ ├── FolderCache.cs │ ├── HotKeyGlobal.cs │ ├── HotKeyGlobalLL.cs │ ├── IOExt.cs │ ├── ImgExt.cs │ ├── IniFile.cs │ ├── ObjExt.cs │ ├── ProcessExt.cs │ ├── StringExt.cs │ ├── ThreadExt.cs │ └── UnhandledException.cs ├── Interop │ ├── Excel │ │ ├── Excel.cs │ │ ├── ICells.cs │ │ ├── IExcel.cs │ │ ├── IListObject.cs │ │ ├── IRange.cs │ │ ├── IWorkbook.cs │ │ ├── IWorkbooks.cs │ │ ├── IWorksheet.cs │ │ └── IWorksheets.cs │ └── IStdPicture.cs ├── NamespaceDoc.cs ├── Pdf │ ├── PdfFile.cs │ ├── PdfFont.cs │ ├── PdfFonts.cs │ ├── PdfImage.cs │ ├── PdfOutlines.cs │ ├── PdfPage.cs │ ├── PdfPages.cs │ ├── PdfWriter.cs │ └── PdfXRefs.cs ├── Properties │ └── AssemblyInfo.cs ├── Selenium.csproj ├── Selenium.shfbproj ├── SeleniumError.cs ├── SeleniumException.cs ├── Serializer │ ├── IJsonBinary.cs │ ├── IJsonObject.cs │ ├── JSON.cs │ └── JsonException.cs ├── Struct │ ├── Dictionary.cs │ ├── DictionaryItem.cs │ ├── List.cs │ ├── Point.cs │ ├── Size.cs │ ├── Table.cs │ └── TableRow.cs ├── Utils.cs ├── Verify.cs ├── Waiter.cs ├── WebDriver.cs ├── Zip │ ├── ZipException.cs │ └── ZipFile.cs └── key.snk ├── SeleniumBasic.sln ├── SeleniumBasicSetup.iss ├── SeleniumBasicSetup.pas ├── Templates ├── Selenium(advanced).vbs ├── Selenium.au3 ├── Selenium.vbs └── Selenium.xltm ├── Utils └── CleanRegistry.bat ├── VbsConsole ├── ConsoleArgument.cs ├── ConsoleArguments.cs ├── ExitException.cs ├── IWscript.cs ├── Interop │ ├── IMSScriptContol.cs │ ├── IMSScriptControl_Events.cs │ ├── IMSScriptError.cs │ ├── IMSScriptModule.cs │ ├── IMSScriptModules.cs │ ├── IMSScriptProcedure.cs │ ├── IMSScriptProcedures.cs │ ├── MSScriptControlConstants.cs │ ├── MSScriptControl_EventProvider.cs │ ├── MSScriptControl_EventSink.cs │ └── ScriptControlStates.cs ├── Logger.cs ├── MultiScriptRunner.cs ├── Program.cs ├── Properties │ └── AssemblyInfo.cs ├── RunnerVbNet.cs ├── Script.cs ├── ScriptControl.cs ├── ScriptDebugger.cs ├── ScriptError.cs ├── ScriptModule.cs ├── ScriptProcedure.cs ├── ScriptProcedures.cs ├── ScriptResult.cs ├── ScriptRunner.cs ├── ScriptSuccees.cs ├── TraceLine.cs ├── Utils.cs ├── VbsConsole.csproj ├── WScript.cs └── WithParams.cs ├── build-setup.py ├── clean-folders.py ├── clean-registry.py ├── gen-registration.ipy ├── rebuild_exel_files.py ├── smoke-tests.py └── update-references.py /.gitignore: -------------------------------------------------------------------------------- 1 | References 2 | bin 3 | obj 4 | Xlbin 5 | *.exe 6 | *.log 7 | *.bak 8 | *.user 9 | *.lnk 10 | *.pyc 11 | *.user 12 | *.xlt 13 | *.xls -------------------------------------------------------------------------------- /Examples/AutoIt/ListLinksToExcel.au3: -------------------------------------------------------------------------------- 1 | ; AutoIt script example with Selenium 2 | ; https://www.autoitscript.com 3 | ; 4 | 5 | Func Main() 6 | ; Launch the browser and open an URL 7 | Dim $driver = ObjCreate("Selenium.FirefoxDriver") 8 | $driver.Get("https://en.wikipedia.org/wiki/Main_Page") 9 | 10 | ; List all links, remove duplicates and sort them 11 | Dim $links = $driver.FindElementsByCss("a").Attribute("href") 12 | $links.Distinct 13 | $links.Sort 14 | 15 | ; Launch Excel and create a Workbook 16 | Dim $excel = ObjCreate("Excel.Application") 17 | $excel.WorkBooks.Add ; Add a new workbook 18 | $excel.Visible = 1 ; Let Excel show itself 19 | 20 | ; Write the links in Excel and quit 21 | $links.ToExcel($excel.ActiveSheet, "Links") 22 | $driver.Quit 23 | EndFunc 24 | 25 | Main() 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Examples/Excel/CloudBrowserStack.xlsm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/Excel/CloudBrowserStack.xlsm -------------------------------------------------------------------------------- /Examples/Excel/CloudSauceLab.xlsm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/Excel/CloudSauceLab.xlsm -------------------------------------------------------------------------------- /Examples/Excel/Examples.xlsm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/Excel/Examples.xlsm -------------------------------------------------------------------------------- /Examples/Excel/ExamplesNoRegistration.xlsm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/Excel/ExamplesNoRegistration.xlsm -------------------------------------------------------------------------------- /Examples/Excel/ExamplesPageObject.xlsm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/Excel/ExamplesPageObject.xlsm -------------------------------------------------------------------------------- /Examples/JavaScript/SimpleGoogleSearch(IE).js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/JavaScript/SimpleGoogleSearch(IE).js -------------------------------------------------------------------------------- /Examples/VBScript/BasicAuthentication(Firefox).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/BasicAuthentication(Firefox).vbs -------------------------------------------------------------------------------- /Examples/VBScript/CaptureToPdf(Firefox).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/CaptureToPdf(Firefox).vbs -------------------------------------------------------------------------------- /Examples/VBScript/CaptureToPdf(PhantomJs).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/CaptureToPdf(PhantomJs).vbs -------------------------------------------------------------------------------- /Examples/VBScript/CompareRendering(Firefox).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/CompareRendering(Firefox).vbs -------------------------------------------------------------------------------- /Examples/VBScript/CompareRendering(PhantomJS).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/CompareRendering(PhantomJS).vbs -------------------------------------------------------------------------------- /Examples/VBScript/CustomProfileWith(Chrome).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/CustomProfileWith(Chrome).vbs -------------------------------------------------------------------------------- /Examples/VBScript/CustomProfileWith(Firefox).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/CustomProfileWith(Firefox).vbs -------------------------------------------------------------------------------- /Examples/VBScript/DownloadFile(Chrome).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/DownloadFile(Chrome).vbs -------------------------------------------------------------------------------- /Examples/VBScript/DownloadFile(Firefox).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/DownloadFile(Firefox).vbs -------------------------------------------------------------------------------- /Examples/VBScript/GmailSignIn(Firefox).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/GmailSignIn(Firefox).vbs -------------------------------------------------------------------------------- /Examples/VBScript/ListLinks(Firefox).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/ListLinks(Firefox).vbs -------------------------------------------------------------------------------- /Examples/VBScript/ListLinksToExcel(Firefox).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/ListLinksToExcel(Firefox).vbs -------------------------------------------------------------------------------- /Examples/VBScript/PageObject.vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/PageObject.vbs -------------------------------------------------------------------------------- /Examples/VBScript/Remoting(Firefox).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/Remoting(Firefox).vbs -------------------------------------------------------------------------------- /Examples/VBScript/SimpleGoogleSearch(Firefox).vbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/florentbr/SeleniumBasic/8a2cde358d2bc06e3014aca2c8d427bc61188a1b/Examples/VBScript/SimpleGoogleSearch(Firefox).vbs -------------------------------------------------------------------------------- /FirefoxAddons/implicit-wait/chrome.manifest: -------------------------------------------------------------------------------- 1 | content implicit-wait chrome/content/ 2 | 3 | locale implicit-wait en-US chrome/locale/en-US/ 4 | 5 | overlay chrome://selenium-ide/content/selenium-ide-overlay.xul chrome://implicit-wait/content/extension-loader.xul 6 | overlay chrome://selenium-ide/content/selenium-ide-common.xul chrome://implicit-wait/content/view/selenium-ide-overlay-iw.xul -------------------------------------------------------------------------------- /FirefoxAddons/implicit-wait/chrome/content/extension-loader.xul: -------------------------------------------------------------------------------- 1 | 2 | 5 |