dba-dash icon indicating copy to clipboard operation
dba-dash copied to clipboard

Automated Testing

Open DavidWiseman opened this issue 2 years ago • 2 comments

If would be good to have some more automated testing. GitHub actions might be a good way to do this. We can build the app and test against a copy of SQL Server running on docker. Also need some more automation for the DBA Dash lab environment - to run automated tests from SQL 2005 to 2019.

  • Check we can deploy when the user has a non english language #104
  • Check we can deploy to an instance with a different collation (e.g. Binary).
  • Automate the config/deployment to test the automation process.
  • Would need to run for a set period of time. Then perform some checks to ensure we have collected data for the instances as expected.
  • Check if we have any errors/warnings

For github actions we would need to get the DB to build using dotnet build on linux. We currently use msbuild but there is a supported way to do this now (Still in Preview though so not fully supported) https://erikej.github.io/ssdt/dotnet/2022/03/07/ssdt-dacpac-netcore.html

Running tests locally with docker would also be good. This is limited to SQL 2017 & 2019.

How to perform the tests? Test project? Powershell/Pester?

DavidWiseman avatar Mar 21 '22 15:03 DavidWiseman

This might be useful

DavidWiseman avatar Apr 08 '22 19:04 DavidWiseman

Now uses https://github.com/potatoqualitee/mssqlsuite to add SQL Instance to Windows runner. Checks that DBA Dash can be deployed Checks table counts to ensure service is working as expected Checks error log (folder + table) Testing on binary collation to ensure app works with a different collation (Plus testing issues with case sensitivity)

Tests could be extended further: Non-English language user test Test as user with minimal permissions Test upgradability from older versions

DavidWiseman avatar May 02 '22 20:05 DavidWiseman