面试

幕后花絮:您可以信赖的eWay-CRM

整个开发团队一直在致力于eWay-CRM。一个类似的系统实际上是如何“制造”的?
eWay客户关系管理的技术总监RomanŠtefko谈到了我们正在做些什么,以使我们的实验室使用高质量的软件。

罗曼·斯蒂夫科

 

罗曼,我们如何真正使eWay-CRM发挥应有的作用?

像任何软件一样,我们的eWay-CRM是通过以编程语言编写程序或编码来创建的。现在,它是一个非常全面的产品,形成了一个冗长而复杂的代码。

随着代码的发展,它会产生需要查找和修复的错误。
新产品总是产生较少的错误。例如,通常只有效果更好的唯一程序员也可以在上面工作。但是,产品越旧,其代码越复杂。而且这还会产生更多的错误。
开发人员会自己进行所有测试,但这还不够。有很多可能出错的可能性。即使在开发过程中,他可能也不会想到某些测试方案,因为那一刻,他会受到代码实际编写的影响。

 

我们有一个测试人员,对吗?

故障排除实际上是所谓的测试仪工作的一部分。测试人员从用户的角度测试软件,换句话说,即开发人员正在研究的软件是否可以正常工作。以及它是否不会产生任何错误。
例如,当我们开发最新的任务模块时,测试人员逐渐测试了其所有功能。
但是,即使测试人员也无法跟踪所有内容。在实践中,这意味着每做一次小改动,整个系统便会通过并测试所有功能。
这就是为什么我们在eWay-CRM中使用单元测试的原因。

 

单元测试?这是什么意思?

这些是可以验证代码及其功能的自动化测试。基于已验证程序的可单独测试的部分(即一个或多个单元)的事实,这称为“单元测试”。这些测试由程序员自己编写。

单元测试的工作方式如下:

  1. 我们将编写测试用例并定义在特定情况下应发生的情况。对于每个测试用例,我们创建一个单元测试,这是一小段源代码,旨在检查应用程序主要源代码的各个部分。我们可以对主要源代码的一部分进行更多的单元测试,因为我们想针对许多不同的场景进行测试。这根本不是一件坏事。反之。
  2. 我们将准备单元测试,因此我们将在特定时间拍摄快照,因此将来我们将很容易地发现修改代码后程序的任何部分是否已损坏。

 

我们多久进行一次这样的事情?

我们每晚都进行单元测试,我们能够经历数百种可能的情况。
对于测试人员而言,所有这些将花费大量的时间,但是对于自动化测试而言,则只需几分钟。现场测试仪和自动测试相辅相成。例如,当我们开发新的Tasks模块时,测试人员从用户角度对其进行了测试,并检查了它是否按预期运行。
这是另一种类型的测试,不是像单元测试那样遍历整个系统的功能,而是关注新开发的功能。例如,自动测试不能告诉我们某些东西看起来不好。
使用单元测试方法,我们能够检测到所有导致系统修改的无意识错误。开发人员发现他的行为在我们软件的完全不同的部分中导致了错误,并且基于此,他甚至可能能够从一开始就抓住实现该解决方案的错误过程。
我们还将观察测试覆盖了代码的各个部分。覆盖率以百分比显示。详细地,我们还可以具体找出未涵盖的部分。
简而言之,我们确实在测试方面进行了深入研究。

 

pokrytí

 

如此全面的测试可能会花费大量时间。完全值得吗?

eWay客户关系管理是一款大型且全面的产品。我们一直致力于此工作已有10多年了,数十位开发人员已轮流使用它。仅我们的代码就有大约376,862行。这是比这本圣经更长的文字十倍!没有人能够牢记这样的系统。这就是为什么我们最近开始更加专注于测试并且我们正在编写越来越多的测试的原因。
但是,编写测试是“额外的”事情。现在,除了开发新功能之外,我们还花费更多时间进行测试。得益于单元测试的创建,开发成本和最小的功能可以从一开始就成倍增加,但事实证明,从长远来看,它会有所回报。
之前,我们了解了一些基本错误,但会有所延迟。因此,当我们想象我们在新版本上工作了三个月,然后在下个月到达客户那里,而他又在一个月后发现一些错误时,便陷入了不得不重新解决旧代码的局面。因此,在我们从事其他工作很长一段时间的同时,我们需要提出一种快速有效的代码修复程序,该修复程序不会造成任何其他损害。

最后,在那几个月之后,我们不得不花费大量时间进行维修,分析,新版本和更新。这给产品带来了不好的印象,根本不是一件便宜的事。
多亏了单元测试,我们现在能够在开发过程中捕获全部内容,并且向世界发送了更好的软件。专注于更深入的测试会在某种程度上减慢我们的产品开发速度,但结果可见。开发人员已经习惯于花费更多的时间进行测试并亲自观察效果。测试可以保护他们的工作。它确实有帮助,错误的数量减少了。

detail

这些测试是eWay-CRM中的新功能吗?

我们以前做过单元测试,但是现在我们有了更多的依赖。我们专注于具有更大影响力的功能,我们希望为不断增长的客户提供真正高质量的产品。因此,我们预留了足够的时间和资源进行测试。

 

您对eWay-CRM开发感兴趣吗?也请阅读 采访Honza Spilka的编码.
您可能也有兴趣 测试人员MartinŠtefek的自白, 或许 采访Roman关于数据安全性.

-eway-
三月14,2019
分享: