Enabling Open Science Through Research Code: Insights from Episode 5 - Testing Research Code

Research Software Engineering Open Science Coding Community Building Experience Blog Software Testing

This is a blog sharing insights from Episode 5 of the Community Conversation series ‘Enabling Open Science Through Research Code’.

Anelda van der Walt, Jyoti Bhogal, Saranjeet Kaur Bhogal, Abhishek Dasgupta, Sheena O’Connell, Mireille Grobbelaar https://github.com/jyoti-bhogal
03-20-2025
Episode 5 banner

Introduction

In the world of research software development, ensuring that code runs correctly and produces reliable results is crucial. However, software testing is often overlooked, particularly in academic settings where researchers may lack formal training in programming best practices. This challenge was a central theme in the recent discussion during episode 5 of our six-part series “Enabling Open Science Through Research Code”, where experts from diverse backgrounds shared their experiences and insights on making software testing accessible and effective.

During the session, panellists emphasised that while research software development is often self-taught, adopting best practices such as software testing can improve both individual efficiency and collaboration. One of the mantras that continuously came up in the different episodes is that

We should be our own best collaborators first.

Episode 5 once again showed how good coding practices can benefit the coder as much as other contributors, collaborators, and users. This post summarises the discussion, highlighting practical tips for beginners and more advanced strategies for experienced developers.

Our wonderful speakers included:

Tips, Tools, and Practices for Novices

If you’re new to coding or research software development, software testing may seem like an advanced topic. However, as our panellists suggest, starting with simple practices can make a big difference in the reliability of your code.

1. Start with Assertions

2. Use Smoke Testing

3. Learn Basic Unit Testing

4. Keep Code Modular

5. Automate Where Possible

Testing Software, Image Credits:Torsten Zelger

Approaches to Software Testing for Experienced Developers

For those already familiar with software development, a more structured approach to testing can improve reproducibility and collaboration. The panellists discussed key strategies for advanced users, including:

1. Different Types of Testing

2. Version Control and CI/CD

3. Cross-Platform Testing

4. Automating Data Validations

5. Balancing Testing with Research Deadlines

Conclusion

Software testing is not just for professional developers—it is an essential practice for research reproducibility and collaboration. While beginners can start with simple assertions and unit tests, advanced users can implement continuous integration, property-based testing, and automated data validation to ensure code reliability.

As Anelda concluded,

Testing is not just about making research more open; it’s about being your own best > collaborator.

By integrating these testing strategies into research software development, we can move toward a more open, transparent, and reliable scientific ecosystem.

📢 Explore More:

Access our Resource Sheet, which contains numerous valuable resources shared by the panellists, facilitators, and participants.

View the session recording on YouTube.

The first draft of this blog post was created with ChatGPT from the edited video transcript.

Looking Ahead

The next episode in the series, “Research Software Funding” will take place on March 20, 2025, at 08:30 UTC. Be sure to register here and join the conversation!

This series is an excellent opportunity to learn, connect, and grow as we work together to enable open science - one line of code at a time.

This meetup series is a collaboration between Talarify, RSSE Africa, RSE Asia, AREN, and ReSA.


Learn More About Us

For more information and to join upcoming events, visit:

RSSE Africa

RSE Asia

AREN

ReSA

Citation

For attribution, please cite this work as

Grobbelaar (2025, March 20). RSE Asia Association: Enabling Open Science Through Research Code: Insights from Episode 5 - Testing Research Code. Retrieved from https://rse-asia.github.io/RSE_Asia/

BibTeX citation

@misc{grobbelaar2025enabling,
  author = {Grobbelaar, Anelda van der Walt, Jyoti Bhogal, Saranjeet Kaur Bhogal, Abhishek Dasgupta, Sheena O’Connell, Mireille},
  title = {RSE Asia Association: Enabling Open Science Through Research Code: Insights from Episode 5 - Testing Research Code},
  url = {https://rse-asia.github.io/RSE_Asia/},
  year = {2025}
}