是我有问题,还是这是一个bug?
并不是每个人都是,或者想成为程序员。然而,你不必成为程序员就能帮助找到和追踪软件中的bug。使用一些技术,你通常可以找到问题的根源并确定它是一个bug、用户错误,还是其他问题。由于软件开发是一个持续的过程,当你遇到问题时,你可能想知道它是否是一个bug,或者不是。
什么是‘bug’
bug是程序中的错误,导致意外行为或程序失败。bug可以以许多方式出现,软件看起来似乎有bug,即使实际上没有。例如,当某人开始使用Joomla! 1.6时,他们将从使用Joomla! 1.5的经验中注意到管理员中的许多变化。这个人可能会认为新方式有问题,但实际上它是按预期工作的,只是与预期不符。
真正的bug是那些你看到错误消息,或者某些明显无法按预期工作的情况。有些人认为bug可以是编程错误到可用性问题。在这篇文章中,我们将主要关注编程bug。
问题发生时的第一步
如果你遇到问题,将Joomla!配置中的错误报告设置为最大有助于解决问题,但不要在生产网站上这样做,因为它可能会显示敏感信息。测试应在不对外开放的私人网站上完成。如果它显示各种错误消息,那么你可以帮助确定它是否是软件bug,或者可能是用户错误。
当我进行故障排除时,我必须尝试以下列出的各种方法,具体取决于情况。
- 确保您安装了Joomla!的最新版本
- 如果问题在前端,尝试逐个禁用给定页面上的所有非核心插件或模块,以查看是否存在冲突
- 如果你刚刚更改了某些内容,尝试撤销更改并查看消息是否消失
- 如果您正在使用自定义模板,可以检查默认模板是否渲染正常。
- 如果问题出现在多个地方,尝试找出这些地方有什么共同之处(插件、组件等)。
一般流程是尝试消除可能引起问题的区域。这也意味着您需要对您所设置的内容有很好的理解。如果您收到错误信息,那么您应该稍微了解一下如何阅读它们。如果您没有收到任何错误信息,您将需要前往下一节。
理解错误信息
PHP和Joomla!都提供错误信息,并且有多种形式。
- 通知 - 这是一个低级别消息,似乎并不引起太大关注,也不会停止程序,但值得让您知道。
- 警告 - 这是中间级别,Joomla!仍然可以运行,但有些问题是应该修复的。
- 致命 - 这是最高级别的消息,Joomla!在修复之前无法继续运行。
当Joomla!可以时,它会尝试捕获错误并防止它们破坏网站,因此您也会收到来自Joomla!的消息。这就是为什么将错误报告设置为最大是很重要的,因为它可以显示比您可能看到的其他更多消息。
为了更好地理解错误信息,尝试在Google上搜索它们(对于PHP错误,您应该删除文件的完整路径)。大多数情况下,解释很容易找到来解释这些错误的含义。这并不意味着您会找到有关如何修复它们的详细信息,但您拥有的信息越多,就越有帮助。所以如果您收到关于JFolder无法复制文件的错误,您就有了一个很好的起点来寻找解决方案。
错误信息一开始可能很吓人,但它们提供了您可以使用的许多信息。首先,它告诉您问题发生的地方,即使您不是程序员,您也可以了解一些有用的基本信息,尤其是在尝试与他人讨论您的问题时。
确认错误
如果您收到了错误信息,或者您确信功能没有正确工作,您需要做一些事情来尝试确认这是一个真正的错误。
首先要做的事情是花点时间回顾您的步骤,看看发生了什么。记住您是如何到达这个位置的,并记下这些步骤。看看您是否可以按照相同的步骤回到那里并重现问题。如果您可以重复这个过程并得到相同的结果,那么其他人测试问题以帮助确认就更容易了。
咨询他人关于错误
在与错误作斗争的伟大工具之一是社区。如果您不是程序员或无法查看代码以确定错误,您需要他人的帮助。如果您认为问题是Joomla!本身的,您可以搜索论坛,发布帖子,使用邮件列表,最后使用Joomla!跟踪系统。我建议您遵循以下指南,了解在哪里咨询他人关于您的问题。
如果您非常不确定您的问题是什么,并且不确定如何重现它,论坛可能是最好的地方。如果您更有信心您确实有一个真正的问题,那么我可能建议使用邮件列表(选择最适合您情况的那个)。最后,如果您非常有信心您已经发现了一个错误,您应该将其提交给错误跟踪器。
如果您认为您的问题与扩展有关,您将需要使用该特定扩展的支持系统。他们通常提供一种支持方法,您可以报告您的错误,但请注意不要滥用他们的支持系统,提交虚假的错误或未遵循他们的指南。
错误是会发生的。请耐心、尊重并富有信息量。
作为一名处理支持问题的程序员,有时我会收到错误的错误报告或非常无礼的错误报告。无论是免费还是付费程序,有些人都是无礼且苛刻的。维护程序是一项压力很大的工作,你必须记住,有一些普通人会花时间阅读你的报告并试图帮助你。其中一些人可能是志愿者,其他人可能是在为工作而做,但他们都是帮助他人并且尊重他人会增加人们认真对待你的机会。
在咨询他人时,信息是你的成功关键。很多时候,人们只发布一些简单的陈述,比如“当我点击这个时,XYZ不起作用。”你得到任何人的回应的可能性较低,即使他们回应,他们也会要求你更好地解释自己。为了帮助每个人,首先解释你确切做了什么以及其他人应该如何能够复现相同的问题。也有另一种极端情况,人们写的东西远远超过了必要的。尽可能清晰,但也尽可能简短。
最后,每当你寻求帮助时,我也认为尝试帮助他人是一种好的做法。总有人需要你的帮助,只要你愿意花几分钟时间四处看看。
在 Joomla 社区杂志上发表的一些文章代表了作者对特定主题的个人观点或经验,可能不与 Joomla 项目官方立场一致。
通过接受,您将访问 https://magazine.joomla.net.cn/ 外部第三方提供的服务
评论