是否有必要在所有Windows操作系统和每个版本的所有版本上测试我的应用程序?

时间:2010-07-07 15:39:36

标签: windows testing windowsversion

我将测试一个声称在Windows XP,Windows Vista和Windows 7上运行的应用程序。我知道我必须为32位和64位上的每个应用程序测试应用程序(如果存在) ,但我不确定是否有必要测试每个操作系统的每个版本。

例如,如果我已经测试过Windows 7旗舰版或家用版,我是否真的需要测试Windows 7 Starter?如果我已经测试过Windows Vista Home Premium,是否需要测试Windows Vista Business?等等...

测试应该支持的三种口味中每一种的每一个版本都是非常耗时的:

  • Windows XP Home w / SP2
  • Windows XP Professional w / SP2

  • Windows Vista Starter

  • Windows Vista Home Basic
  • Windows Vista Home Premium
  • Windows Vista商务
  • Windows Vista Enterprise
  • Windows Vista Ultimate

  • Windows 7 Starter

  • Windows 7 Home Basic
  • Windows 7家庭高级版
  • Windows 7专业版
  • Windows 7企业版
  • Windows 7旗舰版

让我知道你的想法。

6 个答案:

答案 0 :(得分:5)

在我们的工作流程中,我们测试每个平台和架构,而不是每个版本。

例如,测试XP,Vista和7以及32位和64位架构。除非您的软件的某些功能取决于Professional中仅存在的功能,否则无需在同一架构上测试XP Home和Professional。

答案 1 :(得分:3)

这会很好,但没有必要。一种谨慎的方法是在边缘情况下对其进行测试。

例如,如果它适用于XP SP1和SP3,它可能适用于SP2。如果它适用于Windows 7 Home Basic和Windows 7 Ultimate,那么它可能适用于Windows 7 Professional。

用你最好的判断。很容易发布一个答案,上面写着“尽力而为!”,但实际上,这是不切实际的。

答案 2 :(得分:1)

这需要您的分析。

如果您使用仅在某些Windows版本中提供的dll或功能,或者依赖于集成在SP中但不在基础版中的修补程序,则必须对每个不同版本进行测试。

但是,我会说在大多数情况下测试你的建议应该足够了。

我肯定会从你的列表中测试以下版本:

  • Windows XP Home w / SP2 [是]
  • Windows XP Professional w / SP2 [No]

  • Windows Vista Starter [是]

  • Windows Vista Home Basic [否]

  • Windows Vista家庭高级版[否]
  • Windows Vista商业[否]
  • Windows Vista企业版[否]
  • Windows Vista Ultimate [No]

  • Windows 7 Starter [是]

  • Windows 7 Home Basic [否]

  • Windows 7家庭高级版[否]
  • Windows 7专业版[否]
  • Windows 7企业版[否]
  • Windows 7旗舰版[否]

我的理解是:如果它适用于最剥离的基本版本,它将适用于功能更强大的版本。

答案 3 :(得分:1)

Home / Professional / Ultimate / Orgasmic之间的唯一区别在于包含更大规模的功能。 API应该相同。

答案 4 :(得分:1)

可能的替代方案是跳过测试并简单地发货。这为您提供了一小部分具有各种环境的测试人员,其中一些人会向您报告(可能是愤怒的电子邮件或要求退款)。

多年来,我处于一个幸福的位置,在那里我基本上拥有一个专属客户群(这是在公司内部),我的代码要么为他们工作,要么他们报告失败,我会在同一天修复它。他们很快就能得到修复;其他部门测试了他们的代码,并且有很长的发布周期但没有真正更少的bug;如果出现问题,需要花费很长时间才能修复。

这对你来说可能不是一个好建议,但(正如我的轶事所示),这取决于具体情况。如果您不担心会惹恼一些用户或损害您的声誉,那么这可能会让您切入一两个角落。


编辑:

根据您的反馈,您处于(更常见)此类操作会让您获得打屁股的情况。在这种情况下,我同意其他一些答案的建议,鼓励您测试所有主要版本,但不测试不同版本。

作为程序员,理论上你应该对Home / Premium / Whatever版本的区别有所了解。这些天,就我所见,这往往是像:

  • 是否包含服务器类软件(如IIS)?
  • 网络连接是否有限制?
  • 是否附带所有语言?
  • 它包含哪些多媒体小工具和编解码器?

在某些情况下,版本的差异归结为CD上某个数字中存储的单个标志...相同的代码,只是切换功能的选项。除非功能子集对您的代码产生影响,否则您可以安全地忽略它。一个明智的方法可能是用产品的最低公分母(即“穷人的版本”)进行测试,因为这样做

  • 购买测试成本最低;和
  • 对您的代码可以执行的操作有最多限制。

但像往常一样,你的里程可能会变化。

答案 5 :(得分:0)

我从Microsoft的Windows应用程序兼容性工具包开始,Win 7版本为here。您应该可以通过Vista和XP ACT从那​​里回溯。