Sign inSign up

ericskang/mssql-slacker

By ericskang

Updated almost 9 years ago

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

Image
1

1.2K

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

almost 9 years ago

docker pull ericskang/mssql-slacker