Bugs found in Timeular: Productivity & Time for Android
Timeular is designed to make time tracking at the workplace both effortless and accurate, offering an innovative solution to productivity management. The platform’s feature set includes intuitive data visualization, detailed reports, and manual editing of time entries, catering to the individual needs of each user.
In addition, Timeular offers a range of advanced features for Pro users, such as integrations with JIRA, Harvest, Toggl, and Zapier, along with real-time synchronization across multiple platforms.
As part of our Bug Crawl initiative, we tested Timeular’s Android app and discovered several issues that could affect its performance and user experience. We invite you to read on for a detailed account of our findings.
App performance degrades when selecting year 1900 as project start date
Critical
- An account has been created, and a template is connected during the creation process.
- The user is logged into the account.
- Navigate to the ‘Calendar’ tab via the bottom menu.
- Select a date for the time entry at the top (e.g., August 6).
- Click the ‘+’ icon next to the 09:00 slot.
- Tap on the data entry field in the ‘Start’ block.
- Tap on the year in the date picker popup.
- Scroll back to the year 1900.
- Select the year 1900.
- Click ‘Ok’.
- Tap the checkmark to save the entry as the project start date.
- Attempt to use the app as you normally would (navigate through menus, etc.).
- Close and reopen the app.
Xiaomi Mi 10 – Android 13 TKQ1.221114.001, MIUI Global 14.0.1
Samsung Galaxy S8 SM-G950F – Android 9 G950FXXUCUD1
The app’s performance becomes significantly slow after selecting 1900 as the project start date.
The app should restrict or validate the selection of unrealistic or irrelevant years for project start dates.
Days of week disappear on calendar page
Critical
- An account has been created, and a template is connected during the creation process.
- The user is logged into the account.
- Navigate to the ‘Calendar’ tab via the bottom menu.
- Select a date for the time entry at the top (e.g., August 6).
- Click the ‘+’ icon next to the 09:00 slot.
- Tap on the data entry field in the ‘Start’ block.
- Tap on the year in the date picker popup.
- Scroll back to the year 1980.
- Select the year 1900 by mistake.
- Click ‘Ok’.
- Tap the checkmark to save the entry.
- Drag the week display field to either side to shift to the previous or next week.
Xiaomi Mi 10 – Android 13 TKQ1.221114.001, MIUI Global 14.0.1
Samsung Galaxy S8 SM-G950F – Android 9 G950FXXUCUD1
The names of the days of the week are no longer visible on the calendar page.
The app should properly maintain the display of days in the calendar, irrespective of any time entries, and potentially validate or restrict the input of unrealistic or irrelevant years.
Clicking 'Edit' button opens login webpage instead of allowing account edit
Major
- Open the app.
- Click the ‘Create a free account’ button.
- Fill in the ‘Email’ and ‘Password’ fields.
- Click on the ‘Create a new account’ button.
- Choose the ‘With my team’ option by clicking the button.
- Click the ‘Skip’ button.
- Click the ‘Get Started’ button.
- In the bottom menu, navigate to ‘Settings’.
- Click the ‘Account’ button.
- Click the ‘Edit’ button.
Xiaomi Mi 10 – Android 13 TKQ1.221114.001, MIUI Global 14.0.1
Samsung Galaxy S8 SM-G950F – Android 9 G950FXXUCUD1
Clicking the ‘Edit’ button redirects the user to a login web page instead of allowing account editing.
Clicking the ‘Edit’ button should enable the user to modify the ‘First Name’ and ‘Last Name’ fields within the app itself.
'By Myself' plan selection shows 'Team' plan in profile
Major
- Open the app.
- Click the ‘Create a free account’ button.
- Fill in the ‘Email’ and ‘Password’ fields.
- Click the ‘Create a new account’ button.
- Click the ‘With my team’ button.
- Click the ‘Skip’ button.
- Click the ‘Get Started’ button.
- In the bottom menu, navigate to ‘Settings’.
- Click the ‘Account’ button.
Xiaomi Mi 10 – Android 13 TKQ1.221114.001, MIUI Global 14.0.1
Samsung Galaxy S8 SM-G950F – Android 9 G950FXXUCUD1
Choosing the ‘By Myself’ plan results in the ‘Team’ plan being displayed in the user profile.
The profile should accurately reflect the plan type that the user selected during the account registration process.
Notifications persist despite being disabled in app settings
Major
- Grant the app permission to send notifications.
- Log in to the account.
- In the bottom menu, click on the ‘Settings’ button.
- Click on the ‘App Settings’ button.
- Toggle the switch to the active position.
- Verify that notifications begin to appear in the phone’s notification panel.
- Close the app.
- Reopen the app.
- In the bottom menu, click on the ‘Settings’ button.
- Click on the ‘App Settings’ button.
- Toggle the switch to the deactivated position.
Xiaomi Mi 10 – Android 13 TKQ1.221114.001, MIUI Global 14.0.1
Samsung Galaxy S8 SM-G950F – Android 9 G950FXXUCUD1
Notifications continue to appear even after being disabled in the app settings.
Once notifications are disabled in the app settings, they should no longer appear in the phone’s notification panel.
Logged time slots display smaller than empty time slots
Minor
- Create an account and, during creation, connect any template.
- Log in to the account.
- In the bottom menu, click on the ‘Calendar’ button.
- From the top menu, select a date to log time (e.g., August 6).
- Click on the ‘+’ symbol next to the 09:00 slot.
- Click on the time entry field for the ‘End’ block.
- Select the time 23:59.
- Click on the checkmark to save.
- Compare the space occupied by time slots from 00:00 – 09:00 to that from 09:00 – 23:59.
Xiaomi Mi 10 – Android 13 TKQ1.221114.001, MIUI Global 14.0.1
Samsung Galaxy S8 SM-G950F – Android 9 G950FXXUCUD1
Logged time slots take up less visual space than empty time slots.
Time slots with logged time should occupy the same amount of visual space as empty time slots.
Clicking switch in tracker tab opens activity editing
Minor
- Create an account and, during the creation process, connect any template.
- Log in to the account.
- In the bottom menu, click on the ‘Tracker’ button.
- Click the switch corresponding to any activity.
Xiaomi Mi 10 – Android 13 TKQ1.221114.001, MIUI Global 14.0.1
Samsung Galaxy S8 SM-G950F – Android 9 G950FXXUCUD1
Clicking the switch in the tracker tab opens the activity editing interface.
Clicking the switch should toggle it to the active or inactive position.
Mismatch between scheduled and actual time on calendar
Minor
- Create an account and, during account creation, connect any template.
- Log in to the account.
- In the bottom menu, click on the ‘Calendar’ button.
- From the top menu, select a date for time entry (e.g., August 8).
- Click on the ‘+’ symbol for the 09:00 slot.
- Click on the time entry field under ‘Start’.
- Select the time 9:22.
- Click on the time entry field under ‘End’.
- Select the time 10:27.
- Click on the checkmark to save.
- Review the allocated time slots on the schedule.
Samsung Galaxy S8 SM-G950F – Android 9 G950FXXUCUD1
The time indicated on the schedule doesn’t match the selected time. Specifically, additional time signatures like 9:22 and 9:27 appear, and for the time range 9:00 to 9:22, the schedule displays “22 min 8s – nothing tracked”
For the time interval from 9:22 to 10:27, additional time signatures 9:22 and 10:27 should appear on the schedule.
For the time interval from 9:00 to 9:22, the schedule should display “22 min – nothing tracked.”
For the time interval from 10:27 to 11:00, the schedule should display “33 min – nothing tracked”
No year indicated for period-based statistics
Minor
Log in to the account.
- In the bottom menu, click on the ‘Insights’ button.
- Click on the calendar icon located at the top.
- Use the left arrow to navigate to October 2022 and select October 4.
- Use the right arrow to navigate to February 2023 and select February 9.
Xiaomi Mi 10 – Android 13 TKQ1.221114.001, MIUI Global 14.0.1
Samsung Galaxy S8 SM-G950F – Android 9 G950FXXUCUD1
When viewing statistics for a specified time range, there is no indication of the years for which the data was collected.
When the user selects a year different from the current year for data collection, that year should be clearly displayed alongside the dates.
Login screen unscrollable, 'Create a Free Account' button cut off
Minor
- Open the app for the first time.
- Grant permission for notifications when prompted.
Samsung Galaxy S8 SM-G950F – Android 9 G950FXXUCUD1
The login screen is not scrollable, causing the ‘Create a Free Account’ button to be cut off at the bottom of the screen.
Users should be able to scroll through the login screen to fully view and access the ‘Create a Free Account’ button.
Note field unscrollable during time tracking creation
Trivial
- Create an account and connect any template during the creation.
- Log in to the account.
- Click on ‘Calendar’ in the bottom menu.
- Select a date (August 6) from the top menu.
- Click on the ‘+’ next to the 09:00 time slot.
- Click on the ‘Note’ field.
- Enter 2000 characters into the field.
- Attempt to scroll through the entered text.
Samsung Galaxy S8 SM-G950F – Android 9 G950FXXUCUD1
The user is unable to scroll and fully view the ‘Note’ field when creating a time tracking entry.
Users should be able to scroll and fully view the content in the ‘Note’ field when creating a time tracking entry.
'Edit' button cut off at bottom
Trivial
- Open the app.
- Click on ‘Create a free account’.
- Fill in the ‘Email’ and ‘Password’ fields.
- Click on ‘Create a new account’.
- Click on ‘With my team’.
- Click on ‘Skip’.
- Click on ‘Get Started’.
- In the bottom menu, click on ‘Settings’.
- Click on ‘Account’.
Xiaomi Mi 10 – Android 13 TKQ1.221114.001, MIUI Global 14.0.1
The ‘Edit’ button is partially visible, being cut off at the bottom.
The ‘Edit’ button should be fully visible and not cut off at the bottom.
I've taken a close look at the Timeular app and found several issues, from display problems to unexpected behaviors. To create a more polished application, I suggest focusing not just on functional testing but also extending the scope to include usability and performance testing.