On the 2018 Romanian Testing Conference

So, last week I had the pleasure of attending the 2018 edition of the Romanian Testing Conference. It was my second visit to Cluj: after having delivered a workshop at the conference last year I was invited to do another workshop for this year’s edition. I told Andrei, one of the organizers, that I would gladly accept if he:

  1. could schedule my workshop for the Thursday (Wednesday and Thursday were pre-conference workshops days, the conference itself was on the Friday), and
  2. would make it at least as good an event -and if possible, better- than last year.

Challenge mutually accepted!

During the time when the CFP was open, I sneakily submitted a proposal for a talk as well, and was quite surprised to see it accepted too. Yay! More work!

I left for Romania on Wednesday and arrived around 7 PM at the hotel Grand Italia, which again was both the place where the speakers had their rooms as well as the venue for the conference itself. I cannot stress how awesome it is to be able to pop in and out of your room before, during and after workshops and talks without having to go to another place. Need a rest? Go to your room. Forgot something? You’ll have retrieved it in minutes. Want to check if there’s anyone up for a chat and/or a drink? Just ride the elevator down.

Again, the organization went to great lengths to make us speakers and workshops hosts as comfortable as they could. Always someone around if you have questions, picking you up from and bringing you back to the airport in dedicated RTC cars (even at stupid o’clock), it is a wonderfully organized event.

Thursday – workshop day
Like last year, I hosted a workshop around API testing and automation. Where I only used REST Assured last year, I decided to give the participants a broader overview of tools by including some exercises with SoapUI, as well as a demo of Parasoft SOAtest, a commercially licensed API testing tool. Also, compared to last year, I threw in more background on the ‘why?’ and the ‘what?’ of API testing.

Me delivering my workshop

I had 30 participants (like all other workshops and the conference itself, it was sold out) and after a bumpy start, including a couple of power outages, we were off. Like with all workshops, it took me a little time to gauge the level of experience in the room and to adjust my pace accordingly, but I think I got it right pretty quickly. With several rounds of instructions > exercise > feedback, time was flying by! Breaks were plenty and before I knew it, the working part of the day was over.

We were invited to a wonderful speakers dinner in the hotel restaurant, which provided plenty of time and opportunity to catch up with those other speakers I met before, as well as to meet those that I hadn’t had the privilege to meet yet. After a day of teaching and all the impressions from dinner, I decided to be sensible and make it an early night. Mission failed, because once in my room it still took me hours to fall asleep. My brain just couldn’t shut off..

Friday – conference day
Friday morning came quickly and that meant conference day time! The programme was strong with this one.. So many good talks on the schedule. Yet, like with many conferences, I spent most of the day in the hallway track, preparing for my talk (I wasn’t on until 4 PM) as well as having a chat with speakers and attendees. For me, that’s often at least as valuable as the talks themselves.

Still, I saw three talks: first Angie Jones’ keynote (I met her a month earlier in Utrecht but had never seen her speak before), then Viktor Slavchev’s talk and finally Maria Kedemo’s keynote. All three were very good talks and I learned a lot from them, both in terms of the message they conveyed as well as their presentation style.

This day flew by too and before I knew it, it was time for my own talk. Now, I’m a decent workshop host (or so I’d like to think…) but I am not an experienced speaker, so doing a talk takes a lot out of me, both in terms of the time it takes to prepare as well as the energy I spend during the talk itself. Still, I was pretty pleased with how I did, and the feedback afterwards reflected that. Maybe I just need to do this more often…

Me during my talk

After the closing talk, which I skipped in favor of going outside, enjoying the beautiful weather and winding down, the conference was already over. To round it all off, we went out for a bite with some of the speakers before we attended the conference closing party. The organization had one final surprise in tow for me there when they gave me an award for the best workshop of the conference. Seeing the list of amazing workshops that they had on offer this year, I certainly did not expect that!

Since my flight back home left at an ungodly hour the next morning, I decided not to make it too long an evening (not everybody followed my example judging from my Twitter timeline the next morning..). Travels home were uneventful (which I consider a good thing) and suddenly, it was all over again.

My thoughts on this wonderful conference, the organization and the volunteers can be summarized by this tweet, I think:

Andrei Contan@andreicontan

Book the dates 8-10 May, 2019 for @RomaniaTesting by @ard_kramer

Bas Dijkstra@_basdijkstra

I encourage *anyone* in the software testing field to go to @RomaniaTesting at least once. You *will* be having an awesome time.

See Bas Dijkstra’s other Tweets

So, did the organization deliver? Well, I did get to do my workshop on the Thursday, and I had an amazing time again, so yes, I’d say mission accomplished.

Who knows, we’ll be seeing each other there next year?

14 Most Common Mistakes A Tester Makes

Did you do any mistake recently?

I did.

But we’re all humans, right? And we’re all likely to make mistakes. Usually people associate making mistakes with punishment which in most of the cases is the immediate action after a mistake is made. And seeing the good part in it is almost impossible, at least while you’re struggling to repair what you did wrong.

