近些年来,随着敏捷开发方法和互联网企业的发展,易用性测试和探索性测试被越来越受到关注。 客户也经常提这样的概念或者尝试实践。有些客户可能只做易用性测试,有些客户则关注探索性测试。还很少看到两者都做得。这里简单诠释下两者的相同和不同,如果有不同意的地方,敬请指正。 相同点 1. 易用性测试和探索性测试都是面向业务的测试。所谓面向业务的测试是区别于面向技术的测试,它更多关注用户感受,逻辑是否合理,流程是否正确,功能是否有遗漏等。 2. 两者属于手工测试范畴。虽然有时候用户也可以用工具辅助做探索性,但是两者都属于手工测试。依赖于测试人员的专业能力和分析能力 3. 任何人都可以参与的测试方式 不同点 易用性测试用一句话概况是:软件使用是否方便。具体来讲它分:可理解性,可操作性,可学习性,吸引性和依从性5个方面进行分析。易用性测试本身不是为了寻找系统还存在哪些bug,而且在假设没有bug的基础上,对系统从人体工程学上进行测试。如果期间发现bug,那纯当系统Bug处理。易用性一般只以建议的方式对发现的问题进行登记。易用性测试建议在项目初期界面设计阶段引入,因为对于后期来说,系统的更改成本和风险过高。 对于易用性测试,本身不能性,任何界面设计专家也不能完全代表用户。因此需要更多的分析用户群体的行为习惯,例如:老年人会习惯界面文字比较大,图案比较传统的方式。而年轻人会选择页面精细,功能丰富的系统。所以在进行易用性测试的过程中,从用户的角度进行测试是根本。在有些产品用户群体比较广泛的情况下,往往需要做Alpha,Beta测试来进行统计。以获取合适的人群。 探索性测试比较流行的定义是:边设计用例边测试。 如果把脚本测试作为一张网的话,那么探索性测试是在寻找能透过网洞的bug。 探索性测试从测试手法上多会采用颠倒次序,改变状态,跟随产生的数据等来发现系统可能存在的潜在问题。因此探索性测试更倾向于是功能性的测试。探索性测试一般发生在系统集成测试完成,可以在UAT之前或者同时。 探索性测试也可以是没有界面的测试,这点跟易用性测试完全不同。对于没有界面的测试,需要开发人员或者测试人员有很强的数据追踪能力,了解数据在不同阶段的变化过程和变化预期。 当然此外还有更多不同之处,这里抛砖引玉,希望读者继续发掘!