BHoM / Test_Toolkit

GNU Lesser General Public License v3.0
0 stars 0 forks source link

Formalising Testing Framework and Approach #106

Open al-fisher opened 4 years ago

al-fisher commented 4 years ago

Introducing a greater breakdown and categorisation of our various testing scripts and procedures to enable further scaling and automation beyond our current CI and compliance.

Below is a first list of, I think, the key categories that we need to focus on. Not all will be fully automated in the first instance and priorities will vary naturally.

Listed below for comments/input and then more granular plans to be formulated around each as needed. Focus on Interoperability Test for 3.1 Milestone as discussed and planned.

I. Compliance

II. Functionality

III. System

IV. User Testing

FraserGreenroyd commented 4 years ago

I am changing the milestone for this because there isn't enough time left in 3.1 to achieve everything listed. There are some workshops scheduled to discuss this but most work will be completed (hopefully) in 3.2.

FraserGreenroyd commented 1 year ago

To update this issue and work out the final plans for close out.

Items under 1 - Compliance:

These have been completed and rolled out for some time now, with @BHoMBot check compliance being a staple of many pull requests handling our compliance guidelines for BHoM contribution, outlined both in the documentation and this repository for public record and examination.

Items under 2 - Functionality:

Items under 3 - System:

Test procedures exist for testing the installer which are run every beta and periodically if issues arise. There are some issues with installing BHoM over a previous install by another user which are being tracked separately. Validation against the BHoM main branches hasn't been implemented as the main (or develop) change so frequently that it is difficult to have a static test for these. Instead, installer checks have become a staple of Pull Requests, also handled by BHoMBot to ensure pull requests don't merge if they introduce issues with the installer creation process.

Items under 4 - User Testing

As mentioned, the final sprint of each milestone is a testing sprint and this has been going well in recent milestones. This has formalised our testing process for beta delivery massively, though some documentation is still outstanding.

Sample testing is also now conducted as part of Toolbox testing, led by @kayleighhoude @michaelhoehn and @enarhi in particular.

As such, although it has been a long time since this issue was updated, I think it's fair to say we have massively improved and formalised the testing frameworks and approaches undertaken within the development teams for BHoM contribution, and I don't think anyone would disagree to say we've come on along way since January 2020 when this issue was first raised.

To summarise the issues outstanding which prevent this issue being marked as complete currently, are to the best of my knowledge, as follows:

I think once we have tackled these items, this issue could be safely closed as complete, though should also be linked in documentation for future reference.