Skip to content

Commit

Permalink
update docs
Browse files Browse the repository at this point in the history
  • Loading branch information
starkeeny committed Jun 27, 2023
1 parent 6454507 commit 688b02e
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 5 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/dotnet_main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,4 @@ jobs:
run: dotnet pack ${{ env.PROJECT_PATH }} --no-restore --no-build --configuration Release --include-symbols --output ${{ env.PACK_OUT_PATH }}

- name: Publish nuget
run: dotnet nuget push ${{ env.PACK_OUT_PATH }}\*.nupkg --api-key ${{ secrets.NUGET_AUTH_TOKEN }} --source https://api.nuget.org/v3/index.json
run: dotnet nuget push ${{ env.PACK_OUT_PATH }}\*.symbols.nupkg --api-key ${{ secrets.NUGET_AUTH_TOKEN }} --source https://api.nuget.org/v3/index.json
15 changes: 11 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
# SINUS (Selenium In .Net Ui Solutions)

[![Main-Branch-Flow](https://github.com/webnativedev/SINUS/actions/workflows/dotnet_main.yml/badge.svg)](https://github.com/webnativedev/SINUS/actions/workflows/dotnet_main.yml)
[![CodeQL](https://github.com/webnativedev/SINUS/actions/workflows/codeql.yml/badge.svg)](https://github.com/webnativedev/SINUS/actions/workflows/codeql.yml)
[![Main](https://github.com/webnativedev/SINUS/actions/workflows/dotnet_main.yml/badge.svg)](https://github.com/webnativedev/SINUS/actions/workflows/dotnet_main.yml) [![CodeQL](https://github.com/webnativedev/SINUS/actions/workflows/codeql.yml/badge.svg)](https://github.com/webnativedev/SINUS/actions/workflows/codeql.yml)

![Example Video](/docs/demo-medium.gif "Example Video")

Main idea of this package is to provide a readable and easy way to perform UI tests.
Hereby the package is opinionated and makes some decisions that need to be accepted for the usage of this package.
Expand All @@ -23,6 +24,12 @@ Example:
.Dispose();
```

Calling the test:

```batch
dotnet test --filter "FullyQualifiedName=WebNativeDEV.SINUS.Tests.BrowserTests.Given_ABrowserOpensGoogle_When_ReadingTheTitle_Then_TitleShouldBeSet"
```

By reducing the complexity you are not able to use all of the features Selenium has.
Nevertheless, the most common features are supported and covered by SINUS in a nicely shaped API that guides you through the test case.

Expand Down Expand Up @@ -80,7 +87,7 @@ To sum it up, we are testing execution logic that can be called from outside of
* Create a test project
* install SINUS via nuget
* SINUS can be used for UI-Tests and Unit Tests
* consider to not create any other integration test project
* consider to not create any other integration test project
(implementing small UI wrappers enables manual testing that is fully automatable).
* (Optionally) Create a "TestInitializer" (or similar named class) that covers the startup of a test
* AssemblyInitialize, ClassInitialize - usage example can be seen at (TestInitializer.cs in the demo test project).
Expand All @@ -93,7 +100,7 @@ To sum it up, we are testing execution logic that can be called from outside of
* With the Given part (use intelliSense) you can spin-up a browser and optionally a System-Under-Test (SUT) in-memory or public (meaning reachable via network outside the test).
* use public SUT configuration for UI tests, because the web driver spawns outside the unit test in a separate process.
* consider to use components for mocking / test doubles
* With the When part (use intelliSense) you can perform an action
* With the When part (use intelliSense) you can perform the main action and here no action means a prepared test, that can not yet be evaluated properly.
* With the Then part (use intelliSense) you can perform checks on the action.
* Consider to install an Assertion Library helping you writing more meaningful assertions.
* Opinionated: It is not necessary to do so.
Expand Down
Binary file added docs/demo-medium.gif
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 688b02e

Please sign in to comment.