Terms to be addressed:
Playwright gives you Web-First Assertions with convenience methods for creating assertions that will wait and retry until the expected condition is met.
How to run .NET Core Selenium UI tests on Azure DevOps Pipelines 🚀 (swimburger.net)
<Parameter name="webAppUrl" value="https://dotnet.microsoft.com/" />
AzureDevOps_Selenium_DotNet/.runsettings
driver.Navigate().GoToUrl((string)TestContext.Properties["webAppUrl"]);
AzureDevOps_Selenium_DotNet/DotNetSiteTests.cs
Environment Variables
public static string BrowserName => (Environment.GetEnvironmentVariable("BROWSER")
[Question]: How setup / code multi browser testing · Issue #1790
nunit - Passing environment variables to tests in Visual Studio 2019 - Stack Overflow
Naming unit tests is an essential aspect of writing maintainable and readable code. Good test names should be descriptive, concise, and follow a consistent naming convention. Here are some best practices for naming unit tests:
MethodName_StateUnderTest_ExpectedBehavior
format. Consistency makes it easier for developers to understand the structure of your tests.Adding a category to a test for filtering purposes. The source code sample demonstrates how to use the Trait attribute in C# with xUnit to categorize a test as an "IntegrationTest." This categorization helps in filtering and organizing tests based on their nature or purpose.
By using the Trait attribute with key-value pairs like "Category" and "IntegrationTests," tests can be grouped and executed selectively during testing workflows.
Sample code snippet:
[Fact, Trait("Category", "IntegrationTests")]
public async Task AcquireToken_GetToken_TokenNotNullOrEmpty()
{
// test implementation
}
Unit testing throwing exceptions in asynchronous methods involves verifying that an async method correctly throws expected exceptions under specific conditions. This ensures robust error handling and code reliability in asynchronous programming.
Here's a sample C# code snippet using xUnit for unit testing async methods that throw exceptions:
public async Task TestAsyncMethod()
{
// Arrange
// Act
async Task Act() => await _service.AsyncMethod();
// Assert
await Assert.ThrowsAsync<Exception>(() => Act());
}
For further understanding and examples, you can refer to discussions and tutorials on this topic:
These resources provide insights into handling exceptions in async code within the context of unit testing using popular frameworks like xUnit.