Resolución de erros: imos falar Metodoloxía

Ascensor emocional xenuíno para calquera desarrollador, o que o fai sucesivamente a partir da denegación á frustración, a incredulidade coa renuncia, a continuación, a esperanza de aliviar, a depuración é unha lección completa de pleno dereito que require específicos Actitude e habilidades. A través desta serie de artigos, descubriremos métodos, técnicas e trucos para a transformación dun pracer indistoso. Esta primeira parte centrarase en describir as chaves clave da resolución de erros reais.

Reproducir o erro

para comezar, é imperativo non executar a cabeza na resolución do problema. Non Toca unha liña de código e corremos para reproducir o erro. Este paso permitirá poñer en condicións de traballo ideais e farache, ao final, facer serenidade e tempo. Este desarrollador é precioso, primeiro debes asegurar a existencia real da perspectiva e certeza final corrixido. O que é máis frustrante que ver máis tarde a mesma superficie refacer a superficie!

A resolución dun erro comeza xeralmente por A análise do informe realizado pola persoa ou dependente da receita funcional da túa solicitude. É dicir, con máis frecuencia … LECLIENT. Raramente un perfil técnico, moitas veces desprovisto do vocabulario asociado, cambiará para proporcionarlle un proceso (incluso un modelo) do reensamblaxe de erros máis dirixidos. Vai evitar o sinxelo “non funciona”. Teña presente que este documento debería proporcionarlle información esencial para a reprodución do problema. Aquí están os dez mandamentos:

  • Os feitos, só que vai indicar (“Non estou identificado e aceptei esa información privada”)
  • especulacións, evitarás (“Creo que provén dun problema de …”)
  • a especificacións funcionais, farás
  • o teu ambiente (óso, navegador, perfil de usuario), con precisión que ti describirá
  • Os diferentes pasos necesarios para a reprodución do problema, vai listar
  • o rexistro de erro, o verdadeiro grial, se é posible, proporcionará
  • Que o erro xa non foi informar, comprobará
  • a súa pantalla, para describir un problema gráfico que capturará
  • o cualificador “intermitente”, o máximo posible que se desterrará : /
  • Constructivo, quedarás (un desarrollador é moi, moi susceptible)

Unha vez analizado e entendido, asegúrate de reproducir o erro máis preto de ti .. Non terás acceso á mesma comodidade de investigar localmente con todas as ferramentas de depredilección, dentro dun ambiente de proba ou mesmo peor na produción (OPS). Simplifique a configuración de Vietien nun escenario de reprodución máis curto posible. Idealmente, escribirás neste momento a proba de unidade asociada, a fin de protexer contra futuros futuros repositivos e fluucionar o traballo de diagnóstico.

Desafortunadamente é un erro que non é reproducible. A tentación de reclamacións sen suite é entón maior que nunca. Resistir e atopalo:

  • O informe de erro está mal enche
  • Os datos que manexan non permite reproducir o erro
  • a resolución de Outro problema corrixiu o erro de montar
  • que está a tentar reproducir o erro nun ambiente que é demasiado diferente do que se atopou a BUGA
  • enfróntase a un Heisenbug … boa sorte

HEISENBUGFonte: http://simonb.com

facer un diagnóstico

Unha vez nas condicións óptimas, pasarás á fase de investigación. Do mesmo xeito que un enfoque de Columbo, será necesario facer suposicións sobre a orixe do problema e verificalos coa sección Código incriminada. Os erros aínda non por maxia ou baixo as ordes dun IA malicioso, procederá con modificación:

minimizar a superficie de busca

  • Comprobe que un recente cambio ambiental non é A causa do problema (versión dunha dependencia, modificación do esquema da base de datos, etc.)
  • Repita o seu escenario reprodutivo volvendo ao historial dos seus VC ata o commit e, polo tanto, os cambios que introduciron LEBUG
  • Mockez as partes da súa aplicación non implicadas para Limite a interferencia
  • Blackboxez o código da biblioteca de terceiros
  • Póñase en contacto cos seus colegas: son a miúdo bos consellos e inspiradores

poñer en marcha rigoroso Métodos de investigación

  • Os seus experimentos deben ter un fin en si mesmo (mellorar a súa comprensión do programa, confirmar ou invalidar unha das súas hipóteses); Raramente atopou a fonte do problema por casualidade
  • só modifica unha cousa á vez, condición sine qua non para validar unha hipótese
  • manteña un seguimento dos seus experimentos para non Voltar a hipóteses xa está desactivado
  • Gare a certibes, a historia da ciencia sufriu demasiada das barreiras epistemolóxicas querido Gaston Bachelard!

Aprende a usar ferramentas para o teu Disposición.

IDE, consola API, seguimento, puntos de interrupción, Blackboxing, proxy de depuración, aquí son ferramentas máis ou menos poderosas para disposicións para eliminar os problemas. Dedicaremos un artigo completo ao seu uso como parte dunha aplicación de JavaScript na segunda parte desta serie.

Corrixir

Bravo, identificou a fonte do problema! Agora é hora de corrixir a sección de decodificación que representa a preocupación sen introducir a regresión e de conformidade cos estándares de calidade en vigor dentro do seu equipo. Teña coidado de tratar a causa do problema e non os seus síntomas. No caso de que a opción de implementar un QuickFix faise colectivamente, será entón identificable e imperativa temporal. Se isto demostra ser relevante, refactora o seu código. Finalmente, tan rigoroso e experimentado que é, asegúrese de ler!

Expandir a reflexión

Agora é hora de sacar as conclusións dos pasos anteriores. Como se fai este erro entre a malla da rede? Pode que un problema similar ocorra noutro lugar en votapplamento? Como se asegura de que non o ves reaparecer? Se se actualiza a documentación? Debe aproveitar esta corrección para mellorar e cuestionar a calidade da súa base de código.

O equipo de Symbiad.
libre de estar xuntos.

Deixa unha resposta

O teu enderezo electrónico non se publicará Os campos obrigatorios están marcados con *