Commit 10e95fe1 authored by Nick Craver's avatar Nick Craver

README updates for testing

parent 48a0a99d
StackExchange.Redis StackExchange.Redis
=================== ===================
For all documentation, [see here](http://stackexchange.github.io/StackExchange.Redis/) For all documentation, [see here](https://stackexchange.github.io/StackExchange.Redis/).
\ No newline at end of file \ No newline at end of file
## Test Suite ## Test Suite
Welcome to the `StackExchange.Redis` test suite! To test `StackExchange.Redis`, [see the documentation](https://stackexchange.github.io/StackExchange.Redis/Testing).
\ No newline at end of file
Supported platforms:
- Windows
...that's it. For now. I'll add Docker files for the instances soon, unless someone's willing to get to it first. The tests (for `netcoreapp`) can run multi-platform
The unit and integration tests here are fairly straightforward. There are 2 primary steps:
1. Start the servers
2. Run the tests
Tests default to `127.0.0.1` as their server, however you can override any of the test IPs/Hostnames and ports by placing a `TestConfig.json` in the `StackExchange.Redis.Tests\` folder. This file is intentionally in `.gitignore` already, as it's for *your* personal overrides. This is useful for testing local or remote servers, different versions, various ports, etc.
You can find all the JSON properties at [TestConfig.cs](#TODO Link). An example override (everything not specified being a default) would look like this:
```json
{
"RunLongRunning": true,
"MasterServer": "192.168.0.42",
"MasterPort": 12345
}
```
<sub>Note: if a server isn't specified, the related tests should be skipped as inconclusive.</sub>
### Instructions for Windows
The tests are run (by default) as part of the build. You can simply run this in the repository root:
```cmd
.\build.cmd -BuildNumber local
```
To specifically run the tests with far more options, from the repository root:
```cmd
dotnet build
.\RedisConfigs\start-for-tests.cmd
cd StackExchange.Redis.Tests
dotnet xunit
```
\ No newline at end of file
Testing
===
Welcome to documentation for the `StackExchange.Redis` test suite!
Supported platforms:
- Windows
...that's it. For now. I'll add Docker files for the instances soon, unless someone's willing to get to it first. The tests (for `netcoreapp`) can run multi-platform.
**Note: some tests are not yet green, about 20 are failing (~31 in CI)**. A large set of .NET Core, testing, and CI changes just slammed us, we're getting back in action.
The unit and integration tests here are fairly straightforward. There are 2 primary steps:
1. Start the servers
2. Run the tests
Tests default to `127.0.0.1` as their server, however you can override any of the test IPs/Hostnames and ports by placing a `TestConfig.json` in the `StackExchange.Redis.Tests\` folder. This file is intentionally in `.gitignore` already, as it's for *your* personal overrides. This is useful for testing local or remote servers, different versions, various ports, etc.
You can find all the JSON properties at [TestConfig.cs](Helpers/TestConfig.cs). An example override (everything not specified being a default) would look like this:
```json
{
"RunLongRunning": true,
"MasterServer": "192.168.0.42",
"MasterPort": 12345
}
```
<sub>Note: if a server isn't specified, the related tests should be skipped as inconclusive.</sub>
### Instructions for Windows
The tests are run (by default) as part of the build. You can simply run this in the repository root:
```cmd
.\build.cmd -BuildNumber local
```
To specifically run the tests with far more options, from the repository root:
```cmd
dotnet build
.\RedisConfigs\start-for-tests.cmd
cd StackExchange.Redis.Tests
dotnet xunit
```
\ No newline at end of file
...@@ -48,6 +48,7 @@ Documentation ...@@ -48,6 +48,7 @@ Documentation
- [Where are `KEYS` / `SCAN` / `FLUSH*`?](KeysScan) - how to use server-based commands - [Where are `KEYS` / `SCAN` / `FLUSH*`?](KeysScan) - how to use server-based commands
- [Profiling](Profiling) - profiling interfaces, as well as how to profile in an `async` world - [Profiling](Profiling) - profiling interfaces, as well as how to profile in an `async` world
- [Scripting](Scripting) - running Lua scripts with convenient named parameter replacement - [Scripting](Scripting) - running Lua scripts with convenient named parameter replacement
- [Testing](Testing) - running the `StackExchange.Redis.Tests` suite to validate changes
Questions and Contributions Questions and Contributions
--- ---
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment