所有初创公司的创始人都知道测试很重要 -- 或者他们知道吗?一项10月20日的17testplantstudy报告称,接受调查的750名开发人员中有40% 名承认没有测试他们的软件,因为他们觉得尽早发布itas的压力很大。
这种脱节背后是什么?不幸的是,对于应用程序开发人员来说,这是创业文化的一部分,尤其是那些感到迫切需要将其应用程序推向市场的初学者。但是这种快速发射可能会导致失败。
随着大量应用程序的定期发布和更新,感觉你每天都在失去自己的平台客户,这是很正常的。但事实上,你只有一个第一印象的机会,这特别适用于这个竞争激烈的领域。
因此,让你的应用程序通过适当的测试,以确保它是客户第一次与它互动时的最佳版本。
软件开发中的测试是至关重要的,但这并不意味着你的应用程序应该留在货架上,直到它被戳和催促为每一个可能的情况。在产品周期的某些时候,一定程度的测试是必要的,正确的测试是很重要的。
那么,您如何找到测试的 “Goldilocks” 级别?幸运的是,一些简单的键可以帮助您留在正确的区域:
在整个测试周期中,您应该牢记一些概念,同时还要注意其他利益相关者的观点。
首先,简单地从构建一个最低限度的可行产品orMVp开始。保持这个版本没有浮华的功能,而是专注于解决一个单一的问题。然后,将其发布给beta测试人员,以确保它可以完成您的预期。
执法CRMSpIDR技术公司的首席执行官兼联合创始人Rahul Sidhu艰难地得出了这个结论。Sidhutold初创公司Savant表示: “我们花了太多时间来构建一个全面的产品,它完成了我们客户想象中的一切,结果发现部署时间太长,我们无法按照我们认为的方式进行扩展。”
继续测试你自己的mvp的每一个可能的错误。除了导致您失去现有用户之外,您刚刚发布的那款充满故障的应用程序可能会阻止新的应用程序。私人测试版可以通过限制访问来构建需求,但是当当前的测试版组没有对您的产品有多好 (尽管有一些小错误) 嗡嗡作响时,这是行不通的。实际上,Compuware的一项研究发现,只有16% 的接受调查的用户表示他们会给应用程序第二次机会。
未经测试的应用程序可能会让那些可以帮助初创企业获得吸引力的供应商感到不安。由于没有在beta阶段进行正确的测试,团队将花费更多的时间来解决问题。这给开发人员带来了压力,并在初创公司应该热情地追求增长的时候造成了紧张。让MVp通过简单的一轮测试,以清楚地了解进入下一个开发阶段所需的内容。
尽早将 “基本就绪” 产品发布给私人beta版用户,这使创始人可以测试其业务概念的可行性,而不仅仅是应用程序的潜在错误。这一点至关重要,特别是对于资金跑道有限的应用程序。
以色列拼车初创公司joiryde非常了解这一课。该公司在没有用户反馈的情况下在其应用程序上工作了六个月,事后看来,创始人Omer Goldberg认为这是一个错误。“Wepolished该应用程序,试图在让任何人看到我们正在做的事情之前对其进行完善。真是浪费时间!”戈德堡在freeCodeCamp的媒体页面上进行了反思。
通过创建一个私人测试版来学习JoiRyde的失误。然后,考虑建立一个允许成员邀请其他人加入的候补名单。为他们提供一些东西,以换取他们成为第一批用户,并定期通过电子邮件和社交媒体与他们互动,让他们知道您对他们的反馈有多重视。启动后,请记住这些beta测试人员,以进行进一步的发布和产品更新。
管理良好的beta测试可以使一切变得不同。Facebook,无论它是否意识到,都将所有用户视为beta测试人员。该公司会立即推出它所做的任何更改 -- 首先是对员工,然后是对真正的用户 -- 同时监控错误。如果它检测到问题,它会回滚更改。保留beta测试人员的缓存,以确保您的应用在公开之前经过了彻底的审查。
要在发布和测试中取得成功,您需要知道会遇到什么挑战。例如,应用程序需要测试数千种可能的场景,并且比网站测试更棘手。测试很难自动化,并且由于有更多变量,在成千上万种不同手机型号上测试网站会产生不同的结果。
手机 (甚至网络浏览器) 的变化是您不应该依赖开发人员进行所有测试的另一个原因。一个好的测试团队和策略不仅会执行自动化测试,还会在多个设备和操作系统版本上重现与应用程序的真实人机交互,同时使用虚拟仿真器和真实设备-或perhapsAmazon的设备场。
别忘了后端。即使您没有管理区,您也将拥有一个应用程序编程接口 (ApI),至少需要通过单元测试和安全扫描程序进行测试。即使你有一个完美运行的应用程序,当黑客可以操纵你的应用程序的后端,或者你的后端没有扩展和性能问题出现的时候,你的系统就会崩溃。
开发人员不应该做所有的测试。为此存在大量廉价服务。此外,开发人员是最差的应用程序测试人员,因为他们只会按照预期的方式使用该应用程序。即使您遵循Stack Exchange联合创始人Jeff Atwood的建议 “对代码做可怕的事情”,也会发生这种情况。
这是阿特伍德说他在早期作为一名对测试一无所知的程序员学到的一课。所以听从他的建议: 建立一个单独的测试人员小组 (除了您的beta测试人员之外),他们可以以意想不到的方式使用该应用程序,并在每次发布之前检查内容。
总体而言,启动空间一如既往地火爆,这对销售有利,但这也意味着提供 “正常工作” 的应用程序的特殊压力。因此,不要陷入势头,忘记测试的关键难题。
通过简单的开始,一致的过程,跨独立团队的明智和互补的测试程序以及有效的错误分类,您可以拥有一个成功的,功能正常的应用程序。在当今瞬息万变的生态系统中,谁知道: 你可能是下一个大赢家的掌舵人。