Replies: 4 comments 19 replies
-
I totally agree with you Zoltan, we need a lot of testing to improve the quality, I can take the initiative on testing why I like this specifically also my master's degree in Software Testing :) In terms of testing, I have a demo that I deferred for a while to have a look into Playwright. Also, Lombiq guys invest in UI Toolbox which is great as well In the end, I can start writing units & functional testing. what I like about some projects like Fluid is contain a lot of unit testing which is something position in terms of quality |
Beta Was this translation helpful? Give feedback.
-
While I agree with most of your summary, I don't think slowing down the momentum is a good idea. Focusing on QA is a great agenda for 1.10 (and moving forward). But we also want to welcome any contributions. What I agree with is try to avoid merging a very-risky code unless it's backed up by tests and we feel it is valuable enough to merge at that time. Also, any refactoring should be avoided unless it also adds a test cases to support it so we are sure refactoring isn't breaking and scarify quality. Sometimes, there are immediate needs to improve existing functionality that aren't bug fixes. We can't completely say we are not willing to accept them in 1.10 as it could become problematic for the people that relays on OC heavily. I like the initiative you are doing and appreciate the effort. Maybe you should keep focusing on automation as you have added lots of things lately to improve the project. At the same time, if someone submits a PR, I don't think we should hold it back unless it is a very risky PR that impacts core functionality. I think another initiative for 1.10, is to reduce the existing finalized PR. Instead of having 70, maybe cut that down to like 30 or less. If there is already a PR, the work is done or almost done otherwise it should be closed. Meanwhile, we have some critical issue that are preventing the release of 1.9 and should be a high priority for us. Anyone that is available should take time to attempt to fix them. Here is a list of them https://github.com/OrchardCMS/OrchardCore/issues?q=is%3Aopen+is%3Aissue+milestone%3A1.9 |
Beta Was this translation helpful? Give feedback.
-
I can't agree more. We should also try to enforce unit/functional tests to come with new Pull Requests. If not provided then we at least need to have a task about it so that it can be done within a respectable delay. Meaning that it should be done before releasing the next version so that we make sure that it is tested properly. If a release creates regressions on current websites it should also be documented and/or we should at least provide some help with possible SQL migrations when we can't have them as migrations/recipes. But the main point here is that we should try to fix any regressions that we find in OC before we deploy any new release. Adding new features will often create more complexity and more regressions. I agree that there is already a lot to cover with what we have and that if we want to catch up we will probably need to freeze some parts of it. We could at least accept PR that are already really well test covered. Meaning that they should provide unit tests/functional tests. So, in order I think we should have this Playwright PR merged first. We already have Cypress and really few people use it so I'm thinking that if Playwright creates a small buzz maybe people will start creating functional tests at least. |
Beta Was this translation helpful? Give feedback.
-
I'll mark automated QA-related issues and ones about serious bugs with the 2.1 milestone. |
Beta Was this translation helpful? Give feedback.
-
We're nearing the
1.92.0 release. For1.102.1, before we can think of what we want for 3.0, I think we should focus on quality, and to maintain that quality, automated Quality Assurance (QA). The latter is especially important because we have very little automation for QA currently, and thus suffer frequent regressions, as well as the necessity to test PRs extensively by hand (during my reviews, I frequently have to point out fundamental things broken in PRs, what should all be caught by tests instead).This is what I propose after 1.9 is released:
Once we're done with these, we'll be in an excellent position to work on in-depth changes and accept a lot more community contributions. #15029 already caused more contributions, and I expect #15034 to have a similar effect too.
These are all practices that we at Lombiq use with all of our projects, including the large Lombiq's Open-Source Orchard Core Extensions solutio, all customer and in-house projects, as well as Orchard Core Commerce too. It's a large initial effort for an existing codebase, but starts to pay dividends immediately by improving the application and dramatically lowering the time spent on code reviews.
I can work on static code analysis and UI testing (for that I've actually added a draft PR previously with a lot of testing improvements and new tests but there was not enough interest at that time: #11194), if two people volunteer as my buddies who I'll discuss ideas with, and who'll quickly review and merge my PRs.
What do you all think? I'd especially ask you @agriffard @BenedekFarkas @hishamco @hyzx86 @MikeAlhayek @sarahelsaig @sebastienros @Skrypt for some feedback.
Beta Was this translation helpful? Give feedback.
All reactions