Inspiration

Surveys reveal that almost half of developers skip writing tests so they can speed up new feature developments. This gave us the idea to set up a platform where developers can learn and help each other with software testing.

What it does

  • Test Assistant guides you to set up tests for your React application and then helps you to generate a summary using a test results processor. You can then create a new project on the platform and share the test report which will be rendered on your web application dashboard.
  • Our main goal is to help you learn and improve your software testing concepts. Test Assistant allows users to collaborate and learn together by interacting with your project via votes and comments. This way you can also get feedback based on your source code and test reports.
  • Basically Test Assistant is a software test reports hosting platform just like GitHub is a code hosting platform which allows other developers to give feedback and help others with testing.

How we built it

  • The client is built using React, SCSS and the server is built using Strapi and GraphQL with MongoDB as database. We used Enzyme, Jest and test results processor to setup testing for React applications.
  • From the MLH Fellowship organization we used 3 projects which are a part of our pod - Enzyme, Docusarus and NVM.
  • React-Helmet for Search Engine Optimization

Challenges we ran into

  • Me and my teammate are new to software testing so learning basics of Enzyme and Jest in limited time was a challenge.
  • We were using Strapi for the server and for some reason npx was using a beta version of Strapi when we were trying to create a new application. The beta version had some bugs with authentication code and it was a blocker for some time. However, we were able to unblock ourselves and moved to a stable version of Strapi manually.
  • The idea of collecting test results from the terminal was new for us.
  • As we are working part time in the MLH Fellowship time management was a challenge, this being our first hackathon.

Accomplishments that we're proud of

  • Completed a presentable version of our project by Friday.
  • Successfully gave a working demo of our project on Friday in our pod standup meeting.
  • Customized authentication to work with httpOnly cookies to secure our application from XSS attacks which might have occured because of saving the JWT in localStorage.

What we learned

  • Basics of software testing of React applications with Enzyme and Jest.
  • Using test results processor to generate test reports in html format.
  • Working in the fast working format of a hackathon was a new experience altogether.

What's next for Test Assistant

  • A notifications system to notify users when some other users add review to their test reports.
  • Upload test reports directly from vs-code by integrating test assistant with vs-code
  • Improve user interface and user experience
  • Improve documentation set up using Docusarus to help developers who are new to software testing.

Built With

Share this project:

Updates