Running an Automated Test Suite against Builds

So this might be fitting a square peg in a round hole or just something I haven't been able to googlefu my way into but.

We have an automation suite (using Specflow, Nunit, Selenium) that we've been kicking off manually. Obviously we want to get it so that certain Tags or suites run against certain builds... Or atleast have a way to just kick off the full regression once a day.

Here are some details about the environment

GitHub Flow - Master and Branches

Branches are worked on and checked in -> a CI build is done to run Unit Test
We then can
Deploy the build to a VM that so we can access the UI and test.
After testing
Merge the branch into the master

Is there a way where

I can set team city to run a automation test build against a specific vm that it's deployed? or just run the full regression on the master build?

I know this isn't too much information but i'm trying to piece it together myself.

Thanks for any help!

1 comment
Comment actions Permalink

Hi

In TeamCity team we also have such kind of tests, but I've designed the build configuration to create a fresh VM inside each build, and destroy it right on build finish. So, it solves the issue - the VM address is unique inside each build.

When product builds are deployed by an extrnal procedure, you need some kind of discovery mechanism.
The most effective way I've seen is to use a naming convention, where all these VMs have a branch name right in its DNS name. So product-master.domain.local hosts a latest build from trunk, and product-issue-42.domain.local points to a machine with a version from issue-42 branch.
Suffixes with specific build numbers can also be added, if you need to host multiple instances in parallel. Then product-master.domain.local can be as just an alias to a machine with the cuttent latest build.

0

Please sign in to leave a comment.