Making mistakes can have a positive impact on your professional growth, the only condition is to learn a lesson from the mistakes you’re doing. And during the learning process is almost impossible to avoid making mistakes.

Making mistakes is a lot better than not doing anything. — Billie Joe Armstrong

There is no activity domain in which you’re more likely exposed in making mistakes than in others. Below is a list of mistakes a software tester is exposed to during his/her work lifetime and from which can learn several lessons.

1. Incorrectly evaluate the risks

The job of a tester rely much on identifying and risk mitigation. A good risk analysis can help in identifying what can go wrong with the product you’re testing before it goes to production.

Identifying the areas of concern can massively reduce the costs and time spent afterwards in fixing problems found in later stages of development.

Photo by Caroline Hernandez on Unsplash

2. Miscommunicate the impact

Miscommunication is always a mistake, even we’re talking about miscommunicate the impact of a bug, the presence of it or any situation that might jeopardise the quality of the product we are testing.

3. Ignore a bug when you see it

Ignoring things like miscommunicate them should never happen. As testers we must address any situation we’re facing — even if we don’t have solutions for these situations or maybe don’t have the bigger picture, it’s better to make them known than to act like the elephant is not in the room.

4. Using the same test data — pesticide paradox

Executing our testing scenarios using the same test date might lead us to the pesticide paradox. Repeating over and over the same test cases with the same test data will no longer find new bugs.

5. Not keeping test cases up to date

If you want your test cases to be useful, keep them up to date. Outdated test cases don’t bring any value into your testing.

6. Criticising developers

A constructive way of giving feedback and a positive communication can make the difference in a tester-developer relation. Try to spot also the good work a developer is doing, not only the bugs or problems found in his/her code. Add positivity into your testing!

7. Making assumptions

As a tester you should never make assumptions! The best way is to ask all the questions you need an answer for, helping you to understand the requirements, what need to be tested, what was implemented or how the application under test is expected to behave.

8. Incorrectly evaluate and measure the effort

Project Manager: “How much would it take you to test this?”

Tester: “Hm, a couple of hours, maybe?!”

Be sure you make a step back and you see the bigger picture before you give estimates.

9. Frequently changing the focus

Emails, meetings, regression testing, test case creation, test case execution, a phone ringing, a person asking something, a patch in production that needs to be tested, another hot fix. I think you all recognise the scenario.

This can have a negative impact on your productivity and quality of your work. I would suggest you to try to find what works best for you and organise your working day accordingly.

10. Copying the acceptance criteria into the test cases

We are sometimes tempted to make this mistake while writing our test cases when we don’t see much value in writing and executing them. Let’s try not just state the obvious from acceptance criteria in our test cases, but also focus on negative testing, edge cases or other scenarios that might make our testing more complete.

11. Incorrectly evaluate the impact of a new functionality/fix

This is translated by one word: regression. It is crucial to understand what other areas are affected by a newly developed functionality or by a code fix.

12. Being scared of using tools

This might happen when you, as tester don’t feel very comfortable with your technical skills. It’s totally fine not to be a super hero in using tools, but I encourage you to be open to any solution that might ease your daily work.

Even you don’t feel comfortable in using tools, you might get help from other testers, developers or maybe online support.

Photo by Todd Quackenbush on Unsplash

13. Not thinking as the end user

It is better to take the user’s hat and imagine how s/he will use the application you’re testing. It is said that the end user is the best tester which finds more and critical bugs. And we don’t want that, right?

14. Not asking developer’s help

Sometimes we are afraid of being judged or afraid of looking stupid which leads us in trying to find solutions to our problems by our own. It is not a bad thing to be a problem solver. This is not the best practice though when you invest time in doing it instead of asking a developer what you’re trying to figure out.

I encourage you to have a good relation with the developers you’re working and maintain a positive communication. There should be no me vs. you, tester vs. developer kind of situations.


Conclusion

If you found yourself in most of the above situations, I can feel your pain, I went though all of them too through my career. Definitely is desirable to avoid all these mistakes when possible, but when they happen, don’t punish yourself too much. Is good to make mistakes and learn good things from them. Turn your mistakes in valuable life lessons!

RTC2018 – seen through the eyes of a student

If you are a professional software tester or a curious tech-savvy who loves taking part in the newest debates related to software testing, automation, artificial intelligence, machine learning, IoT or/and software security, you must have already heard about Romanian Testing Conference (RTC), the largest testing conference in Central-Eastern Europe which is held every year in the heart of Transylvania. This year, the 7th edition of the conference took place between 9th and 11th of May 2018 in Cluj-Napoca, hosting about 670 participants and 31 international speakers from 12 different countries.

The schedule of the conference consists of two full-days of hands-on practical workshops (about 7 to 8hours), with 5 different tracks to choose from and with topics varying from automation testing, security testing, test strategies, continuous delivery approaches or specific frameworks & tools used in each area of software testing, offering participants the opportunity to choose the workshops that best suits their needs and interests. The last day of the conference is composed of various shorter keynote presentations where speakers are encouraged to share glimpses of their experience and knowledge with the audience, the main focus being on approaching subjects related to software testing from a creative or technical stance, offering a very insightful perspective for each topic.

