Ilya Suntsov is a team leader at GridGain who started his QA journey as a manual tester. Since then he has participated in testing as an automation engineer with a focus on performance and load testing as an analyst and team lead. Currently, he works closely with developers on the test coverage extension of the GridGain In-memory Computing platform, which is based on the open-source distributed database Apache Ignite. His main area of interest is in testing distributed systems.
Don't test it. Just use it!
When you buy a car, the first thing you do is start it up and step on the gas. I haven't seen a person who would put the car in the parking slot and then write tests for the ECU and think about the environment that should be used for the test suite.
So why not just use the app instead of testing it?
I'll tell you how:
- we found the right focus group for our test framework and improved it as much as possible.
- we introduced an application, built on our product, into the daily life of our R&D department and found quite a lot of error
- we forgot about Jenkins task for a week and got our "internal" production system running.
Testing of distributed systems. Jepsen it is not so hard
MongoDB, Apache Ignite, Cassandra, MariaDB - we've head at least of one product from this list. There are a lot of manuals and posts on stack overflow, habr about them. All of them are distributed systems - distributed data base, distributed cache and so on. We will focus on the testing of such systems (yes, I'm talking about Jepsen).
Jepsen it is module of Clojure (it's like a Lisp but for JVM). This module have a lot of useful code, that break the brain of anyone who not familiar with s-expressions. It difficult but it intresting!
I will tell about Jepsen as a module of Clojure, about testing environment and show some real examples of tests.
The truth is out there or how to write code
When the working day is full of routine operations, and the username, password, and ip address of the test server you remember by heart. When the hands on the machine fill in the next table the results of the tests, and it seems that every day is just a copy of the previous one. When you realize that something is wrong... you need to stop, think, and write the code.
In my report I will give a few tips for first-time testers-programmers. I will try to warn them against mistakes made by me, and will tell you how to get pleasure from work each day