Чтобы упростить работу тестировщикам и программистам, был разработан и стандартизирован отчет о дефектах. С одной стороны его задача — быть простым и понятным, а с другой стороны — быть эффективным.
Важно, чтобы программист при изучении данного отчета мог с легкостью воспроизвести описанный баг и понять ход мыслей тестировщика.
Шаблон отчета о дефекте, который отвечает запросам тестировщика и программиста, выглядит следующим образом:
1. Заголовок ошибки
2. Описание ошибки
3. Начальные условия
4. Шаги воспроизведения
5. Ожидаемый результат
6. Фактический результат
7. Вложения
В зависимости от ситуации или компании, в которой вы работаете, шаблон может изменяться и отклоняться в разные стороны. Например, в некоторых случаях «Начальные условия» не пишут. Если дефект связан с графикой, то рекомендуется добавить скриншот. Также вводятся дополнительные атрибуты для указания Платформы или Барузера и т.д.
Теперь рассмотрим структуру шаблона подробно на конкретном примере. Допустим, мы тестируем сайт. На сайт есть раздел Контакты. В этом разделе находится Форма обратной связи.
После заполнения всех полей мы нажимаем на кнопку «Отправить сообщение» и ничего не происходит.
Данный баг мы и будем описывать по шаблону.
Заголовок ошибки (Title)
По сути это краткое описание найденной ошибки. Его задача — в понятной и простой форме передать смысл найденной ошибки.
Наиболее эффективным описанием считается описание, которое отвечает на три вопроса:
— Что произошло?
— Где появилась ошибка?
— Когда или при каких условиях найден дефект?
Также важно, чтобы заголовок был именно кратким, т.е. он должен содержать максимально полную и, в то же время, краткую информацию об ошибке.
Заголовок ошибки — это первое, что видит разработчик, получая отчет. В некоторых случаях, при правильном оформлении, этого бывает достаточно, чтобы понять в чем заключается дефект и как его исправить.
Пример плохого заголовка: Ошибка, когда нажимаю «Отправить сообщение».
Пример хорошего заголовка: При нажатии на кнопку «Отправить сообщение» в форме обратной связи сообщение не отправляется.
Описание ошибки (Summary)
Попробуйте в паре предложений описать суть дефекта, а также когда он появляется и в чем выражен.
Правильное и качественное описание также позволяет сразу понять проблему и приступить к ее исправлению.
Пример плохого описания: Жму «Отправить сообщение», а в ответ тишина.
Пример хорошего описания: При нажатии на кнопку «Отправить сообщение» в заполненной форме обратной связи ничего не происходит. Аналогичное поведение, если форма не заполнена.
Начальные условия (Precondition)
В случае, если есть специфичные действия или шаги воспроизведения достаточно объемные, то указываются начальные условия. Например:
1. Быть авторизованным в системе.
2. Находиться на главной странице.
Пример плохих начальных условий: Находиться на сайте.
Пример хороших начальных условий:
1. Страница «Контакты»,
2. Платформа и устройство не имеют значения.
Шаги воспроизведения (Steps To Reproduce)
Шаги, при которых повторяется найденная ошибка. Например:
1. Нажать на кнопку “Войти”
2. Ввести “Имя пользователя” и “Пароль”
3. Нажать на кнопку “Ок”
Убедитесь, что у вас нет лишних или ненужных шагов воспроизведения, которые будут отвлекать и тратить время команды.
Пример плохих шагов: 1. Зайти на сайт, 2. Зайти на страницу обратной связи, 3. Поставить курсор в поле Имя, 4. Ввести имя, 5. Поставить курсор в поле e-mail, 6. Ввести действующий e-mail, 7. Навести курсор на Отправить сообщение, 8. Щелкнуть по Отправить сообщение.
Пример хороших шагов:
1. Заполнить поля формы обратной связи,
2. Нажать на копку «Отправить сообщение»
Ожидаемый результат (Expected Result)
Результат, который должен быть при выполнении шагов. В идеале, его можно найти в ТЗ (техническом задании). На практике, ТЗ бывает не всегда и ожидаемый результат определяется либо здравым смыслом, либо по аналогии.
Пример плохого ожидаемого результата: Что-то должно произойти.
Пример хорошего ожидаемого результата: Сообщение отправляется либо система сообщает о невозможности его отправки.
Фактический результат (Actual Result)
Указывается результат, который получил тестировщик при выполнении описанных шагов. Также может отвечать на три вопроса “Что? Где? Когда?”.
Пример плохого фактического результата: Ничего нет.
Пример хорошего фактического результата: Сообщение не отправляется, не появляется ошибка об отправке. После нажатия на кнопку ничего не происходит.
Вложения (Attachments)
При необходимости тестировщики прикладывают скриншоты или видео воспроизведения ошибки. Также могут прикладывать логи выполнения программы.При соблюдении правил оформления баг-репортов, ваша работа станет более эффективной.
Below, you’ll find the best and most comprehensive free bug tracking templates, including forms for quality assurance (QA) personnel, customer service representatives (CSRs), subject matter experts (SMEs), developers, and even clients.
Included on this page, you’ll find a variety of templates, including a simple bug report template and bug report forms, as well as steps to write an effective bug report.
Simple Bug Report Template
Use this simple bug report template to standardize your company’s software bug reporting process. Enter a unique bug ID, an overview of the issue (along with a screenshot and source URL, if applicable), the software environment, the steps to reproduce the bug, the expected and actual results, and any additional details (such as the bug’s severity, who the bug is assigned to, and the bug’s priority). Download this template for a one-off, unique instance, or save it as part of a larger document for QA and development to track several instances of bugs — and keep tabs on the process, and progress, of fixing them.
This reusable template is available in Excel as an individual bug template and also as a Google Sheets template that you can easily save to your Google Drive account.
Download Simple Bug Report Template
Excel | Google Sheets | Smartsheet
Additional Bug Report Templates
Bug Report Form
This bug report form is a perfect fit for companies that want a simple form on which to enter all issues related to a bug. Simply enter all the details regarding the bug’s discovery, include the details of the bug’s frequency and priority, and upload any supporting attachments that document the bug. Once you’ve filled out the form, developers will be able to review the bug, prioritize it, and quickly get it fixed.
Fillable fields include the following:
-
Issue/Title: The name for the bug
-
Action Performed: The action that resulted in the bug
-
Expected Result: How the software should have performed
-
Actual Result: How the software actually performed
-
Error Message: What error message appeared (if applicable)
Additionally, dropdown lists allow you to specify the software build in which the bug was encountered.
This easy-to-use form also allows you to select the following radio button options so that developers can quickly determine the frequency and priority of the bug:
-
Frequency of the bug: Every time, hardly ever, occasionally, once
-
Priority of the bug: Low, medium, high, critical
Additionally, an Attachments section allows you to choose files to upload in order to provide screenshots to document the bug.
This form is available in Excel and Word as individual annual templates for comparison, and as a Google Sheets template that you can easily save to your Google Drive account.
Download Bug Report Form
Excel | Word | PDF | Google Sheets | Google Docs | Smartsheet
Software Bug Report Form
This software-specific bug report form allows you to enter all the information relevant to a bug found during testing or when using a software application. Once you’ve entered all the information, your company’s software engineers can begin to remedy the issue. Unique in its inclusion of all the major fields you’ll need to file a software bug, this simple form gives you the ability to detail the following information, so software engineers can triage the issue and fix it as soon as possible:
-
Severity: Always occurs, occurs occasionally, occurred once
-
Priority: High, medium, low
-
Summary: An explanation of the bug and when it occurs
-
Description: Additional details that describe the bug
-
Upload File: A screenshot or video that illustrates the bug’s behavior
-
View Status: Reported, in progress, to be validated, fixed
This form is available in Excel and Word as individual annual templates for comparison, and as a Google Sheets template that you can easily save to your Google Drive account.
Download Software Bug Report Form
Excel | Word | PDF | Google Sheets | Google Docs | Smartsheet
Software Defect Report Template
This bug report is designed for companies who want to provide their customer service representatives and quality assurance employees with a tool to file software bugs with comprehensive details. This way, developers can quickly review and fix those bugs. This template provides you with column details for the following:
-
ID: Enter a unique number for the bug (for easy reference).
-
Title: Enter a clear title for the bug, so anyone, regardless of role, can understand it (e.g., “Invoice Will Not Print for User”).
-
Description/Summary: In addition to a clear title, add an easy-to-understand description of the bug (e.g., “The invoice will not print for the user when they have the invoice opened and click the Print button”).
-
Environment: Include any environment details (such as browser, operating system [OS], URL, software version, etc.), so anyone reviewing the bug can easily glean the environmental factors, and so development can replicate the bug and fix it.
-
Screenshot: Add a screenshot of the bug, if applicable. That way, whatever the software malfunction, the issue will be clear to anyone reviewing the report.
-
Steps to Reproduce: Include the exact steps you take to reproduce the bug occurrence (e.g., “Customer running Windows 10 and Internet Explorer 8 cannot print an invoice”).
-
Status: Specify the status of the bug using the Status dropdown list (e.g., new, open, resolved, accepted, in progress, to be validated, done, etc.).
-
Priority: Select a priority for the bug using the Priority dropdown list (e.g., critical, high, medium, low, etc.).
-
Resolution: Select the bug’s status using the Resolution dropdown list (e.g., unresolved, fixed, etc.).
-
Assignee: Enter the name of the employee who is responsible for ensuring that the bug is fixed.
-
Reporter: Enter the name of the person who reported the bug.
-
Created: Enter the date that the bug was reported.
This reusable template is available in Excel as an individual bug template and as a Google Sheets template that you can easily save to your Google Drive account.
Download Software Defect Report Template
Excel | Google Sheets
Bug Sheet Template
Designed with comprehensiveness in mind, this bug sheet template allows you to factor in all the pertinent details relating to a software bug. Armed with this template, your developers will have all the information they need to fix the bug. You can easily fill in the following details related to a specific bug ID: the name of the tester; the date the bug was submitted; the title of the bug; a description of the bug; the URL where the bug was encountered (if applicable); a summary of the issue; a screenshot showing the bug’s behavior; the platform on which the bug was encountered; the browser used (if an online bug); the name of the team member to whom the bug is assigned; the date and time during which it was assigned, its priority compared to other bugs; and its severity.
This form is available in Excel and Word as individual annual templates for comparison. It is also available as a fillable PDF and as a Google Sheets template that you can easily save to your Google Drive account.
Download Bug Sheet Template
Excel | Word | PDF | Google Sheets | Google Docs
Bug Summary Report Template
Use this simple, streamlined bug summary report template to quickly summarize the software bugs you’ve encountered. Now, your developers will be able to quickly assess what the bug entails and begin fixing it. Here are the fillable details:
-
Defect ID: Enter a unique number for the bug for tracking purposes.
-
Module Name: Enter the name of the module in which the bug was discovered.
-
Release Version: Enter the version of the software in which the bug was detected.
-
Summary: Provide a high-level summary of the bug.
-
Description: Write a comprehensive description of the bug, so developers can easily understand why the software is not working as it should.
-
Steps to Reproduce: Provide step-by-step details of what actions you took when you encountered the bug, so development can reproduce the bug and fix it.
-
Expected Result: Enter the results you expected when you followed the steps.
-
Actual Result: Enter the actual results that occurred when you followed the steps.
-
Defect Severity: Enter the severity of the bug (low, medium, high, critical).
-
Defect Priority: Enter the priority of the bug (low, medium, high, critical).
-
Assigned to: Enter the name of the person to whom the bug is assigned.
-
Status: Provide a status for the bug (open, resolved, closed).
Download Bug Summary Report Template
Excel | Word | PDF | Google Sheets | Google Docs
QA Bug Report Template
Use this comprehensive bug report template designed specifically for the people who need it most: your quality assurance team. QA employees test software to ensure that it works the way it was designed; they also test it to take note of what doesn’t work. This template tracks the bugs you uncover to provide you with a ready-made, out-of-the-box QA bug report, rather than a one-off bug filing. This template gives QA personnel everything they need, including the following:
-
Defect ID: A unique ID to reference the bug
-
Author: The person writing the bug report
-
Release Build #: The release build number of the software in which the bug was detected
-
Open Date: The date the bug was filed
-
Close Date: The date the bug was fixed
-
Problem Area: A brief description of what area the bug affects
-
Problem Title: A title describing the bug
-
Problem Description: A detailed description of the bug
-
Current Environment: The environment in which the bug was discovered
-
Defect Type: What kind of bug is it (e.g., incorrect UI, unresponsive field, error message, incorrect results, etc.)?
-
Who Detected: Who first encountered the bug?
-
How Detected: How was the bug detected (through testing, from a customer’s use of the product, etc.)?
-
Assigned to: Who is assigned to ensure the bug gets fixed?
-
Priority: What is the priority of getting the bug fixed, as compared to other concerns?
-
Severity: What is the severity of the bug? How serious is it?
-
Status: What is the bug’s status (ready for testing, closed, etc.)?
-
Status Description: Describe the status of the bug (e.g., “Bug is ready for development confirmation,” etc.).
-
Fixed by: Who fixed the bug?
-
Planned Fix Build #: In what software build will the bug fix be released?
Download QA Bug Report Template
Excel | Word | PDF | Google Sheets | Google Docs
Sample Bug Report Template
Track bugs’ impact on your business and software performance with this easily fillable bug report template. Columns provide you with details regarding bugs’ severity, business impact, functionality, performance, stability, and graphics/UX. Determine the severity of any particular bug (showstopper, major, minor, or low). Provide others with details of bugs’ impact on business (e.g., related to deliverables, revenue, customer satisfaction, etc.). Detail the expected functionality (as opposed to the actual functionality) that resulted in a bug. Then, document other details in order to provide members of product, QA, development, and customer service with the behavior, status, and expected time frame for fixing any particular bug.
Download Sample Bug Report Template
Excel | Word | PDF | Google Sheets | Google Docs
How to Write a Bug Report: Best Practices
Next to developing cutting-edge applications, nothing is more important to a software company than fixing a current version’s defects. Without tracking these bugs, applications don’t work as designed, customers aren’t satisfied, and revenue is lost.
But, how do you track these defects? Your organization needs ensure that you track bugs correctly, document them comprehensively, and assign them to the right individuals so that developers can fix them. That’s why you need to choose just the right bug tracking template for you — to ensure that you’re delivering quality products on time and making your end users happy.
Whether a bug is found by a customer service representative, a member of QA, a developer, or even a client, you need an easy way to provide enough detail, so that you can queue up and correct the bug.
Choose a free template in one of the following formats to immediately get started filing the bugs you find:
-
Microsoft Excel
-
Microsoft Word
-
Google Docs
-
Google Sheets
-
Acrobat PDF
Once you have downloaded a bug tracking template in your preferred format, fill in the following fields:
-
Defect ID: Enter the unique ID so that the bug can be referenced.
-
Author: Specify who wrote the bug report.
-
Release Build #: Enter the release build (or version of the software) in which the bug was detected.
-
Date: Enter the date that the bug was found/filed.
-
Close Date: Enter the date that the bug was fixed.
-
Title: Enter a clear, brief title describing the bug.
-
Description: Enter a detailed description of the bug.
-
Environment: Specify the environment in which the bug was discovered.
-
Who Detected: Enter who first encountered the bug.
-
How Detected: Describe how the bug was first detected.
-
Assigned to: Enter who is assigned to ensure the bug gets fixed.
-
Priority: Select the priority of getting the bug fixed (e.g., high, medium, low, etc.).
-
Severity: Select the severity of the bug. How serious is it (e.g., blocker, critical, major, minor, trivial, enhancement, etc.)?
-
Status: Select the bug’s status (e.g., new, open, resolved, accepted, in progress, to be validated, done, etc.).
-
Status Description: Describe the status of the bug (e.g., “Bug is ready for QA testing”).
-
Fixed by: Specify who fixed the bug. Planned Fix Build #: Specify the software build for which the bug fix is targeted.
Improve Bug Tracking with Smartsheet for IT & Ops
Empower your people to go above and beyond with a flexible platform designed to match the needs of your team — and adapt as those needs change.
The Smartsheet platform makes it easy to plan, capture, manage, and report on work from anywhere, helping your team be more effective and get more done. Report on key metrics and get real-time visibility into work as it happens with roll-up reports, dashboards, and automated workflows built to keep your team connected and informed.
When teams have clarity into the work getting done, there’s no telling how much more they can accomplish in the same amount of time. Try Smartsheet for free, today.
Report Templates
We currently live in an era called the Internet of Things. It is an era so advanced that it could make even the greatest science fiction writers of yesteryear blush. It isn’t farfetched to say that software runs all. One of the most common uses of software is the development of apps. There is an app for everything. Want to manage your banks along the way? There is an app for that. Want to watch live CCTV footage of your front door? There is probably an app for that. Want to monitor your tiny little house-cleaning robot? That robot is probably bundled with an app. There is an app for everything. You may also see report samples.
Software developers churn out thousands and thousands of code every day. Not only do they write code to develop new apps, they also do it to update older ones. Apps, and in a larger scale software, need to be refined and updated to remain useful and relevant. Every day, people would think of better ways to make themselves convenient. For humanity, progress is the name of the game. Not all software updates give birth to positive results, however. Some people dislike change. Sometimes an app dies from just a facelift even if this facelift is as simple as moving a button originally found on the left to the right. You may also see sample budget report templates.
Free Bug Report Template
Details
File Format
- Google Docs
- MS Word
- Apple Pages
Download
Bug Report Form Template
ftp.csoft.com
Survey on Bug-Report Analysis
citeseerx.ist.psu.edu
Free Mobile Bug Project Report
dmohankumar.files.wordpress.com
Another one of these rough patches in software development would be the bugs. The term “bug” (which originated from a computer problem caused by an actual moth, a real “computer bug”) is defined by Wikipedia as a failure, flaw, error, in the computer system or program that causes it to produce an unexpected or incorrect result or results in unintended behaving ways. Software debugging is the term used for the process of correcting these bugs. Software debugging can take a long time and as such, bug reports are vital to this process. You may also see contact report templates.
Bug Reports
A bug report is just that, a document created to report the existence of bugs. Software testers are the people whose main job is to find and test the bugs. It is their primary job to test a software to the limits of its capabilities and report their findings to the developers. Software testing can even take more time and resources than developing the program, as such, it is vital for testers to write a good bug report. You may also see IT report templates.
Elements of a Good Bug Report
1. Specific Bug Number
A bug should have a unique number assigned to it. Having a specific number for each detected bug could make for an easier way to track it. This number could be considered as the bug’s ID. This could be automatically generated when a tester is using an automatic bug reporting software. You may also see sample action report templates.
2. Reproducible
A bug must be reproducible for it to be considered a bug. Reproducing a bug ensures that the bug was from a system error and not just unique to one person. This also proves that the bug does exist and not just a random report. You may also see performance report templates.
3. Detailed Description
In order to avoid wasting more time, a bug must be described properly. There is no need to write a long essay. A quick description of the bug to help the developer visualize the problem is enough. It is also a good practice to write your expectations on executing a certain command to ensure whether the bug is indeed a bug or the program is working just as intended. Note that it is also good practice to write just one problem per report and do not combine them in a single report. You may also see feedback report templates.
Bug Report Form Sample
ilssys.com
Details
File Format
Size: 86 KB
Download
Simple Bug Report Template
mobilefish.com
Basic Defect Report Template
softwaretestinggenius.com
Before Writing a Good Bug Report
1. Isolate the Bug
The first step in writing a bug report is to isolate it. This means that you should try to reproduce the bug. Remember that a bug must be reproducible for it to be considered a bug. To correctly identify the problem, retrace every step that you have done and in always be specific. Being explicit is key. Try to write your report in a step-by-step process so that it would be easier for the developer to replicate said bug. You may also see monthly report templates.
2. Check for Version
Always check the program that you are using. The bug might have already been fixed in the newest version if you are using an older one. If you are indeed using an older version, try to replicate the bug on the latest version and see if it still exists. You may also see quality report templates.
3. Check if the Bug is Known
This is what the specific bug numbers are for. Having duplicate bugs can be confusing and frustrating. Avoid adding burden to the testing cycle by checking if the bug has already been identified. Create a new issue if it is not. You may also see executive report templates.
Excel Bug Report Template
marker.io
Details
File Format
- XLSX
Size: 74kB
Download
Sample Bug Report
softwaretestinggenius.com
What to Include on Your Bug Report
1. Bug description
Indicate what went wrong here. As stated above, keep it brief but detailed.
2. Steps to replicate it
Indicate how you broke the program here. Write it in a step-by-step process. Always be specific. Indicate things like whether you used a keyboard to submit a form or used the button instead. These things might seem inconsequential but they are vital to the replication process. As much as possible recreate the environment when you found the bug. You may also see status report templates.
3. Expectations
Indicate what you think should happen here. This is essential to the bug report as this will tell the developers if one is just not misunderstanding the function of the program. Some bugs are obvious while others are not. Indicating what you expected to happen can be a great help to developers in finding the problem or if there is any problem at all. You may also see evaluation report templates.
4. Screenshot
A picture speaks a thousand words. Including pictures in your bug report can help highlight the bugs you found.
What is Found on Your Bug Report
A simple format for a good bug report should at least include the following:
- Reporter – Write your name or the name of who discovered the bug here.
- Product – Write in which product was the bug found here.
- Version – Write in which version did you find the bug here.
- Platform – Write in which platform did the bug appear. The bug might only be replicated on a ‘PC’ but not on a ‘Mac’. Be specific. You may also see financial report templates.
- Operating System – In the same vein as the platform, write which operating system was the bug found.
- Priority – Write when should the bug be fixed here. Some people have a simple code for levels of priority.
- Severity – Write the impact of the bug here. You can read the types of severity a bug can have below.
- Status – If you have found a new bug, indicate it here. This will help track the status of the bug. As time progresses, this might change from verified, fixed, reopened and others. You may also see board report templates.
- Assign to – If you know who is responsible for the software, you can indicate them here. Otherwise, leave it blank
- URL – If you are working on a website, it is a good idea to write the URL of where the bug occurred. You can also change this as the location of the bug. You may also see evaluation report templates.
- Summary – Write a brief summary of the bug here
- Description – The detailed description of the bug goes here. Include the steps to replicate the bug in this field.
Support and Request Template
mobigator.com
Standard Bug Report Template
mobilefish.com
Printable Bug Report
homepages.inf.ed.ac.uk
Details
File Format
- Doc
Size: 162 KB
Download
Types of Severity
Bug severity describes the impact of the bug. It can also dictate the priorities of when should the bug be fixed. Indicated below are the common types of bug severity. This may vary depending on your project, organization, or company. You may also see access report outline templates.
- Critical – Affects critical functionality or data. This may not have a workaround. Some examples include application crash or loss of data. You may also see project report templates.
- Major – Affects major functionality or data. May have a workaround but is not obvious or complicated
- Minor – Affects minor functionality or data. May have an easy workaround.
- Trivial – No affect to functionality or data. Usually, just a major inconvenience and may not impact productivity or efficiency. You may also see project report formats.
All in all, creating a good bug report layout is vital to the software development process. As it is a document that serves as the line of communication between the tester and the developer, it is essential to create one that is clear and direct to the point. A good bug report may very well be the key to a fast remedy to your software problems. You may also see report template samples.
More in Report Templates
В этом материале о багах вы узнаете:
- Что такое баг репорт
- Шаблон и правила оформления баг репорта
- Степени серьезности и приоритетов багов
- Как правильно оформить баг репорт
- Жизненный цикл бага
Что такое баг репорт
Баг репорт — это документ, который создает тестировщик, когда он обнаружил баг или ошибку. Дословно с английского Bug Report переводится как «отчет об ошибке».
Это технический документ. Поэтому он создается по определенным правилам и структуре. Формат баг репорта иногда меняется в зависимости от компании, в которой вы работаете, но костяк и суть всегда сохраняются.
Хотите научиться распознавать баги писать правильные баг репорты на примерах? Вам помогут наши менторы-тестировщики!
Шаблон и правила оформления баг репортов
Вот примерная форма и шаблон:
Степени серьезности и приоритетов в баг репортах
В таблице, которая расположена выше, есть две строки, которые мы обещали раскрыть подробнее. Степени серьезности и приоритетов.
Степень серьезности — это то, насколько критичен баг для программы, как из-за него изменяется ее работа. Существует пять основных степеней серьезности:
- S1. Блокирующий. Все приложение не может работать без устранения.
- S2. Критический. Большая часть приложения не может корректно работать.
- S3. Значительный. Блокирует работу одной из основных логических цепочек приложения. Приложение продолжает работать, есть другие способы решать поставленные задачи. Но одна из основных логических цепочек не функционирует.
- S4. Незначительный. Не нарушает основные логические цепочки приложения, с ним можно продолжать работать почти без потери качества.
- S5. Тривиальный. Эта степень присваивается, когда он вообще не влияет на общее качество работы приложения.
Хотите научиться писать идеальные баг репорты на примерах? Вам помогут наши менторы-тестировщики!
Степени приоритета — это то, в каком порядке нужно решать проблемы. Существует три степени приоритетности:
- P1. Высокий приоритет. Нужно исправить немедленно, потому что он является крайне важным для всего проекта.
- P2. Средний приоритет. Точно нужно будет исправить, он достаточно важен, но не требует немедленного решения.
- P3. Низкий приоритет. Нужно будет исправить, но он не очень важный и не требует немедленного решения.
Понятия степени серьезности и степени приоритета связаны напрямую. Степень приоритета определяется исходя из степени серьезности.
Как правильно оформить баг репорт
Баг репорт — это технический документ. Поэтому он должен быть написан в техническом стиле: без художественности, четко и понятно. Чтобы ничего не пропустить, советуем идти по тому шаблону, который принят у вас в компании. Если его нет, можете использовать нашу таблицу, из раздела «Структура».
Отдельно обратите внимание на раздел «Шаги воспроизведения». Начинающие тестировщики часто ошибаются именно там. Во-первых, в этом разделе должны быть только необходимые шаги. Во-вторых, они должны гарантировать воспроизведение. Чтобы не ошибиться, после заполнения остальной части таблицы, перечитайте этот раздел и перепроверьте его.
Прочитайте статью Что такое тест кейс: пример и чек-лист для начинающих тестировщиков, которые подойдут каждому!
Жизненный цикл бага
Баг репорт может изменяться в зависимости от того, на какой стадии жизни находится сам баг.
По умолчанию после обнаружения он попадает на стадию «Новый». После завершения всех по работ по нему, он переходит в стадию «Закрытый».
Между этими крайними стадиями есть еще 5 стадий, в которых он может побывать:
- отклонен. Сюда баг попадает, если он, например, повторный. Или его не получилось воспроизвести, из-за ошибок в «Шагах воспроизведения»
- отсрочен. Если исправление можно перенести на более поздний период
- открыт. Если его нужно исправить в ближайшее время
- исправлен. Если его уже исправили
- переоткрыт. Если сначала он был отсрочен или отклонен, но в итоге решение изменилось
Эту схема проще понять, если представить ее визуально. Схема жизненного цикла бага:
Обращайтесь к нашим менторам-тестировщиками, если хотите научиться писать баг репорты!!
Как правильно составлять баг-репорты
Время на прочтение
4 мин
Количество просмотров 245K
Ответ на топик «Распространенные ошибки при составлении баг-репортов».
Правила оформления записей в баг-трекере в каждой компании свои — это зависит как от политики компании, технологии разработки, используемного баг-трекера, типа проекта и много чего еще. Но в любом случае хороший баг-репорт обладает определенными характеристиками.
Если кратко, то хороший баг-репорт позволяет:
1. воспроизвести проблему (это не всегда возможно, но надо стремиться).
2. понять, в чем проблема и какова ее важность.
Как написать хороший баг-репорт?
Для начала надо подготовиться. Если вы обнаружили баг, не стоит моментально бежать в баг-трекер и писать «ничего не работает!». Воспроизведите ошибку. Воспроизвелась? Отлично. Не воспроизвелась? Значит, что-то вы не учли. Вспоминайте, что делали.
Снова воспроизвелась? Ура! А теперь минимизируйте количество шагов для воспроизведения, удостоверьтесь, что нет ничего лишнего.
Если используются какие-то входные данные, удостоверьтесь, что и они не содержат лишнего (действительно ли весь этот здоровенный кусок текста роняет редактор, а не один символ из него?).
Когда вы поняли, какие именно данные и какие ваши действия приводят к проблеме, кратко сформулируйте ее суть — придумайте заголовок баг-репорта. Опишите проблему настолько подробно и конкретно, насколько позволяет заголовок, при этом не увлекаясь его длиной
Пример плохого заголовка: «Все виснет, когда я вставляю текст из буфера обмена»
Пример «более хорошего» заголовка: «Редактор зависает при вставке текста, содержащего символ N, из буфера обмена по Ctrl+V»
Allenary: Можно еще упомянуть принцип «Что? Где? Когда?». В большинстве случаев это помогает написать удачный заголовок/подробное описание, Например,
Что: неправильный расчет данных
Где: на странице NNN
Когда: после ввода а поле Y отрицательного значения.
Старайтесь не писать фразы типа «я кликаю на ссылку», «я нажимаю кнопку» и им подобные. И заголовок, и описания шагов — это руководство к действию для тех, кто будет исправлять проблему, поэтому лучше формулировать как «кликнуть на ссылку», «нажать на кнопку».
Теперь откройте баг-трекер, начните заполнять форму баг-репорта.
Запишите заголовок.
В каких-то баг-трекерах поля «Подробное описание» и «Шаги для воспроизведения» различаются, в каких-то — нет.
Если поле «Подробное описание» есть, опишите в нем проблему более подробно — уточните те детали, которые пришлось опустить в заголовке. Если вы понимаете, в чем причина проблемы (используется устаревшая формула для расчетов, не учитывается какое-то значение и т.д.) — тоже пишите все здесь. Если не знаете — лучше не гадайте.
Если в форме записи об ошибке нет отдельного поля Affect version (версия продукта, в котором проявляется проблема), то укажите версию здесь.
«Шаги для воспроизведения» — основное поле для заполнения в баг-репорте.
Запишите шаги, которые вы определили. Как уже было сказано, шагов должно быть необходимо и достаточно для воспроизведения проблемы. Лишние не пишите. Необходимых тоже не пропускайте
После описания шагов обязательно напишите результат — что получилось.
Далее здесь же опишите ожидаемый результат, если это необходимо. Конечно, не стоит писать «Редактор не падает», но если, например, результаты расчетов не соответствуют ожидаемым, то это надо указывать.
Таким образом, описание шагов для воспроизведения должно выглядеть как-то так:
Шаги для воспроизведения:
1. Открыть…
2. Кликнуть…
3. Ввести в поле… значение N1
4. Ввести в поле… значение N2
4. Кликнуть кнопку CalculateРезультат:
В поле Result отображается V1.Ожидаемый результат:
В поле Result отображается V2.
Если требуются исходные файлы, данные, дампы и пр. — сразу приаттачьте. Само собой, файлы должны содержать только информацию, необходимую для воспроизведения ошибки. Подчистите все лишнее.
Если проблема с визуальным отображением, то скриншот обязателен — можно будет понять ошибку и без воспроизведения шагов. Khizhnyak: На скриншотах лучше указывать место с ошибкой. Стрелочкой или просто полосой контрастного цвета. Здорово ускоряет «чтение» скриншота.
Но вставлять скриншоты в каждый баг-репорт совершенно не обязательно: пожалуйста, не плодите лишних сущностей. Если он ничем не поможет в воспроизведении проблемы — не тратьте время на его изготовление.
Кстати, про видео воспроизведения ошибки: оно может помочь разве что для подтверждения, что проблема действительно есть, просто воспроизвести ее сложно. Но часто ли вы делаете запись экрана заранее?
По остальным полям.
Severity, Priority.
Наличие этих полей и значения в этих полях отличаются от багтрекера к багтрекеру.
Severity — это критичность бага с точки зрения тестировщика: фича, опечатка в тексте, мелкая проблема, значительная проблема, падение продукта, блокирующая проблема и пр.
Priority — приоритет, с которым проблема должна быть исправлена.
Если есть оба поля, то тестировщик, как правило, выставляет только Severity, а Priority — старший тестировщик/старший программист/менеджер или любой другой ответственный за это дело человек.
Если есть только одно поле, то выставляем его.
«Какой приоритет ставить багу?» На этот вопрос нет однозначного ответа, все зависит от каждого конкретного случая. Но старайтесь не увлекаться и не ставить всем багам подряд высокий или критичный приоритет, реально оценивайте их критичность для проекта.
Environment — есть во всех баг-трекерах. Это программно-аппаратное окружение, в котором проявляется проблема.
Укажите версию операционной системы, наличие сервис-паков, разрядность.
Если ваш проект зависит от каких-то компонентов — их наличие и версии обязательно! .NET, JRE/JDK и прочие SDK.
Интерпретируемый язык? Версию интерпретатора — обязательно!
Для веб-проектов — браузер, установленные плагины, если это влияет на работу проекта. Если что-то не работает в одном браузере, то проверьте, работает ли в остальных.
В какой версии исправить, на кого назначить — зависит от политики внутри компании. Не знаете, что поставить? Спросите коллегу.
Статья дополнена правильными замечаниями из комментариев.
Название (заголовок) баг-репорта
- Название не должно быть слишком длинным
- Прочитав название должно быть сразу понятно в чем дело
- Принцип “Что? Где? Когда?
Плохой пример — “Если открыть вкладку crm, потом выбрать напоминания, потом мышкой нажать на чекбокс любого напоминания, то тогда не появится корзина”
Хороший пример — На вкладке crm в разделе напоминаний не появляется иконка удаления при проставление чек-бокса у любого напоминания
Плохой пример — “В заголовке письма не отображаются символы, при отправке письма”
Хороший пример — “В заголовке письма не отображаются русские символы при отправке письма Daily Stat (!!!
Вся суть в том, что нельзя отбрасывать те слова, которые имею значение, иначе разработчик не воспроизведет баг)
Шаги
Описываем все шаги, с упоминанием всех вводимых данных (явки, пароли) и промежуточных результатов
- Оптимально не более 7 шагов
- Минимально возможные шаги, выкидываем лишнее
- Добавляем пример, на котором воспроизводится баг, если это необходимо ( ссылка, файл, фотография и т д, именно те, с которыми вы поймали баг)
Плохой пример
1. Открыть браузер
2. Открыть jivo.ru
3. Войти в систему
4. Вести данные нашего админа
5. Теперь щелкнуть напоминания
6. В напоминаниях создать новую напоминалку
7. Нужно заполнить все нужные поля
8. Сохраняем
Хороший пример
1. Войти в jivo.ru : (логин: [email protected], пароль: 123456)
2. Перейти в Управление —-> CRM —-> Напоминания
4. Нажать на кнопку “Создать напоминание»
5. Заполнить поле “Описание” и “Дата” (Например: Test, 04.04.2023)
6. Нажать на кнопку “Сохранить”
Результат/Фактический результат
- Указываем кратко, что произошло и в каком состоянии находится система
- Прикладываем скриншоты, видео, логи (при грамотно составленном баге разработчику достаточно хорошего названия баг-репорта и скриншота/видео/логов)
Плохой пример
Результат: Кажется, напоминание не сохранилось и не создалось, но вообще должно было
Результат: Сохранение не работает корректно
Хороший пример
Результат: Появился попал с сообщением об успешном создании напоминания, но напоминание не появилось в списке
Ожидаемый результат
- В ожидаемом результате указываем по факту, что должно произойти
- Прикладываем скриншот ожидаемого результата.
- Помимо этого прикладываем доказательство, что результат должен быть такой, а не какой то другой
Что служит доказательством
- Спецификация
- Макеты
- Спросить у проджект менеджера, тим-лида, дизайнера, аналитика
- Ссылка на документацию, вики
- Здравый смысл
Плохой пример
Ожидаемый результат: Напоминание должно быть создано
Хороший пример
Ожидаемый результат: Появился попал с сообщением об успешном создании напоминания, созданное напоминание появилось в списке напоминаний
Приоритет/Серьезность
Приоритет (Priority) — это то насколько срочно надо исправить баг
Серьезность (Severity) — это то насколько баг влияет на нашу систему
Логи
Лог (с англ журнал) — это журнал, документ, в который программа вносит различные записи
Шаблоны оформления баг-репорта
Шаги
1. Раз
2. Два
3. Три
Результат
……………
Ожидаемый результат
……………
Шаги
1. Раз
2. Два
3. Три
ФР
……………
ОР
……………
Шаги
1. Раз
2. Два
3. Три
Фактический результат
……………
Ожидаемый результат
……………
Шаги
1. Раз
2. Два
3. Три
Что не так
……………
Как должно быть
……………
Баг-репорт — это отчет об ошибке. В нём указывают, что нужно исправить в программном обеспечении или на сайте. Перечисляют причины и факты, почему поведение считают ошибочным.
Отчеты отличаются: содержание зависит от предметной области, типа программного обеспечения и даже части программы, где произошла ошибка. Но есть и общие, характерные для всех отчетов моменты.
Откуда берутся баги
Программный баг — это зачастую ошибка разработчиков. Еще причина может быть в некорректной работе компилятора — программы, которая переводит язык программирования в машинный код. Такие баги появляются, если что-то не так с компилятором или в коде есть синтаксические ошибки. Иногда в ошибках виновато оборудование компьютера: дефект процессора или памяти.
Из-за багов программа зависает или работает не совсем корректно. Некоторые ошибки серьезные — например, не дают пользователю зайти в личный кабинет. А другие не критичны, не мешают работе, но ухудшают общее впечатление. Например, на экране появляются посторонние символы.
Виды багов
🧨 Логические. Приводят к тому, что программа зависает, работает не так, как надо, или выдает неожиданные результаты — например, не записывает файл, а стирает.
🧨 Синтаксические. Это опечатки в названиях операторов, пропущенные запятые или кавычки.
🧨 Взаимодействия. Это ошибка в участке кода, который отвечает за взаимодействие с аппаратным или программным окружением. Такая ошибка возникает, например, если неправильно использовать веб-протоколы.
🧨 Компиляционные. Появляются, если что-то не так с компилятором или в коде есть синтаксические ошибки. Компилятор будто ругается: «Не понимаю, что тут написано. Не знаю, как обработать».
🧨 Ошибки среды выполнения. Возникают, когда программа скомпилирована и уже выглядит как файл — жми и работай. Юзер запускает файл, а программа тормозит и виснет. Причина — нехватка ресурсов, например памяти или буфера. Такой баг — ошибка разработчика. Он не предвидел реальные условия развертывания программы.
🧨 Арифметические. Бывает, в коде есть числовые переменные и математические формулы. Если где-то проблема — не указаны константы или округление сработало не так, возникает баг.
Почему важно сообщать об ошибках и кто это делает
Никто не хочет работать с программным обеспечением, которое ведет себя не так, как ожидалось. Например, постоянно вылетает, выдает неправильный результат. Плохой пользовательский опыт делает программу бесполезной. Отчеты об ошибках помогают сделать так, чтобы ПО выполняло то, что нужно.
Во многих командах разработчиков есть тестировщики или даже службы обеспечения качества. Они ищут и готовят сообщения об ошибках, а разработчики устраняют проблемы.
Тестировщиком реально стать даже без опыта в IT. Для этого пройдите курс Skypro «Инженер по тестированию». Научитесь писать тестовую документацию и составлять отчеты, тестировать веб- и мобильные приложения и API, освоите нужные инструменты. Внутри — мастер-классы с реальными рабочими задачами, домашки и разборы от наставника. Создадите четыре проекта для портфолио и получите диплом гособразца.
Инженер-тестировщик: новая работа через 9 месяцев
Получится, даже если у вас нет опыта в IT
Узнать больше
Как составить баг-репорт
Отчет должен быть четким, действенным и простым. Иначе разработчикам будет сложно понять проблему и найти решение.
Обычно программисты и тестировщики договариваются, что и как указывать. Еще на это влияет система, в которой готовят отчет. Но есть основные компоненты баг-репорта:
👉 Заголовок — краткое обозначение проблемы, причина и тип ошибки.
👉 Описание — подробности и любые сведения, которые помогут локализовать и исправить ошибку.
👉 Вложения — любые визуальные или другие материалы.
👉 Критичность — комментарий, насколько баг мешает нормальной работе приложения.
Часто выделяют следующие уровни критичности ошибок:
☝ Блокирующий (Blocker) — полностью блокирует нормальную работу программы, нужно исправить как можно быстрее.
☝ Критический (Critical) — сильно искажает логику приложения и значительно осложняет работу с ним.
☝ Значительный (Major) — затрагивает только отдельные элементы программы, существенно мешает работать.
☝ Незначительный (Minor) — либо не сильно влияет на работу программы, либо проявляется редко.
☝ Тривиальный (Trivial) — относится к визуальным недочетам в интерфейсе: опечатки, неудобные цвета и прочее.
Остальные элементы указывают, в зависимости от условий. Например, если софт на ставят на ПК, то нужна версия ОС. Если приложение браузерное, то указывают браузер.
Пример баг-репорта
Заголовок | Не срабатывает кнопка Start |
Проект | Аванта |
Компонент приложения | Кнопка запуска приложения. Начальное меню |
Номер версии | 0.9а |
Критичность | Блокирующий |
Приоритет | P1 Высокий |
Статус | Новый |
Автор | Картавых Игорь Сергеевич |
Назначен на | Мудрых Андрей Иванович |
Описание | ОС Win10, 19045.2728, Google Chrome 111.0.5563.65, 0.9а (0.9.11.5А).
При запуске приложения, на главном экране. Отсутствие вывода Запуск приложения |
Прикрепленный файл | N/A |
Основные принципы: как не допускать ошибок в баг-репорте
Правильные отчеты помогают программистам быстрее исправлять ошибки. Форма баг-репорта зависит от типа багов. Но есть несколько основных принципов — что и как включать в баг-репорт, чтобы заранее снять вопросы разработчиков.
Указывайте:
1️⃣ Только одну ошибку на отчет. Это золотое правило, потому что так гораздо проще исправлять баги. Легче отслеживать статус отдельных отчетов и выставлять приоритеты задач, распределять работу между несколькими разработчиками. Да и меньшее количество информации проще запомнить и проанализировать.
2️⃣ Место интерфейса программного обеспечения, в котором возникла ошибка. Опишите экран, на котором находитесь, состояние интерфейса. Включите URL-адрес страницы, если это веб-приложение.
3️⃣ Действия в программе. Пошагово опишите действия, которые выполняли перед тем, как столкнулись с ошибкой. Это важно: может оказаться, что некорректное поведение программы началось до того, как вы его заметили.
4️⃣ Ожидания. Поведение программы может быть некорректным с точки зрения общей логики или вашего личного опыта — указывайте не только очевидные отказы выполнения и неверные результаты вычислений. Программы создают, чтобы облегчить пользователям жизнь, а не заставлять их подстраиваться под готовый результат.
5️⃣ Скриншот или запись экрана с ошибкой. Есть риск ошибиться, когда пишешь отчет об ошибке. Это значительно усложнит работу команды разработки. Визуальные материалы — более точный способ указать на проблему, чем просто описать ее.
6️⃣ Техническую информацию. То есть вашу операционную систему, браузер, тип устройства — персональный компьютер, мобильный телефон или планшет. А еще тип устройства ввода — клавиатуру, мышь, сенсорный экран и прочее. Будут полезны и параметры монитора, чтобы исправить ошибки в отображении пользовательского интерфейса.
7️⃣ Все сообщения об ошибках и коды. Они помогут определить, что это за ошибка и как ее устранить. Показывайте и те сообщения, которые кажутся нерелевантными. Даже они могут помочь разобраться в проблеме.
8️⃣ Можете ли вы воспроизвести проблему. То есть происходит ли одно и то же каждый раз, когда вы пытаетесь выполнить задачу. Эта информация поможет разработчику найти причину ошибки.
9️⃣ Пробовали ли исправить проблему. Есть причина, по которой айтишник всегда спрашивает: «Вы пробовали выключить и снова включить?» или «Пытались ли обновить веб-страницу?». Перезагрузка может быть простым способом исправить проблему. Если она не исчезает — это дает много информации. Укажите, и это сэкономит время на последующее обсуждение проблемы.
🔟 Насколько проблема влияет на работу. Обычно серьезность варьируется от очень высокой (полностью останавливает работу) до очень низкой (визуальные недочеты). Эта информация поможет командам разработчиков расставить приоритеты, определить порядок, в котором устранять ошибки.
Жизненный цикл баг-репорта
Порядок работы тоже зависит от соглашений в команде, системы управления. Но выделяют общие статусы отчета, которые встречаются практически везде:
💡 Новый — только создан, ждет проверки разработчиком.
💡 Принят — отчет проверили, проблему подтвердили.
💡 Отклонен — отчет проверили, но команда разработки отказалась работать по нему. Например, потому что ошибку не удалось повторить. Или то, что показалось ошибкой, — нормальное поведение программы. Или проблему уже устранили, когда работали над другим отчетом.
💡 Назначен — ошибку передали исполнителю.
💡 В работе — разработчик исправляет ошибку.
💡 Проверяется — исполнитель закончил работу, результат проверяет старший специалист.
💡 Закрыт — ошибку исправили, результат доступен пользователям.
Системы для отчетов об ошибках
Современные программы — это сложные, многоуровневые информационные системы. Большинство из них неидеальны, где-то постоянно появляются баги. Чтобы помочь командам разработчиков справиться с потоком отчетов об ошибках от пользователей или тестировщиков, создали специальные системы. Они позволяют автоматизировать работу с багами.
Такие программы называют баг-трекерами. Чаще всего они — часть более сложных систем: управления проектами или исходным кодом приложения.
Системы управления проектами созданы, чтобы помочь контролировать разработку программы. Акцент в них сделан на планировании, отчетности и аудите. Такие системы чаще используют менеджеры проектов, тестировщики, разработчики в коммерческих продуктах.
К наиболее распространенным системам управления проектами относят:
- Jira.
- YouTrack.
- Redmine.
Форма создания отчета об ошибке в системе управления проектами Jira
Системы управления исходным кодом позволяют отслеживать изменения, контролировать версии кода и управлять отчетами об ошибках. Ими чаще пользуются именно разработчики. Не только в коммерческих, но и в свободно распространяемых программных продуктах, программах с открытым исходным кодом.
К основным системам управления исходным кодом относят:
- GitHub.
- GitLab.
- Bitbucket.
Форма создания отчета об ошибке в системе управления исходным кодом GitHub
Интерфейсы и функции систем довольно сильно отличаются, но для работы с отчетами все предоставляют базовый набор функций:
✔️ форма создания отчета об ошибке с полями для ввода основных элементов;
✔️ управление состоянием и параметрами;
✔️ форма обсуждения, в которой команда задает вопросы и оставляет комментарии, указывает дополнительные детали;
✔️ уведомление об изменениях через имейл или другую систему обмена сообщениями.
У части баг-трекеров есть публичное голосование. Пользователи голосуют за или против бага: так повышают или понижают его приоритет.
Главное: что такое баг-репорт
- Баг-репорт — специальный вид отчета о неисправности в программном обеспечении или веб-сайте. Баг-репорт готовят тестировщики или специалисты из команды по контролю качества.
- Ошибки в коде могут быть разными, например связанные с логикой программы. Или с математическими вычислениями — логические. Еще бывают синтаксические, ошибки взаимодействия, компиляционные и ошибки среды выполнения.
- Оформление баг-репорта сильно влияет на скорость, с которой исправят ошибки, на итоговый результат. Указывайте причину и тип ошибки, подробности, срок выполнения, критичность. Прикладывайте скриншоты или запись экрана.
- Прописывайте, пробовали ли исправить проблему, насколько она влияет на работу. Указывайте операционную систему, браузер, тип устройства, параметры монитора.
- Есть системы, с которыми проще создавать баг-репорты и управлять ими. Основные: Jira, YouTrack, Redmine, GitHub, GitLab, Bitbucket.