RTC mainly focuses on gathering together the largest community of professionals in this field with the purpose of sharing bits of knowledge, wisdom & best practices according to the latest criteria, raising awareness of how important is to maintain the highest standards when talking about quality and risk in each tech-related field of activity. Also, this event encourages debates on the latest topics of interest regarding software testing, offering a better understanding of the subtle nuances and challenges that a software tester faces each day in this spontaneous and ever-changing craft. One of the most important things that I have learned here these days is that software testing is supposed to be a whole experience, continuously delivering quality through products and services that make the users feel good and safe, enriching their overall experience when interacting with them. The art of testing is not only about finding bugs and validating requirements (as it is sometimes perceived), but is also about exploring, experimenting, investigating, observing and having a critical thinking when approaching the value of a product or service.

I would not go into describing the workshops in a very technical and detailed manner, but I would like to present them briefly by highlighting the most important facts or tips & tricks that I have learned from them. Firstly, I have learned about the importance of setting goals when approaching software testing and always taking risk and value into consideration in order to have a good reason for testing that will prove its worth in the end. As quality is generally defined as “something of value for someone” it is a tester’s job to define it and understand its importance and impact over the whole user experience that would decide the success of a product or service in the last instance. As being a very debated topic recently, automation testing was obviously brought into discussion, with its main focus being on maintainability, highlighting some very important principles to be taken into consideration when coding: readability, correctness and performance with a goal of delivering high- quality and approaching testing from a smart perspective, avoiding overlapping bits of code. Besides those theoretical concepts, there were hand-on tasks and challenges that proved to be very useful for applying those fundamental concepts in practice and further provoke those with a curious mind to learn more and experiment more with them.

The last day or “The Conference Day” was well structured and entertaining too, offering the participants a wide variety of topics and keynotes to choose from. The main ones approached topics as: the importance of cybersecurity and ethical mindset in software testing, VR concepts, automation engineering, required leadership skills in an IT work environment and how to better train your mind in order to perform well in this field. The overall vibe of this day was fantastic, the audience was very interested in the topics debated, the conference rooms were occupied over their seat capacity and the speakers were very well prepared and eager to share their ideas with us, and also being very responsive to feedback and Q&A sessions, offering the audience bits of their day-to-day experiences and challenges as professional software testers. Each of them came up with a different perspective on software testing, using creative or technical approaches, highlighting the most important facts and clarifying all the misconceptions in order to further accelerate the continuous learning process and encourage the testers to bring more value to an organization by developing a new mindset. The discussions continued even after the keynotes, when participants and speakers shared their views and opinions during coffee & snack breaks, engaging in debates over the latest topics.

As expected, hot debates emerged around the role of software testing in an artificial intelligence world with all its challenges and risks, from machine learning basics to machine ethics and a future artificial world based on automated processes. Nevertheless, the keynotes brought up concepts such as metacognition (concept borrowed from psychology) in the field of software testing, as encouraging new ways of learning, enhancing the knowledge gathering and understanding of the entire process of delivering quality at its highest standards. Also, the conference focused on delivering some very useful information about leadership, highlighting the importance of understanding the business and its targets, having integrity as a “coin you cannot afford to spend” and learning through failure how to better succeed at managing a technical team as well as your expectations and time. Being a leader may seem an extremely hard and stressful job, but it can prove to be very self-fulfilling if done right, combining the right soft-skills & technical expertise in order to deliver the best outcome.

Overall, RTC is a very useful experience where you can learn a lot, even if you are a student taking your first steps in this vast technical world or an experienced professional looking for new approaches and ideas to apply in your everyday work. Staying always curious and hungry to discover and learn more about your field of interest is the best way to ensure your way to a successful career. Also, I could not highlight more the importance of networking that comes with these kind of events, enabling you to meet people that share your interests and passions and offering the opportunity to benefit from being part of a loving and supportive community that will help you grow personally and professionally. In the end, I would say that RTC is a wonderful experience that leaves you drained and full of energy at the same time, gives you tons of new ideas and fresh perspectives regarding the software testing field and motivates you to learn and experiment even more with what you have discovered. I encourage every curious-mind passionate about technology and quality to give it a try and take part in the largest testing conference in Central-Eastern Europe the next year. I am sure that you will enjoy it, meet lots of people that you can share your curiosities and ideas with and discover a lot of useful information that will change your overall perspective and understanding about this domain. After being part of RTC once you will certainly be eager to attend the next edition, as I am now.

As a fun fact, this year we succeeded to place the largest group order involving 255 simultaneous users accessing the HipMenu app, 239 users that placed an order and 259 delicious donuts delivered to us, all sorted alphabetically as to make it easier for us to find our donut and recharge with a sweet snack after a long day of software testing debates challenges.