This guide explains how to use new features in NodeBB, including anonymous posting and private posts for instructors. It provides step-by-step instructions for users and covers automated testing to ensure reliability.
Users need to log in to their NodeBB account.
When creating a new post or replying to a thread, there is an option to post anonymously. This option is a checkbox in the post creation interface.
Users can write their post or reply as they normally would but with the anonymity option enabled.
After composing the post, the user should click the "Submit" button to publish it anonymously.
Users can edit the post’s anonymity by selecting the edit option on their post after posting.
The post is visible to the instructor with the user's name, while other students will see it as anonymous.
Users need to log in to their NodeBB account.
When creating a new post or replying to a thread, there is an option to post privately for instructors. This option is a checkbox in the post creation interface, labeled as "Post Privately"
Users can write their post or reply as they normally would, with the "Post Privately" option enabled.
After composing the post, the user should click the "Submit" button to publish it privately for instructors.
The post is visible to the instructor with the user's name associated with it. Other students or users will not have access to this post; it remains hidden from their view.
Automated testing is crucial for ensuring the reliability of these features. It helps catch errors and ensures that new code changes don't break existing functionality. Here are some automated tests our team has considered for our new features:
-
Unit Tests: Write unit tests for individual functions or methods responsible for enabling anonymous posting and handling private messages. These tests should cover different scenarios, including edge cases.
-
Automated Testing For backend support anonymization of post: This test suite focuses on automating tests for the backend support of post anonymization, ensuring that user data is appropriately anonymized in posts [Lines: 34-36, 55-63, 71-73, 94-134].
-
Automated Testing For Topic anonymization: This test suite is designed to automate tests for anonymizing topics, verifying that topic-related data is anonymized as expected [Lines: 914-939 ] and Categories [Lines: 84-114 ].
-
Automated Testing For Avatar Template anonymization: This test suite is responsible for automating tests related to avatar template anonymization, ensuring that templates for avatars maintain privacy as required [Lines: 169-175 ].
-
Automated Testing For Editing Name Visibility of a Post: This suite automates tests that verify the visibility of user names when editing a post, ensuring that the appropriate name visibility rules are enforced [Lines: 600-673 ].
-
Automated Testing For Private Post: This test suite focuses on automating tests for private posts, checking that posts designated as private behave correctly in terms of visibility and access control [Lines: 114-127, 392-433].
-
Automated Testing For User registration: This suite is responsible for automating tests related to user registration, ensuring that the user registration process functions correctly and user data is handled appropriately during registration [Lines: 28, 178-215].
-
-
Made Sure Existing Functionality: Ensure that existing functionality (e.g., regular posting and messaging) is still working as expected after implementing these new features.
Manual testing was also conducted by all team members following the steps below to ensure full functionalit of previous version of NodeBB and the implementation of the new features.
Instructors:
- Log in with their Instructor accounts.
- Enable anonymous posting.
- Create test posts.
- Verify that student name is visible but hidden from public view.
Students:
- Log in with their Student accounts.
- Enable anonymous posting.
- Create test posts.
- Verify that their name is hidden from other students but visible to the instructor.
Instructors and Students:
- Log in with their respective accounts.
- Enable the "Post Privately" option.
- Create test posts.
- Verify that these posts are visible to the instructor with the user's name.
- Confirm that other students or users cannot access or view these private posts.