Як боротися з помилкою, яка, схоже, виправлена? [зачинено]


16

Я розробник веб-додатків для внутрішньої системи. Користувач повідомляє, що є помилка.

Помилка в тому, що деякі слова неможливо було відобразити. Звіт містить знімок екрана, на якому чітко відображена помилка. Але звіту майже місяць, і помилка вже не може бути відтворена у виробничому середовищі.

Як слід відповідати клієнтові та користувачеві?



1
З’ясуйте, як зробити його повторюваним.
Wyatt Barnett

2
Скільки часу ви можете собі дозволити на це розслідування? Наскільки критичною була помилка та її негативні наслідки? Якщо відповіді дуже малі і незначні, то я б сказав, що позначення його фіксованим із зазначенням обставин, за яких насправді це не виправлено, і чекати його повернення є цілком прийнятним використанням ресурсів вашої компанії.
Ньютопіан

2
Це просто вимагає досить стандартної відповіді на шаблоні : " Шановний [користувач]. Проблема з X, про яку ви повідомили Yth, здається, вирішена з останньою версією Z. Будь ласка, позначте проблему як вирішену, якщо це дійсно так Якщо ні, будь ласка, надішліть мені цю інформацію з деталями про те, як ви стикалися. "
Ліліенталь,

1
@Lilienthal Тільки тому, що помилка не може бути відтворена, не означає, що вона була вирішена. Ви навіть не знаєте, що навіть за останній місяць був навіть новий реліз.
папараццо

Відповіді:


32

Поверніть своє середовище розробників до версії, в якій виявлено помилку, і переконайтеся, що помилка є.

Якщо він є, то ви можете дослідити помилку і переконатися, що в поточній версії її немає. Потім закрийте звіт про помилку з коментарем, що незв’язана зміна виправила його. Додайте регресійний тест, якщо потрібно.

Якщо ви не можете відтворити помилку у цій версії, тоді будуть корисні стратегії, викладені в багатьох інших питаннях (дякую Томасу за початковий список):


2
На мій досвід, більшість команд просто перевіряють опцію "не можу відтворити" в системі квитків і закривають її. Тестування коду "тоді" та "зараз", щоб переконатися, що проблема там була, і більше не здається кращим рішенням. Але це також займає більше часу, ніж сказати "не вдається відтворити" та закрити його, тому це може бути не варіант для кожної помилки.
Пол Дж. Абернаті

5
Залежить від того, наскільки серйозна помилка. Якщо це просто макет гофру, то справді не можна було б зробити відбиток штампа і зробити це, але якщо це могло б бути більш зловісним, то кілька годин, щоб закінчитися тестом на регресію, варто.
храповик урод

2
@ratchetfreak Як варіант, це залежить від того, наскільки серйозний цей конкретний клієнт. Якщо вони одноосібно фінансують ваші зарплати, можливо, варто їх принизити ;-)
Корт Аммон - Поновіть Моніку

7
Проблеми, які відходять самі по собі, повертаються самі собою.
Піт Бекер

1
Це все питання навантаження. Якщо у вас є одна помилка, яку можна було відтворити місяць тому, і її більше немає, і іншу помилку, яку можна відтворити зараз , то ви виправте першу, яку можна відтворити зараз. Якщо ви коли-небудь потрапите до стану, де вам абсолютно нудно, то можете розслідувати. І коли проблема повертається сама собою, то, звичайно, це відтворювана помилка, і ви починаєте її виправляти :-)
gnasher729

2

Я припускаю, що ви справді зробили все, що могли, щоб відтворити помилку, але не можете.

У такому випадку часто краще додати код у зоні програми, яка не змогла зафіксувати виконану роботу, так що, сподіваємось, у вас буде більше даних для роботи, якщо це повториться. Подумайте, яку інформацію вам потрібно мати, яку ви зараз не маєте. Наприклад, можливо, це відбувається лише тоді, коли надсилається певний набір вхідних параметрів, і ви записуєте їх кожен раз, коли процес запускається. Однак перед тим, як це зробити, проконсультуйтеся зі своїм начальником, залежно від важливості помилки та частоти їх виникнення, можливо, він не захоче витрачати час на це.

Потім ви переходите до особи, яка повідомила про помилку (ви можете це зробити в програмі відстеження помилок, якщо у вас є, вам не потрібно йти особисто) і кажете, що ви не змогли відтворити помилку, але додали додаткову кількість ведення журналу, щоб отримати більш детальну інформацію про те, що відбувається в разі помилки. Потім закрийте помилку.

Якщо ви не можете зробити додатковий журнал. просто повідомте про те, що помилка не відтворюється, і якщо вони знову натраплять на неї, це інформація, яку вам знадобиться для її відтворення, і скажіть їм, що вам потрібно. Ми часто просимо їх сказати нам, які саме вхідні параметри вони вводили, коли отримали помилку. Просто наявність знімка екрана помилки допомагає, але точно знати, які кроки вони вживали та яку інформацію вони намагалися використати на момент виникнення помилки, корисніше. Таким чином, ви покладаєте на них відповідальність, щоб отримати більше інформації, коли вони повідомляють про помилку, якщо вона повториться.

У своєму трекері помилок обов'язково поясніть, які кроки ви пробували, так що якщо помилка повториться, людина, яка її обробляє, матиме певний досвід у тому, що робилося раніше.


1

Невідтворювані мішки - це найгірше! Він, можливо, був зафіксований тим часом, або він все ще може бути там, але спорадичний або кроки до відтворення недостатньо визначені. Ви повинні прийняти рішення про те, наскільки помилка є високим ризиком, і на скільки ви розширитесь, досліджуючи її. Ви робите онлайн-менеджер рецептів чи програмне забезпечення для управління ядерними ракетами?

Якщо це помилка з низьким впливом, і ви знаєте, що були внесені зміни, які могли призвести до того, що помилка мимоволі виправлена, можливо, допустимо закрити помилку із зазначенням, що вона не відтворюється, і ви вважаєте, що вона була виправлена .

Якщо вас більше турбує, ви можете зробити деякі теорії про те, що спричинило помилку в першу чергу, і перегляньте журнал змін та історію джерела, щоб побачити, чи можете ви визначити, де це було виправлено.

Для більш серйозної помилки вам доведеться повернути джерело до точки останнього випуску, а потім спробувати відтворити. Якщо ви успішно відтворюєте, ви можете писати тести, щоб переконатися, що він фіксується в наступних комісіях.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.