质量保证测试人员 - 您采取了哪些措施来“破解”软件?

时间:2010-12-10 19:45:03

标签: testing qa

您是否因为无意而使用该软件?你怎么打破你的软件?

4 个答案:

答案 0 :(得分:7)

我认为是错误的问题。我曾领导过大型测试团队。测试人员发现所有的小错误,你知道,当你做“这个,那个,bla,bla”时会崩溃系统。

记录了错误,通常没有纠正。每个人都同意这是一个非常特殊的情况,我们没有时间,而且它在生产中发生的可能性太小。

真正的错误有时会被忽视。系统完成程序员所要做的所有程序,但它不是客户需要的。实际上已经是一个需求错误的错误。

除了这个评论之外,通常还会出现像

这样的错误
  • 无数据输入验证
  • 未检查边界(非常大的值,非常小的值)
  • 缺少错误处理(导致系统连接松动)。磁盘已满等。
  • 仅在系统端到端测试后才检测到接口错误
  • 无效字符问题
  • 字符串问题太长
  • 空值问题
  • 数据组合问题不明显

如果要打破系统,那么系统测试需要尝试所有可能的组合

答案 1 :(得分:2)

很少100%保证系统只能按预期使用。如果坏的数据“以某种方式”进入系统,团队了解系统的行为方式非常重要。这些问题实际上非常重要,例如可能导致私人客户数据泄露的安全问题,因为no one intended for SQL statements to be entered into that field;它只应该是学生的名字。所以,是的,我绝对测试当系统没有“按预期”使用时会发生什么。系统应该优雅地失败,而不正常的失败则是错误。未记录的故障或难以调查的故障也可能是错误。

我打破软件的确切步骤取决于被测试的东西。通常,我们的团队在创建估算时将功能测试用例分为3组:快乐路径测试,它使用测试人员可以提出的最基本的“预期输入”用例来遍历每个功能一次。 “奇怪的”测试,这是一个更彻底的演练,涵盖了所有微小的逻辑部分,以及程序员可能没有想到的不寻常的有效案例(主要是边界测试和等价类测试)。最后,“错误”测试,这是关于输入错误和意外的输入以尝试破坏代码,并且通常涉及专门测试日志记录,监视和错误恢复。通常,快乐路径测试非常快,但“奇怪”和“错误”测试都是非常耗时的。这只是功能测试,不包括其他类型的测试,如集成或性能测试。

我们通常也会尝试获取实时数据以供测试;测试人员可以提出一系列可能的非预期用途,但仍然会错过客户想出的非预期用途。

答案 2 :(得分:1)

简短的故事 - 探索性测试会议以及章程

答案 3 :(得分:0)

要破坏系统,您必须开箱即用,寻找用户甚至可能会超出要求执行的操作。系统通常会在我们最不期望的地方中断。