- What is a bug report? The ins and outs of bug reports.
- We always talk about bug reports…
- Example of bug reports from Google and Apple
- Android bug report
- iOS bug report
- So… what’s a bug report?
- What is a bug?
- But we need a bug report definition!
- Good vs. bad bug report
- But.. how to solve a bug report?
- What is a bug reporting system?
- Recap
- What is bug report in android
- Original topic:
- what is a bug report shortcut in android 10
- Debugging in Android Studio
- Tips and tricks for squashing bugs faster on Android
- Log filtering and folding
- Attaching the debugger
- Moving breakpoints
- Conditional breakpoints
- Dependent breakpoints
What is a bug report? The ins and outs of bug reports.
If you’re new to bug tracking, issue management or web development in general, you might wonder what a bug report is.
In this blog post, we will be answering this question from different viewpoints. And trust me, it’s not going to be boring.
We always talk about bug reports…
…but never explain what they are or why they’re crucial for closing customer feedback loops.
I just noticed that we at Usersnap haven’t answered this core and essential question.
We’ve more than 1.000 sites indexed by Google, we’ve published 283 blog posts on our blog to date, we have written multiple guest posts on other sites, and we gave some talks on the do’s and don’ts of bug tracking.
However, we haven’t answered this core question not even once.
We did cover a lot of topics in the area of bug reporting.
For example, I’ve shown you 6 easy bug reporting tricks, answered the 4 W’s of bug reporting and gave you some insights on bad bug reports. I’ve even shown you how to set up a bug-free web development environment.
Nevertheless, I haven’t answered the simple – yet important – question.
But today, we’re finally tackling this issue.
Example of bug reports from Google and Apple
In the past, Google’s and Apple’s approach to bug reporting was almost non-existent. Eddy Cue and Craig Federighi admitted in The Talk Show by John Gruber (highly recommended podcast episode!) that their bug reporting workflow with external app developers is not really great. Often, the Apple bug reporting workflow was even critiqued by Apple developers. So, even Apple’s management team admits that their workflow is not great. It’s a bit funny that a company of that size had no proper bug reporting workflow in place.
This has since changed though. Take a look at how Android and iOS approach the issue.
Android bug report
What is a bug report on Android? Android offers quick, simple bug reporting directly from (test) user to developer. The purpose is to get information such as “device logs, stack traces, and other diagnostic information to help you find and fix bugs in your app.” With this function, you can capture bugs directly from devices, emulators, or adb’s. Their bug reporting mechanism offers inspection via ZIP file, while end users can use Google Play’s and Firebase’s crash reporting, available for at least 6 months from the moment the report is filed.
iOS bug report
What is a bug report on Apple? Apple offers a feedback assistant for developers so they can receive bug reports. Their app allows filing bugs across and for connect devices, and includes screenshots, profiles, and the logs required to resolve issues. Finally, the feedback can be shared across teams, so everyone is on the same page.
So… what’s a bug report?
In order to answer this question, we need to understand the following concept of bugs, bug reports and bug reporting software.
What is a bug?
In the context of software development, engineering or web development, a bug is not despite its name a little animal, but to something else.
According to Wikipedia a software bug (or just a bug) can be defined as:
A software bug is an error, flaw, failure, or fault in a computer program or system that causes it to produce an incorrect or unexpected result or to behave in unintended ways.
So in short, this means:
A software bug is an error, flaw, failure, or fault that produces an incorrect or unexpected result.
Basically, a software bug is something which is not working as designed.
Why is called a bug then? The origin of a bug.
You might wonder, why a bug is called a bug? It’s a great question, because the term bug, describing a software error or failure goes way back to 1945. In late 1945, at the University of Harvard, a technical team found something unusual between points in Relay70. They found a real dead bug (the animal) which caused an error.
As stated in the bug log, it’s the “first actual case of bug being found“.
So, in theory, a bug is something not working as designed.
But what if something is not designed as it should be? Is it a bug then? As you can see, this question alone leaves a lot of room for interpretation.
No matter if you’re a developer, designer or user of the software. Chances are high that you’ve stumbled upon a bug in the past, or maybe you even caused a bug yourself.
But we need a bug report definition!
So here’s the core question: What is a bug report?
If bugs occur (which they certainly do), the person finding the bug should be able to report (document & send) the bug to people in charge of fixing that error or failure.
According to Yegor, a bug report “should explain how exactly the product is broken.”
He continues that the report should follow this simple formula:
“This is what we have, this is what we should have instead, so fix it.”
This sounds easy, right? In practice though, a bug report (and what documentation is included) isn’t that clear.
Imagine you encountered a bug and wanted to send in a report. What information would you include? I guess everyone would answer that differently.
In the past, bug reports were lengthy forms including various fields and data requests. What’s the priority of the error? What’s the problem description? What are the components? Which browser version are you using? And so on…
Good vs. bad bug report
So you might wonder, what’s the difference between a good bug report and a bad one. And why are there so many bad ones out there?
I collected some statements about this issue in order to distinguish between the two of them:
A good bug report:
- contains the information needed to reproduce and fix problems
- is an efficient form of communication for both bug reporter and bug receiver
- can be and is resolved as fast as possible
- is sent to the person in charge
- is filed in a defined way
- establishes a common ground for collaboration
A bad bug report:
- does not contain the information needed to reproduce and fix problems
- is a lengthy, inefficient form of communication for everyone involved
- never gets resolved
- contains no specific information
- gets filed in any medium available, but not in the defined way (hint: Twitter isn’t a good way to file a bug report ;-))
- doesn’t enable team or team/customer collaboration
So, how would I sum up my answer to the question: “What is a bug report?”
A bug report is something that stores all information needed to document, report and fix problems occurred in software or on a website. And in the best case scenario: This is done in the most efficient manner possible.
I’ve created this bug reporting checklist in order to get a feeling on what questions a bug report must answer.
But.. how to solve a bug report?
Once you’ve received your bug report, it’s now time to inspect the bug, get the team involved, assign responsibilities for the bug, and resolve it. In particular, you can find some of the necessary skills to resolve bugs, but the key that is often missed is closing the feedback loop. Once the bug has been resolved, it’s your company’s job to get back to the customer and say “we heard you, here is our solution to your challenge!” It doesn’t necessarily have to be with an additional NPS question, but at the very least a recognition of the customer’s issue goes a long way to keeping them happy and engaged.
What is a bug reporting system?
There are a lot of different expressions used to describe and name a bug reporting system. So here are just a few names:
- Bug Reporting System
- Bug Tracking Software
- Issue Tracking Software
- Issue Management Software
- Defect Tracking System
No matter which name you prefer, a bug reporting system is an application “that keeps track of reported software bugs”.
Therefore, a bug reporting software allows you to report, document, store, manage, assign, close & archive the reports. Here’s an example of how a bug report would look like in a bug reporting software:
Some top bug reporting tools for you to check out:
Recap
All in all, I’ve shown you the basics of bugs, bug reports and bug reporting systems. There are a lot of further do’s and don’ts when it comes to the bug reporting workflow, from bugs to no bugs.
This article is brought to you by Usersnap – a visual customer feedback & bug tracking tool, used by software companies like Facebook and Microsoft.
Источник
What is bug report in android
- India
- :
- Community
- :
- Community Guidelines
- :
- what is a bug report shortcut in android 10
Original topic:
what is a bug report shortcut in android 10
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
12-16-2019 12:15 PM in
- Mark as New
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
12-16-2019 05:42 PM in
Bro, bug report is one of the method to make developers aware about their products(apps/software) that part of their codes are not behaving as expected or designed. So, with help of this option you can collect a bug report and sent it directly to that developer..that’s the role of bug reprt shortcut..
Users are asked to take a bug report especially when phone freezes, app crashes, phone restarting problem and so on..
Kabhi kabhi 3rd party apps k software k install k waqt bhi problem aati hai then you can take a bug report and sent it directly to the developer of that app..
NOTE: TILL DATE I HAVEN’T USED THIS OPTION..SO DON’T EXPECT ANY SCREENSHOT OR FURTHER EXPLANATIONS 🤪 ..HAATH JODKAR WINAMRA NIVEDAN HAI AAPSE..
Источник
Debugging in Android Studio
Tips and tricks for squashing bugs faster on Android
As developers, we all know that there are days we spend more time in the debugger than in the code editor. With this in mind, I recently took the opportunity to see what tricks and tips members of our Android Studio team had for speeding up debugging. I’ve gathered together some of the best that I think will save you time and be easy to incorporate into your debugging flow.
While your app is likely much different than the hypothetical sample game app we’re using here, these debugging tips will apply to any app.
If you’d rather watch a live demo, you can find a video version of this article on YouTube.
Log filtering and folding
Let me start with a tip for that debugging classic: printf statements. Take a game that logs its frames-per-second rate every second and the user’s final score at the end of each game. In the Logcat window this gives:
There’s quite a lot of information in the output that you might not care about, such as the date and thread IDs. You can easily configure what is displayed. From the logcat toolbar, click the Settings icon and, in the Configure Logcat Header dialog, deselect information you no longer want to see.
You now get much cleaner, more relevant log output, like this:
However, this still leaves a lot of clutter obscuring the high score messages. To focus on these messages use the logcat search. Enter part of the debug message into Search to filter the logcat window.
If this is a search you use regularly, you can save it by adding a custom filter from Edit Filter Configuration.
Then, add the details of your filter.
Another way to reduce logging clutter is to use the fold lines feature, which groups and collapses lines that are similar. Select some text from a log Item, right-click, and select Fold Lines Like This.
When the Console dialog opens, click OK and similar messages containing the selected text are collapsed.
If you need to look at this information later, you can click on the lines to expand them. There are also gutter handles that enable you to expand and collapse folded lines.
Attaching the debugger
You usually start a debugging session using the Debug button or menu option. However, if you started an app by running it, you can attach a debugger to the running app without needing to restart it. To do this, click Attach Debugger to Android Process.
In the Choose Process dialog, highlight the process you want to attach the debugger to and click OK. Now, you’ll start hitting your breakpoints as you normally would in a debug session.
Moving breakpoints
If you find that you have set a breakpoint at an inappropriate place, rather than clearing and resetting the breakpoint, you can drag it to the line that you care about. This is useful because it preserves the settings on the breakpoint, including the things I’m going to mention next.
Conditional breakpoints
You may need to chase down a bug that relates to a particular type of event in your app or game. For example, in a game you are developing, you may want to stop when a player collides with the object that uses up their last bit of health. You set a breakpoint on collisions but now the code stops on every collision. To avoid this you can set a conditional breakpoint.
To set a conditional breakpoint, right-click on a breakpoint and add a condition. The condition can be any code expression that equates to a Boolean. When the code hits the line, if the expression evaluates to true the breakpoint activates.
Here, in logic when the player is just about to collide with an object, setting a condition of player.health == 1 enables you to catch the last time the player collides with the object before their health drops to 0.
Dependent breakpoints
It’s not unusual for an app to have code that can be triggered from many different paths. If you have a bug that only happens along one particular path, setting a breakpoint in the code can result in a lot of unnecessary breaks. To get around this, you can use dependent breakpoints, which trigger only after another specified breakpoint was hit. For example, you can create a breakpoint that is triggered only in the path you care about and then use it as a dependency, so your other breakpoint only triggers in the path of interest.
To set a dependent breakpoint, right-click on the second breakpoint and open the More menu. In Disable until breakpoint is hit, choose the breakpoint you want to depend on.
Источник