At
PicScout, we believe that every step in our development workflow that can be
automated should be. Testing is one of those steps where automation is needed.
Automated testing allows us to implement new features quickly, as we can always
prove that the product still works as we expect.
In
order to automate our testing process, we chose to work with Selenium among other tools we
are using. Selenium
is an open source set of tools for automating browser-based applications across
many platforms. It is mainly used for web applications testing purposes, but is
certainly not limited to just that.
Our
approach is that most of the automation should run locally to keep the
continuous integration environment clean as much as possible. This is very
important step for stepping up to continuous deployment. Therefore, we build a
mechanism that enables to run the automation including selenium locally. By using
this mechanism, the SW engineers can ensure quality up to a certain level.
Each
developer must first run the automation including Selenium on the local machine
before his\her changes are pushed to the source control repository. To achieve
this, each developer works on his own environment and doesn't interrupt other
developers. That way the selenium testing environment stays "clean".
In order to ease the developers' life a set of tools was developed which is
responsible for updating the DB and running the tests.
The
tests use dedicated DB which contains the relevant data; hence before running
them the DB needs to be restored from a backup stored in the source control
repository (aka GIT). In case a new selenium test is written which requires
some data changes, the tool allows publishing the local DB to the repository.
Furthermore,
selenium tests are written over NUnit Framework. NUnit Framework runs the tests
in sequence, meaning one after the other. This can be
time consuming since some tests can run in parallel as long as they are not
affected by each other. Running tests in sequence takes about an hour, while in
parallel it takes only 10 minutes!
Therefore,
we developed a tool that supports serial and parallel modes for running tests.
In order to run tests in parallel, we had to isolate each test from another. To
achieve this, we had to make sure that the tests don't use shared DB resource
or information (including but not limited stored procedure, tables etc.).
By doing that, we know for certain that at any given time, no test will disturb
any other test while still pushing the performance to the limit and finishing
all of the tests in minimal time, as opposed to running tests in sequence
manner.
That's
about it on how we use selenium at PicScout.
True Healing Self Healing has an extraordinary proprietary formula featuring the richest source of 100% bio-available Humic Fulvic Acid along with micro and marco mineral nutrients. This highly refined product consists of tiny, extremely complex molecules. The unique nanotechnology used in this formula sets it apart from any other product claiming to be similar in nature.
ReplyDeleteI thought I would leave my first comment. I don’t know what to say except that I have enjoyed reading.The Olympic Games in Rio
ReplyDeleteI'm really impressed by the way that you have managed to keep this post short and straight to the point. I must admit that I have really learnt a lot from simply reading this particular post. Continue with the good
ReplyDeleteKite projects Is providing construction, engineering and facilities management to provide edge protection, vertical access and hand railing solutions to Industries in United Kingdom!vertical ladder
ReplyDeleteI found that site very usefull and this survey is very cirious, I ' ve never seen a blog that demand a survey for this actions, very curious.line icons
ReplyDeleteI look for such article along time, today i find it finally. this post give me lots of advise it is very useful for me
ReplyDeleteI really appreciate the kind of topics you post here. Thanks for sharing us a great information that is actually helpful.
ReplyDeleteThe Commission proposes in particular to the City to help companies in the implementation of a network of electrical terminals.refinancing a home mortgage
ReplyDeleteExcellent article. Very interesting to read. I really love to read such a nice article. Thanks! keep rocking
ReplyDeleteI really appreciate the kind of topics you post here. Thanks for sharing us a great information that is actually helpful. Good day!
ReplyDeleteGreat information, really loved to read this blog post. Find latest version of clone hero from this site: clone hero live
ReplyDelete