繁体   English   中英

关于持续集成和硒测试的新手问题,

[英]Newbie question about Continuous integration and selenium tests,

我对CI还是很陌生,但是我最近继承了一个项目,其中Team City刚刚实施,并且我正在慢慢解决这个问题。 我们想做的一件事是在构建过程中运行一些Selenium测试。 我已经创建了硒测试,并且可以通过开发计算机上的nunit-console成功运行它们。 构建服务器将构建项目,然后将其(发生时是Web窗体应用程序)部署到登台服务器。

在每次硒测试之前,我们都将数据库设置为已知状态,即仅保留某些记录-这样,每个测试就彼此独立。 问题是登台服务器将由真正的“人工”测试人员使用,因此这将导致他们不断重置数据库(删除记录等)的问题。问题是我是否还应将应用程序确实部署到虚拟机上?构建服务器并对其运行硒测试,并且仅在这些测试通过时才部署到登台服务器?

还是我完全弄错了这些东西? 如果是这样,您如何在组织中做到这一点?

我建议您不要通过允许测试人员访问为自动化测试准备的服务器来混合自动化测试和手动测试。 这会在自动测试和手动测试中造成误报。 这些“错误”是不确定的,而且很有可能永远无法重现(这是一个非常糟糕的消息)。 这将导致大量不必要的“错误报告”并导致构建失败。

所以这就是你可以做的...

除了当前设置之外,您还可以为手动测试人员创建一个额外的登台服务器 这是您最少应该做的。 您可能应该创建其中的几个每个测试人员一个

怒吼来了...

在我当前的项目中,我们最近发现我们的测试人员(其中有大约10位)重用了一台服务器。 他们声称,由于我们的应用程序将有多个并发用户,因此,一个好主意是,当他们测试单个功能时,他们还测试了当多个用户在同一服务器上工作时这些功能的行为。 错误!

如果一个问题涉及多个用户,则应针对特定问题进行测试。 如果功能1可能干扰功能2,则应该对其进行专门测试,而不仅仅是“运气测验”。

在向我们的手动测试人员解释此问题之前,由于一个测试人员只是踩到另一个测试人员的脚趾,所以我们有许多错误的错误报告。 (例如,tester1删除了tester2引入系统的记录,等等。)。 这创建了许多不必要的错误报告,并且这些错误永远无法重现。

抱歉,我希望这对您有所帮助:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM