Sign inSign up

ericskang/mssql-slacker

By ericskang

•Updated about 9 years ago

Demo image for slacker unittest framework for SQL Server and SQLDB on Azure

Image
1

1.3K

ericskang/mssql-slacker repository overview

Dockerfile⁠

⁠Provisioning

Slacker⁠ is a transacted RSpec-based framework for developing automated tests for SQL Server 2008-2017 and SQLDB on Azure programmable objects such as stored procedures, scalar/table functions, triggers, and so on, hence you will need a mssql database to play with.

For docker compose sample, check mssql-slacker demo github repository⁠

The easiest way is to bootstrap with a mssql container for SQL Server 2017. After following this guide, you will have a complete setup with a mssql container, a slacker container that runs your db unittests and a docker network where mssql and slacker containers connect. You can use docker compose instead of docker network.

⁠setup mssql container:

Run following commands to setup a mssql container. See more details at docs.microsoft.com⁠


docker pull microsoft/mssql-server-linux:latest

docker run --name mssql -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=Yukon900' \
--cap-add SYS_PTRACE --restart=always \ 
-p 1433:1433 -d microsoft/mssql-server-linux

⁠setup slacker container:

Run following commands to setup a slacker container.


docker pull ericskang/mssql-slacker:latest

docker run --name slacker --restart=always \
-d ericskang/mssql-slacker:latest tail -f /dev/null

⁠setup a network for two containers or use docker compose

Run following commands to setup a network. Restart containers afterward.


docker network create -d bridge --subnet 10.234.0.0/16 mynet

docker network connect mynet mssql

docker network connect mynet slacker

⁠restart container to take the effect of network config.

docker restart mssql

docker restart slacker

⁠Run slacker unittest

First, terminal into slacker container then create a new slacker unit test project using slacker_new command.


docker exec -ti slacker /bin/bash

cd ~

slacker_new dbtest

⁠change settinging in database.yml file

Modify database.yml file to configure settings for slacker. Use mssql as server name as you have configured above.


cd dbtest

vim database.yml 

Sample database.yml


server: mssql

database: tempdb (or your test database)

user: sa

password: Yukon900

port: 1433

driver: tiny_tds

⁠run slacker

Run slacker to test with sample test specs. And add your own db unit tests.

slacker

⁠create your first mssql database unittest using slacker

https://github.com/vassilvk/slacker/wiki⁠

Tag summary

Content type

Image

Digest

Size

58.1 MB

Last updated

about 9 years ago

docker pull ericskang/mssql-slacker