In this post we are going to look at some of the components and terms used in DynamoDB. We will follow this with some .NET Core code examples of commonly used functions.
Many organisations are moving towards an Agile approach to the work environment; instead of having teams consisting purely of testers, the teams are now set up consisting of multiple functions. An example of an agile team is one which could consist of Developers, a Business Analyst, Product Owner and a Tester. While there are many benefits to this approach, such as the ability to work with all roles when thinking, designing and creating features or products, a challenge has been ensuring the internal testing community is still able to engage with each other regularly.
Ensuring testers communicate and meet with each other regularly, regardless of whether they are in another team, or not, is important. It’s essential that you are able to talk with other testers to discuss test techniques, share approaches you have taken, or to discuss potential issues that you need to troubleshoot.
In this blog post, I’m going to cover why it is important to have an internal testing community, i’ll outline some methods to keep the internal testing community alive, as well as some tools that I find helpful in my workplace.
Why it is Important to have an Internal Testing Community
Having a team consisting of Devs, BAs, Designers, Product Owners and Testers allows you to have a lot of power when creating features or products. Each role has a set of skills and has a focus, that when combined can help build the right product.
However challenges may still be encountered with multiple role teams. Sometimes in these teams you might be the sole tester; while being able to communicate and review with your team is important, and will offer valuable advice and information, what you are missing is the advice and information from fellow testers. The ability to discuss testing topics, ideas, techniques and experience with peers is important to ensure your testing is covering the right things, as well as having the opportunity to learn different ways to tackle problems, and new ideas or approaches to testing.
Creating meetups that give the ability for testers to regularly engage, can be really empowering. It’s important for testers to be able to communicate ideas and is also helpful to identify who your testing peers are in your organisation. Here are some great ways to ensure engagement and learning occurs within your business:
Tester Coffee Catch up
Don’t be fooled by the name, while it is encouraged to grab a coffee, tea or hot chocolate, the idea around Tester Coffee Catch Ups are that they are a regular form of engagement where a member of the team will present to the wider testing team. Special mention to Craig McCormick who introduced this at my current workplace, this has worked well and has been incredibly beneficial for the testing cohort.
A tester may present on any topic they want, this might include what a team is currently working on, allowing people to see what features or products are coming up across the business.
Presenting on testing techniques or tools is a great way to communicate what others are finding useful across the organisation.
If a tester has recently been on a training course then coming back and delivering an overview of content can be helpful. By outlining the main points of the training it can give others the ability to research more about those topics or gives them a good indication of whether they would like to attend the training themselves.
Hosting these regular internal meetups have a secondary benefit. They give the testers the ability to practice their presenting skills in front of other friendly testers. It is encouraged that everyone has a go and the presentation can be up to an hour long or as short as they like for testers that haven’t got much presenting experience. I suggest that if you’re a first timer, it can be easier to start of with a 10 or 20 min presentation.
The Test Dojo is an educational working group meetup where we work on a testing topic, such as new testing techniques applied to a real or fake piece of work. Working on testing tools, including adding new features to the automation or security tools and outlining how to apply them to your work, really adds value.
Being able to train and work together in a working group style has many benefits, you get hands on learning with your peers, the sessions can move as fast or slow as you need which can help to ensure that everyone understands each section as you work through it.
Every individual has a set of skills, stronger in certain areas, creating a group that helps to grow and train other testers.
Most organisations have these regular tester leadership led meetings in place. These again are an important get together to ensure the team regularly engage and communicate as colleagues.
These meetings allow test and practice leaders to share information to other testers, ensuring others are kept up to date with organisational practices, up and coming work that might affect others, external and internal training, as well as new starters or leavers.
Pair Testing Sessions
Pair testing is a great way to test, having another person’s perspective when testing an application helps to learn different ideas, to hear what kind of questions they would ask and models they use. Pair testing is a good training and learning exercise.
Katrina Clockie wrote a good article on Pair Testing http://katrinatester.blogspot.co.nz/2015/05/pair-testing.html
Internal Collaboration Tools
As I have outlined above, being able to share information, ask for help and build up training material is important. Collaboration tools can help with that information sharing. Below are a few tools that I have used:
Is a collaboration tool where you create a ‘flow’ on a certain topic of interest, for example you might setup a flow on Testing or Development. People would then join the flow and discuss ideas on the topic.
Flowdock is a great tool for reaching out to a wider group of people who have knowledge in the topic of the flow.
When in split teams, it’s important to be able to quickly contact the wider testing team to raise concerns or ask questions on matters which may have already been raised by another team.
Flowdock is also useful for weekly updates, testers in your organisation could post an update on what they are currently working on inside their team. These updates help promote communication between testers in different teams and highlights what others are working on.
Hangouts is a Google product, that allows instant communication with your peers. It’s a faster way of communicating than via email.
At times you want instant communication with someone, hangouts helps reach out to people quickly and easily. It enables you to either type, call or video call an individual or group.
Another collaboration tool that can be used when wanting to post something more permanent and easy to find. Flowdock is great for having short conversations, while yammer would be used to post things that might want to be searched out later, such as blog posts.
Confluence is an Atlassian product that can be used to collaboratively create documents and training material for everyone in the organisation to access.
Having one place where people can create and access training material is important to ensure everyone is able to learn from others.
Over time training material can become out of date and needs to be updated, confluence being a collaboration tool for anyone in the organisation can access, helps ensure that the documents and training material is updated regularly
I hope these tips help drive you to engage in your testing community at work. I feel it’s very important to empower testers to continue to learn and develop constantly. I really wanted to highlight the importance of connecting and communicating to aid in facilitating that continued growth of not only yourself but the testing practice.