Bug Bash Fundamentals
Orientation meeting:
Video linkhttps://ubc.zoom.us/rec/share/oFIU4dPHNV97BK5oUR5KDVQZpIjzdIwXc8HKGHMx2_QKnFobaPBpdk4y0aDcCugA.Cr3_XTSCyPSErva9
Passcode: RBU^OY9*
What is a bug bash?
It’s a collaborative event where the whole team, no matter what their role is, comes together to try to “break” the application in creative ways ahead of a release. The goal is to find as many bugs as possible in a short period of time, and since every person in the team will have their own unique perspective and use the application in different ways, there are better chances of uncovering issues, defining how severe they are and if needed fixing them ahead of the release. It’s also a great opportunity for people to spend some time familiarizing themselves with the application and putting themselves in the shoes of one of our users. And last but not least, breaking things can actually be fun! By doing bug bashes often, we’re cultivating a blame-free culture where we take bugs as a chance to bond as a team, learn and improve.
How do I participate?
If you’re willing to collaborate with this bug bash, please write your name down in the Participants section. If possible add details about what language(s) you’re using when testing the app, as well as which user role(s) you’re logging in as. This will help us know if there are any languages or roles not currently being covered by anyone.
Read through the scope of what we’re testing in the Scope section. The scope will usually be defined based on what kind of changes we are pushing out on the upcoming release and it’s a guidance on which are the main things to keep an eye on. That being said, if you do find any bugs that are unrelated to the scope, feel free to report them anyway.
If the bug bash is done synchronously, there’ll be a meeting where we all come together and test at the same time with a time box. If it’s done asynchronously, we’ll aim to have the session open for enough time that people in different timezones are able to participate. In that case, feel free to participate whenever you can and have the time and to time box depending on what your schedule looks like. Everything helps, so even if you only have limited time to test, you might discover something that nobody else has found before. Information on the timing of the meeting or asynchronous session can be found in the Session details section
What do I do if I find a bug?
First off, congratulations on finding it! To report the bug, head over to the Bugs section and add a new row in the table. The row should include your name and a brief description of the bug, on the Details field please add as much information as possible. Please provide reproduction steps and expected/actual behavior, and if you have the time, screenshots or video recordings of what you encountered will be extremely helpful. You don’t need to fill out the Pre-existing, Priority or Blocker fields as those will be filled out once the session is over.
If you spot a bug and you see someone else has already reported it and it’s on the table, you can go ahead and just add your name to the “Also seen by” column to mark that the bug is encountered frequently, without having to write down all the details again.
What happens after the bug bash?
Once the bug bash session is over, the team will go over the list of bugs that were found and prioritize them. For each issue, we’ll try to answer these three questions:
Was this bug caused by the change we’re aiming to push out on this release, or does it currently exist in production?
How severe and how frequent is this bug, or in other words, what’s the priority for fixing it?
Should this bug block the upcoming release?
No matter the result, if the issue found is something we’d like to fix eventually, we’ll create the corresponding ticket in Jira and add it to the Backlog. If we come to the conclusion that one or more bugs are actually blocking the upcoming release, we’ll add those tickets to the current sprint and give them the highest priority. If no bugs are found that are blocking, we’ll proceed with the release process as normal and work on the reported issues in future sprints depending on their priority.
Participants
Name | Language(s) | User role(s) |
---|---|---|
E.g.: Denis Dovganyuk | E.g.: Spanish, English | E.g.: Farm Owner, Farm Worker |
English | Farm Manager | |
English | Extension Officer | |
Portuguese | Farm owner | |
English | Farm Manager | |
English | Farm Owner, Farm Worker | |
English, Portuguese | Farm owner | |
English | Farm Owner | |
English, Spanish | Farm Owner | |
Spanish |
Scope
This bug bash will be focused on testing Release 3.6.5. The purpose of the patch is to give our users the possibility to create a detailed soil amendment task. So that they can efficiently plan and document the soil treatment processes and ensure proper execution by the assigned staff.
What is more this release should fix some highly annoying issues that were in the APP for a while, for example the White Screen.
[Jira links]
-
LF-3884Getting issue details...
STATUS
-
LF-4213Getting issue details...
STATUS
-
LF-3946Getting issue details...
STATUS
-
LF-4029Getting issue details...
STATUS
-
LF-4225Getting issue details...
STATUS
The main focus of the session should then be on creating the Soil amendment task, creating other types of tasks, visiting the tasks page, deleting the tasks that were created, abandoning the tasks, completing tasks.
We need to be sure that once the user is trying to complete the task he should be able to finish it both by making changes during the completion or not.
For more details on some of the things to assert for, check out the User Stories below.
User Stories
As a (potential) LiteFarm user of any role:
Task Management Guidelines
Viewing and Adding Tasks
When accessing the tasks page, you should be able to view any previously created tasks and have the option to add a new task.
Adding New Tasks
Ensure that clicking the “+ Add a new task” button allows users to select any task type, including the Soil Amendment task.
Copy crop plan should successfully create copied tasks.
Filters Functionality
Verify that filters are working correctly by testing different filter options to ensure appropriate results. Be aware of known issues related to displaying tasks from previously deleted areas.
Account Permissions
Confirm that FO/FM/EO accounts can still manage custom tasks.
Ensure that all users can create any type of task, with the exception that FW accounts cannot create Planting and Transplanting tasks or manage custom tasks. Test by creating various task types, including Soil Amendment tasks.
Confirm that all users can create or edit products from within the product-containing flows (soil amendment, cleaning task, pest control tasks)
Task Creation Process
During task creation, verify that you can complete the task by assigning it to yourself and marking it as already completed.
Ensure the ability to cancel task creation by clicking the “Cancel” button. A confirmation pop-up should appear:
Clicking “No” allows you to continue the process.
Clicking “Yes” aborts the process, redirecting you back to the tasks page.
Ensure that you are still able to create any kind of a task for a wild crop. If you don’t know how to create a wild crop please ask Denis Dovganyuk
Post-Creation Verification
After creating a task, verify that the task information is correct in view-only mode by selecting the newly created task on the tasks page.
Ensure that any changes to a task (created, completed, abandoned, deleted) trigger a notification to the assignee.
Task Management
Confirm that you can still delete or abandon created tasks.
Verify that navigating back and forth during the task creation flow retains previously entered information.
Confirm that tasks are correctly abandoned or deleted when management plans are abandoned/deleted
Confirm the flow works equally well for built-in tasks and for custom tasks
Documentation of Added Products in Certification Export
Should record the quantity of soil amendment products in completed tasks added to organic locations for organic certification-pursuing farms in Record I - Crop Productions Aid of the certification document export
[Link to appropriate sections of the Sanity Script here if there are any] Sanity Script
Known Issues
We know that the user is able to create the 2 or more custom tasks type with an exact same name.
We know that once the user opens the LiteFarm Tab after he has closed his laptop he won’t be able to continue the creation process from the place he stopped.
We know that to apply the filter by date range, you need to change another filter setting as well
Session Details
Synchronous or asynchronous? | Asynchronous |
---|---|
When? | |
Where to test? |
Bug Reports
Reporter | Description | Details | Pre-existing? | Priority | Blocker? | Also seen by |
---|---|---|---|---|---|---|
E.g.: Denis Dovganyuk | E.g.: The SSO button is not clickable | E.g.: Repro steps
Expected Should navigate to the Google page to choose an account Actual Nothing happens Screenshots/videos | E.g.: No | E.g.: High | E.g.: Yes | E.g. Joyce Sato-Reinhold |
Deleting a soil amendment task throws an error page | Repro steps
Expected After deleting a task the user should be sent back to the Tasks page. Actual After deleting a task the app shows an error page. After refreshing, the actual updated Tasks page appears. Screenshots/videos
| No | Highest | YES! 😁 | Joyce Sato-Reinhold The error page doesn’t show to me. Instead, I couldn’t click on remove the task. Once I’ve finished the following recording, I was directed to the page with the task list, and the desired task was removed. Denis Dovganyuk | |
Soil amendment creation flow: MISSING translation | Repro steps
Expected “Selecione o(s) local(is) de adubação e correção do solo:” Actual MISSING | |||||
No inline error for character count for “Describe the purpose” | 2 issues:
Joyce Sato-Reinhold yes, I was able to get to the last page of the flow and clicking “Save” did nothing. | no | Medium | Yes | Denis Dovganyuk Was trying to reproduce this issue, and once the user tries to complete the creation of such task( Number of characters in the Describe purpose field is more than 255 ) | |
When assigning a task one option should have in brackets (me) to distinguish between similar names | Repro steps
Expected One entry should have (me), or some other distinguiser like email address, beside it. Actual Only important in areas where multiple people can have the same name (John Smith, John Smith Jr.) https://www.ancestry.com Screenshots/videos | yes | low | No | ||
Complete form breaks when not completed fast enough – allowing page to time out or something | Repro steps
Expected Should be able to complete form. without following error Actual Something goes wrong. But navigating away and back allows the form to complete.
| No | Highest | Yes | ||
Some typos and improvements for Spanish translation terms | I’m a bit finicky when reading Spanish, so feel free to ignore those suggestions that were already discussed in the past and you reached some consensus. Expected
Actual | No | Low | No | #4 also occurs in PT | |
Application rate = 0 | Repro steps
Expected Not sure, but maybe it could show up a message saying that the quantity to apply is too small for the area. Actual Application rate=0 Screenshots/videos | No | Lowest | No | ||
Translation error | Repro steps
Expected “Esta tarefa influenciará em algum plano?” Actual Question mark missing Screenshots/videos | Yes | Lowest | No | ||
Override wage for unassigned task | Repro steps
Expected Error message: Select an assignee to override their wage Actual It’s possible to override the assignee wage for a task that is unassigned Screenshots/videos | Yes | Medium | No | Denis Dovganyuk This exists for a long period of time, and in my understanding in this case you just change the wage for this task, and than once someone will grab this task, the Wage will be updated. Create the Jira ticket and tag Loic | |
Localization error in numerical representation in total area of application. | Current Behavior: The number is represented as 16.89. Expected Behavior: The number should be represented as 16,89 according to Portuguese (pt) localization standards. Steps to Reproduce:
Additional Notes: In Portuguese (pt) localization, a comma (,) is used as the decimal separator instead of a period (.). | No | Low | No | ||
Magnetic supplier input field | Repro steps
Expected the value is input and you remain in the selected input field Actual The value is input but then you are pulled to the supplier input field | No | Medium | Larisse Cavalcante | ||
Product details remain after removing product in complete flow | Repro steps
Expected Blank product form Actual Partially filled product form Screenshots/videos | Joyce Sato-Reinhold | ||||
Incorrect Coloration of Area When Selected and Deselected | Repro steps
Expected Behavior: The area should revert to its original color once it is deselected, clearly indicating that it is no longer selected. Actual Behavior: The area remains in a semi- highlighted state, giving the impression that it is still selected even though it has been deselected. | |||||
The placeholder text is displayed in the Fertilizer type input field when it is in read-only mode | Repro steps
Expected The input is blank. Actual The placeholder text “What type of fertiliser is it?“ is displayed. Screenshots/videos | No | ||||
The placeholder text is displayed in the Application method select field when it is in read-only mode | Repro steps
Expected The select is blank. Actual The placeholder text “Select…“ is displayed. Screenshots/videos | No | ||||
The user is able to type in the Furrow/Hole depth even when the view is read-only. | Repro steps
Expected The input is disabled and does not display the placeholder. Actual The placeholder text “At what depth was the amendment applied?“ is displayed, and the user can type in a number. Screenshots/videos | No | ||||
The text colour of the select element is darker than that of other inputs when it is disabled. Regression! | Repro steps
Expected The text colour is the same as that of other fields. Actual The text colour is darker. Screenshots/videos | No | ||||
In the exported RECORD I document, products from incomplete tasks are included. | Repro steps
Expected The products from the task that was just created are not included in the document. Actual The products from the task that was just created are included in the document. Screenshots/videos | Not sure… | ||||
400 error is displayed when the user tries to complete the creation of the Soil Amendment Task | Steps to reproduce:
Actual Result: | No | Medium | ? | ||
The information in the field Furrow / Hole depth won’t be updated during the task completion |
Actual Result Expected Result: The value in the “ Furrow / Hole depth” field should be up to date. | No | High | ? | ||
The white screen is displayed once the user tries to enter the already deleted task( Any type of task ) through the Notifications | Steps to reproduce:
Actual Result : See the screenshot
| No | High | ? | ||
No inline error for character count for “Product” field | Steps to reproduce:
Actual result : Once the user tries to make changes, even it won’t work the task won’t be created. Expected Result: In the video you may see the behavior in the “Soil Amendment “ | Yes | Sentry errors: | |||
Products that have been created are not sorted alphabetically | Steps to reproduce:
Actual Result: Products are not sorted alphabetically. Products are sorted alphabetically | Yes? | No | |||
The user is not able to complete the “Soil Amendment task” after making changes. | Steps to Reproduce:
| No | High | I think Yes? | ||
The changes in the field “ Tell us more about the application method” are not Saved after the user completes the “Soil Amendment “ task. | Steps to Reproduce:
Actual Result: The changes are not Saved. The information that was entered during the Task Creation will be displayed. Expected Result: | |||||
Mandatory fields are not clear from a user perspective | Steps to reproduce:
| High | No | |||
While adding new product details, the CTA “Save product” should be highlighted | Steps to reproduce:
| Not a bug | Medium | No | ||
The white screen is displayed once the user tries to enter the tabs from the place he left after he Restarts his Laptop(PC) | Steps to reproduce:
Actual Result: Expected Result: I expected to continue from the place I left. | No? | No? | |||
The information in the field won’t be updated once the user completes the Soil Amendment task and changes the Application method | Steps to reproduce :
Actual Result: The information in the Field “Application Method” remains the same as during the creation Expected Result: It was expected that the information would be updated | |||||
detail: quantity does not include litres or other measure of liquids | ||||||
doesn’t allow to “continue” while including tasks | ||||||
Form errors found on readonly page | Steps to reproduce : | No | ||||
Clicking on the “Product details” drop down button interupts the edit process of the product | Steps to reproduce:
Actual Result: | No | No | |||
There is no confirmation pop up message once the user clicks on the “Cancel” button during creation of the new product. | Steps to reproduce:
Actual Result: Once the user clicks on the “Cancel” message all the information is not saved. Expected Result: It was expected that the pop up message will be displayed, and in this case it will say something like: You are going to discard all the changes, are you sure? | No | No | |||
The translation for a buffer zone location is not working properly during creation the “Soil Amendment” task | Pre - execute: To reproduce this issue you will need to have at least one buffer zone on your farm Steps to reproduce:
| No | No | |||
(Usability Suggestion) | Steps to reproduce:
When the user wants to select more purposes he needs every time click on the drop down menu. Once the user clicks on the drop down menu he should be able to select 2 or more purposes by selecting them from the drop down menu. To close it the user should click outside the area or on the arrow. | No | No | |||
The user that is searching for a certifier is able to create or complete the “Soil amendment” task without filling the “Supplier” field, only if the Product was created before he applied for certification | Steps to reproduce:
Actual Result: The task is created, even without filling the Supplier field.
The creation should fail, the supplier field is required. | No | ? | No I think | ||
The product is not created(400error) if the supplier name is single "Space" or plural Spaces. | Steps to reproduce:
Actual Result: 400 error is displayed. Expected Result: | No | NO | |||
When the user clicks on the drop down menu of the field "Application rate" during the completion of the “Soil amendment task” the site layout jumps | Steps to reproduce:
Actual Result: Expected Result: The website Layout should not jump | No | No | |||
The text overlaps the borders of the "save" button on mobile device |
| |||||
For the mobile view only it might be too much to have name and NPK all in select option. And there should probably be some padding between the end of product name and "N". | ||||||
If the user changes the Application method before “saving the product details” they will be auto discarded. | Steps to reproduce:
Expected Result: It was expected that once the user changes the Application method, the information in the Tell us about your product section will not be both Saved or Discarded. Just remain in the same position. | No | No |