软件出现Bug的原因是什么?
bug是虫子的意思,现在南亚东南亚的的蚊子成灾就可以认为是bug。
同样,bug还可以特指臭虫和蟑螂两类,在A国电影中有所体现。
引申含义就是指的是某只可怜的虫子导致早期的计算机出现问题,于是以后出现的错误、漏洞都称为bug。
硬件的bug会导致厂商名誉受损和产品召回,例如索尼的PS2召回与惠普的笔记本电池召回都是此类。
一般情况,bug在此类只是指电子产品出现的问题,如元器件使用错误、元器件质量问题、线路的设计和架构问题等。
软件的bug主要有漏洞和错误两类。
最常见的漏洞无怪乎操作系统与常用办公软件的漏洞,造成的损失无法估计,有的为病毒程序和恶意软件提供了一个后门,有的使操作系统或办公软件不稳定等。
错误一般会导致软件运行不正常,功能不稳定,性能不突出,或者影响使用者的操作。
作为漏洞,常见的比如Windows和Office的大量安全问题,还有游戏物品复制、洗钱、外挂等。
作为错误,常见的比如各种软件测试版的不稳定、各种游戏或文献的翻译错误等。
游戏里的BUG是什么意思?
展开全部 英文单词,本意是臭虫、缺陷、损坏等意思。
现在人们将在电脑系统或程序中,隐藏着的一些未被发现的缺陷或问题统称为bug(漏洞)。
中文常称BUG为“缺陷”。
而且,“缺陷”一词更能反映事情的本质。
因为“臭虫”是从外面飞进去的,并非程序本身有问题。
而程序本身存在的问题,是程序原来就具有的。
因此,在这里将BUG翻译为“系统漏洞”更合适。
在现在热衷游戏的一群年轻人中,BUG也有用来描述他人行为想法的与众不同的意思。
例:两个人玩DOTA,甲:“你好BUG啊,冰女出分身斧?”乙:“没事虐菜娱乐。
你更BUG,光法出魂戒!” 或者某人超神,被称为“BUG男”。
在程序运用中,特别是应用程序,会出现莫名其妙的警告,让普通用户丈二和尚----摸不着头脑,这些警告常被称作“BUG”。
...
请问如何知道一个软件的bug
软件测试(英语:software testing),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。
换句话说,软件测试是一种实际输出与预期输出间的审核或者比较过程。
软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。
穿越火线BUG是什么意思
软件的Bug,狭义概念是指软件程序的漏洞或缺陷,广义概念除此之外还包括测试工程师或用户所发现和提出的软件可改进的细节、或与需求文档存在差异的功能实现等。
仅就狭义概念而言,软件出现Bug的原因有: 1、对各种流程分支考虑不全面; 2、对边界情况的处理不到位; 3、编码时的手误。
穿越火线也有bug 箱子、墙能进也是bug! 掉到游戏界面以外也是bug! 至今还没有100%完美的硬件,系统软件,或应用软件,所以BUG无法避免,一个看来无可挑剔的游戏,还是有可能存在BUG,只是你没发现而已,尽管BUG无法避免,但是工作人员在努力地修复它,这也是电脑界面对的一个问题:能够彻底杜绝BUG的存在吗?
软件测试新手如何快速找出软件中的Bug
展开全部 摘要:当前用户对软件企业开发出来的软件质量提出了越来越高的要求了。
所以在这种大的环境背景下,催生了一个新兴的职业——“软件测试工程师”的职业。
尤其是最近2-3年来加入这个职业或者即将加入到这个职业的人也越来越多了。
那么作为一名软件测试工程师,我们该如何迅速找到软件中的缺陷Bug呢? 下面结合作者多年的软件测试经验谈谈。
按照作者的观点:凡是不符合用户需求的,或者在使用过程中给用户造成不便的,都认为它是Bug。
话虽然说的有点极端,但是现实就是如此。
那么对于刚入行的软件测试新手迅速找出软件中的Bug思路如下: 1、尽快熟悉公司的产品业务 比如你们公司做ERP软件的,你肯定要迅速熟悉EPR的业务流程;比如你们公司是做法院软件的,那么你一定要熟悉法院审判案件的流程,只有熟悉了产品的业务流程、你才能迅速找出软件中存在的一些重要的缺陷,你发现的软件缺陷才是有价值的。
否则即使你能找到一些软件缺陷,那也是纯软件的缺陷,价值不大。
2、把自己当成是用户 把自己当成是用户去使用该系统,比如在使用该系统过程中是这样操作的吗? 2.1 比如在大量要求用户输入的软件界面中,有一些用户喜欢使用Tab键采用全键盘的输入;此时的正确的接口应该采取从左到右,从上到下的顺序。
2.2 比如有的用户喜欢使用快捷键操作等(Ctr+C,Ctr+V,Ctr+F),但是实际情况下一些开发出来的软件的快捷键却根本不起作用。
2.3 比如软件在需要用户输入的信息的时候(特别是在填写个人资料的时候),必填项后面一律要用*等醒目的标示,要让用户知道这个地方时必须填写的。
2.4 下拉框不选值的时候,应该有个默认值;并且要多检查程序中的多处下拉框,因为很多情况下下拉框取不到值。
3、善于怀疑,不要迷信高手 世界上没有绝对正确的,总有错误的地方,具有叛逆心理,别人认为不可能发生的事,我却认为可能发生。
别人认为是对的,我却认为不是对的。
如果你认为某个或者某些程序员水平很高,他写的这个地方应该没问题吧,那么我要说你错了,这样很容易遗漏软件中的Bug。
因为程序开发人员毕竟是普通的人,只要是人就会犯错误的。
4、不要让程序开发人员的观点:“用户不会进行这样的操作”而说服自己 遇到这样的情况,你要坚持你自己正确的想法,以后对方会明白你的。
比如在一个录入员工基本信息的系统中,系统中对员工的年龄作为负值、而没有作为判断、也可以保存到数据库中,此时你不要被程序员的用户不会进行这样操作的观点说服自己,你要坚持你正确的观点,把这种现象作为一个Bug吧,勇敢点!你的选择不会不错! 5、在软件测试过程中要跟踪一条数据完整的流程 在软件测试的时候要跟踪一条数据完整的流程,保证数据的正确性这个真的是太重要了:假如你在测试一个销售的类型的软件的时候:你应该先做订货-à入库-à盘点-à销售-à查询。
首先你要保证这个数据的流向是正确的无误的。
假如你在测试法院审判软件的时候,你要先收案-à立案-à发送审批-à排期---审理审判-à结案判决-à归档-à查询。
总之跟踪一条数据的流程,保证数据的正确性。
如果经过你测试的软件在用户使用过程中业务流程上都走不通的话,那么这样的软件你说经过你的测试,但是在比人看来与没有测试有什么区别呢? 6、回归测试要注意的细项 程序员提交新的程序版本后,作为测试人员应该立即与程序员沟通这个修改的功能、并且这个新修改的功能影响哪些功能。
举个简单的例子来说明一下:比如在一款软件中,程序开发人员修改了某个“会员”的某个字段信息。
作为测试人员首先你要测试“会员”的功能这个是你首先需要做的。
另外你还要和程序员沟通询问他们新修改的这个会员的字段,会影响会员的销售功能吗?会对会员以前的销售记录的查询有影响吗?如果对这些功能有影响,那么这些功能都是你在回归测试的时候重点测试的地方,也是最容易产生Bug的地方了。
7、与使用者互动的缺陷 7.1 如填写资料错误应的时候,应该能够提示错误的位置,让用户知道是这个地方输入数据不对。
7.2 删除数据之前给一定要给出是否删除确认提示。
7.3 不要在软件中使用中英文混合的提示比如:比如对于用户某个操作的错误提示,不要一会用“error”、一会用“错误”;一会用“succeed”另一会用“成功”,总之要统一。
为什么我的电脑每隔几分钟就很规律的卡一次
1、唯一性。
一个bug说明一个问题,如果有能力的话,一个bug说明一类问题,这一类问题一定要能判断出是一条代码错误引起。
2、可重现。
提供这个bug的精确步骤,使开发人员容易看懂。
3、一致性。
bug描述及所有信息要前后一致,不可有歧义。
4、完整性。
最好能抓图,一目了然;测试环境和特定条件一定要描述清楚,许多软件功能在通常情况下没有问题,而是在某种特定条件下会存在缺陷,所以软件缺陷描述不要忽视这些看似细节但又必要的特定条件。
5、简洁性。
通过使用关键词,可以使软件缺陷的标题描述短小简练,又能准确解释产生缺陷的现象。
6、跟踪性。
也许随着版本的变化,或者测试的深入,对bug有了新的认识或者新的判断,及时补充相关信息,能够提供给开发更有用的信息。
7、客观性。
软件缺陷描述不要带有个人观点,不要对开发人员进行评价,软件缺陷报告是针对产品的。
其实在平时测试中,经常会遇到不能重现的bug,这些问题有不能提交bug,如果放过往往上线后出现的概率很大,问题也一般比较不可接受。
所以我觉得对于重现不可重现的bug是做好测试很重要的能力。
1、保留信息。
遇到问题,最好抓图,搜集错误日志,保留测试现场环境,一旦发现此问题不可重现,这些数据和信息将很重要。
2、提高意识。
很多人在遇到这类问题时,往往觉得后来操作不可重现了,因此就忽视了。
这样往往会把此类bug遗留到产品发布后。
欠的帐总要还得。
3、自我分析。
对于自己分析这类问题,其实对自己的提高是最大的。
分析思路:环境问题和操作顺序。
4、寻求帮助。
如果研发可以帮忙,并且研发是负责任的话,只有信息全,研发分析往往是最快的途径。
如果研发忙或者不乐意做,也是不可厚非的。
但就要寻求组内能力强的人员或者组内讨论分析,集中大家的力量往往可以事半功倍。
在我的经历中,通过上面的方法,几乎能把所有的不可重现的问题变成可重现的并且提交bug。