How krushnamajhi/automationtestcsharp works
AutomationTestCSharp is a reusable NUnit/Selenium automation library, not a test suite. A consuming NUnit test extends TestBase; setup creates a run report and each test gets a package with a browser driver and Extent test, then drives browser interactions and assertions before teardown records failures and closes the driver. README documents this usage; sampled source supports the setup, driver, element, assertion, screenshot, and reporting links. Excel/data helpers and other unsampled capabilities are shown as separate utilities without inferred wiring.
Main entry points: WebDriver.cs WebDriver · TestBase.cs TestBase · TestSetUps.cs TestSetUps · ImageUtil.cs Screenshot utilities
Components 22
Test lifecycle
- TestBase
TestBase.cs - TestSetUps
TestSetUps.cs - TestPackage
TestPackage.cs - TestProperties
TestProperties.cs - Base
Base.cs - BasePage
BasePage.cs
Browser automation
- WebDriver
uiautomation/WebDriver.cs - WebElement
uiautomation/WebElement.cs - Locator
uiautomation/Locator.cs - WaitConditions
uiautomation/WaitConditions.cs
Reporting and diagnostics
- SoftAssertions
reporting/SoftAssertions.cs - ReportProperties
reporting/ReportProperties.cs - Serilog configuration
reporting/serilog/LoggerConfig.cs - Logger extensions
reporting/serilog/LoggerExtensions.cs - TestCaseException
exceptions/TestCaseException.cs - Screenshot utilities
commonutils/ImageUtil.cs
Test utilities
- General utilities
commonutils/Util.cs - Excel utilities
commonutils/ExcelUtilities.cs
Other components
- NUnit test author
- Selenium browsers
- ExtentReports
- SQL database
Connections 29
- NUnit test author → TestSetUps: extends for setup
- NUnit test author → TestBase: extends for tests
- TestSetUps → General utilities: creates results folder
- TestSetUps → ReportProperties: sets report state
- TestSetUps → ExtentReports: attaches and flushes
- TestBase → TestPackage: creates per test
- TestBase → SoftAssertions: creates assertions
- TestBase → WebDriver: quits at teardown
- TestBase → Screenshot utilities: captures failure image
- TestPackage → ReportProperties: creates test entry
- TestPackage → WebDriver: constructs driver
- TestPackage → TestProperties: reads browser config
- WebDriver → Selenium browsers: controls browser
- WebDriver → Locator: accepts locator
- WebDriver → WebElement: returns elements
- WebDriver → WaitConditions: evaluates conditions
- WebDriver → Screenshot utilities: captures screenshots
- WebElement → Selenium browsers: interacts with page
- SoftAssertions → ExtentReports: logs outcomes
- SoftAssertions → TestCaseException: creates assertion error
- SoftAssertions → Screenshot utilities: embeds failure image
- TestCaseException → Serilog configuration: logs errors
- TestCaseException → ExtentReports: logs error detail
- TestSetUps → Serilog configuration: logs setup activity
- General utilities → SQL database: runs SQL operations
- General utilities → Excel utilities: reads workbook data
- Excel utilities → Serilog configuration: logs workbook activity
- Screenshot utilities → Selenium browsers: captures browser image
- Screenshot utilities → ExtentReports: builds screenshot media