Automation 自动化什么时候开始?

Automation 自动化什么时候开始?,automation,qa,manual-testing,Automation,Qa,Manual Testing,我想开始实现自动化。我只是不知道这是否能很好地利用资源。应用程序正以指数级的速度增长,但我不知道自动化在什么程度上有利于测试 你能告诉我为什么即使你有手动测试仪,你也会自动进行测试吗?让测试更高效——即使你有手动测试仪,如果他们(或你)可以实现自动测试,那么可以探索更多的案例。编写自己的自动化测试还可以让您深入了解自己的代码。您可以实现自动化,因为按“go”并等待10分钟的结果意味着您的测试人员可以在这10分钟内完成其他有用的工作,而不是照看应用程序 请记住,自动化测试可以在每晚睡觉时运行。然后

我想开始实现自动化。我只是不知道这是否能很好地利用资源。应用程序正以指数级的速度增长,但我不知道自动化在什么程度上有利于测试


你能告诉我为什么即使你有手动测试仪,你也会自动进行测试吗?

让测试更高效——即使你有手动测试仪,如果他们(或你)可以实现自动测试,那么可以探索更多的案例。编写自己的自动化测试还可以让您深入了解自己的代码。

您可以实现自动化,因为按“go”并等待10分钟的结果意味着您的测试人员可以在这10分钟内完成其他有用的工作,而不是照看应用程序

请记住,自动化测试可以在每晚睡觉时运行。然后,您的测试人员可以利用他们的工作时间编写新的有用的测试,而不是反复运行相同的旧测试


最大的原因是,当您在发货前不久更改一些小东西时,通过自动化测试,您将毫不犹豫地运行测试,即使“更改很简单,不应该破坏任何东西”-然后,当自动化测试捕获到您引入并即将发布的bug时,您会松一口气。

自动化几乎总是测试的好方法。手动测试仍然很重要,但它更容易出错,如果手动测试过程开始需要几天或几周才能完成,则很难快速推出更新。在项目开始时设置自动化通常比较容易,因为要自动化的东西会更少,而且一旦您建立了自动化框架,随着项目的发展,它应该很容易扩展


在一个已经完全实现的项目上尝试自动化测试可能需要比从一开始就自动化更多的工作,因此我建议尽快投入工作。

手动测试重复测试是痛苦的,而且容易出错,如果应用程序正在更改,测试需要重复。

假设程序的大小和测试的数量随时间线性增加,并且您希望进行连续(每日)集成和回归测试。在这种情况下,第一天你将测试一件事,第二天你将测试两件事,第三天你将测试三件事,以此类推

由于重新测试和重新测试,手动测试的总测试工作量将随着程序大小的平方而增加


如果你不自动化,那么你就不会进行常规的、完整的回归测试。

我之所以要自动化测试,是因为这意味着我可以得到一致的、可重复的、及时的反馈,证明我刚才所做的是正确的

手动测试也有它的位置,但是很难确信它正确地涵盖了所有内容,当然也没有自动化测试那么快

例如,我的一个项目的一部分是一个优化算法,它使用一些启发式方法在搜索空间中漫游,寻找好的解决方案。现在大约有40种不同的启发式方法可以单独使用或以各种组合使用,每次与客户会面似乎都涉及添加新的启发式方法或扩展现有的启发式方法。我需要绝对肯定的是,对于一个客户来说,所有这些工作都不会导致另一个客户的回归,这涉及到在几百种不同的情况下运行算法,并检查输出是否(不比以前差)

要求手动测试人员通过加载GUI、打开输入文件并单击“运行”来运行所有这些测试用例是不切实际的,至少不经常成为有用的反馈机制。对于短期测试,这些测试通常每天运行数十次,对于较重的测试,则每晚运行。使用手动过程,完整的反馈可能需要几天时间,修复几天前引入的bug要比修复过去半小时内引入的bug困难得多

此外,很难确保对结果的任何“肉眼”检查与过去一样好,因此结果检查必须自动化。但是如果你想让它自动化,你也可以让整个过程自动化。这并不难

自动化测试的另一个优点是,根据在没有项目的情况下工作的经验,如果您有没有广泛记录的手动测试,那么当项目处于休眠状态时(显然处于“维护模式”)一年之后,重新开始积极的开发,没有人能完全记住如何进行测试或预期结果是什么,最终你引入了一大堆愚蠢的回归,需要花费很多时间才能确定。另一方面,如果您打算对测试进行足够详细的文档记录,以便在一年后可以获取测试,那么您基本上已经实现了测试的自动化:您只需要使文档可执行即可


根据我的经验,你需要在你突然意识到你应该在2小时前开始测试之前大约2小时开始测试:)

我认为这取决于在公司工作的人。有些人喜欢自动化,有些人不太喜欢自动化。如果你的公司到现在还没有,那么尝试实施它可能会很困难

我更喜欢自动化,因为工作时间长(已经提到过),而且在大多数情况下,你知道你将得到什么

您应该同时拥有这两种功能,但随着产品的增长,如果没有自动化和测试,将会变得非常困难

即使你有手动测试仪,你能告诉我为什么你会自动测试吗

我会把所有可以自动化的东西都自动化。用人脑做一些机器可以重复完成的事情的附加值是什么?那么人格呢